
2 数据丢失问题:在开启SPIFIFO增强功能时,不能根据SpiaRegs.SPISTS.bit.BUFFULL_FLAG来暂停发送数据。因为此时的TXBUF是从TXFIFO中得数据。程序中写入TXBUF,只是写入发送缓冲器即FIFO。根据先进先出原理,你源源不断地向TXBUF写数据,则FIFO里总是保存你最后写入的数据,而不会将SpiaRegs.SPISTS.bit.BUFFULL_FLAG位置1,所以会发现数据丢失。正确的方法应该判断SPITXFIFO中的字的个数。
首先你应该写个写入外边flash的代码。然后通过单片机串口或者其他的方式接收你要烧录的程序,并通过你写好的写入外边flash代码程序将接收到程序写入外边flash中就可以了。
我之前是用FTP接收程序,通过单片机的SPI写入到外边flash中。
“DSP28335的SPI发送的是16位的数据”
如果DSP28335端的程序是你写的,修改配置采用8位帧格式不就得了。不过对于长数据还是应当约定通讯协议。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)