完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
接收超时问题。如果没有接收超时功能,则在对方已经发送完毕而接收FIFO未填满时并不会触发中断(FIFO满才会触发中断),结果造成最后接收的有效数据得不到处理的问题。有了接收超时功能后,如果接收FIFO未填满而对方发送已经停,则在不超过3个数据的接收时间内就会触发超时中断,因此数据会照常得到处理。
----------------以上是网上关于FIFO 接收超时的资料, F28035 好像没有接收超时,那它是怎样处理的呢? |
|
相关推荐
4 个讨论
|
|
guigui_7044 发表于 2018-11-14 11:26 1、.如果Level设置为1,那FIFO 还有什么优势呢? 2、如果用软件定时 那不是过一段时间,就要去检测FIFO?而且这个定时程序是从始到终一直运行的。就算是上位机没有发送数据,我也要隔一段时间就去检测FIFO,因为不知道上位机什么时候会发数据过来 这两种方式,会比用普通模式(非FIFO)有优势吗? 还是我哪里理解不对? |
|
|
|
|
|
bwerwer 发表于 2018-11-14 11:38 wellsking, 软件定时的话其实也就是用timer自己做一个receive time out 功能而已,C2000的SCI确实没有这个receive timeout 功能,只能自己实现。 你可以这样子设置: 1. 在SCI的FIFO中断中reset timer的计数值,然后启动timer计数。 2. 使能timer中断,这样当timer定时时间到的时候,就是距离上一次成功接收到数据的时间,也就是receive 的timeout时间,然后在timer的中断里面读取FIFO的数据,如果有的话。然后关掉timer。这样timer就不会一直运行,只有在一次数据块的接收最后几个数据的时候产生作用。 但其实如果你要是使timer一定开着,其实就跟SCI的receive timeout一样,只要数据接收不够,时间一到,就产生中断。 就算是上位机没有发送数据,我也要隔一段时间就去检测FIFO,因为不知道上位机什么时候会发数据过来 那你要是在SCI 有timeout功能时,如果上位机没有数据来,也是一样会中断,回去查看数据的啊。 所以软件设置timeout跟sci本身的timeout并没有什么区别。 Eric - ERIC |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
TMS320F28377D:新做了以377d为芯片的板子,上电后芯片复位引脚出现方波请问如何解决?
1910 浏览 0 评论
TPS55340通电后输入端保险丝烧断,芯片输入和GND之间短路
3667 浏览 4 评论
5042 浏览 0 评论
请问如何用DM368对RGB格式的图片数据进行编码生成JPEG格式图片?
1740 浏览 1 评论
9426 浏览 8 评论
CC3100BOOST使用CC3200lunchXL进行烧录
686浏览 2评论
735浏览 1评论
TMS320F28034: 利用C2prog通过SCI给TMS320F28034烧录程序,出现错误提示:Bootloading... failed (invalid echo)!
703浏览 1评论
求DLPC350 Programmer’s Guide User's Guide 中文版说明书
1210浏览 1评论
1794浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-5-13 06:25 , Processed in 0.772560 second(s), Total 77, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号