电子产品世界
嵌入式
工控
设计应用
牛人业话
暴力拆解
汽车
消费
EEPW观点
电源
医疗
EDA/PCB
安防
通信
LED
手机/便携
RF/微波
模拟
论坛
论坛
»
DIY与开源设计
»
电子DIY
820321
上班累了,不想动。串口收文件搞不定
hanshuyujifen2
高工
2012-05-17 19:42 1楼
原因是不会用串口连续接收数据。只会单个数据接收。谁帮帮俺啊
820329
xiachaoabc
菜鸟
2012-05-17 20:04 2楼
串口可以设置数据格式中规定一个字节数据帧长度,根据数据长度等待读取数据,直到读完为止。 串口发送数据也是一个一个字节发送的,只不过是时间很短。 很简单的哦,再弄弄,不难的。
评论
820344
hanshuyujifen2
高工
2012-05-17 20:41 3楼
那接收文件呢?很长的文件。用空闲时间可以吧?
评论
820371
zangchao
工程师
2012-05-17 21:57 4楼
别提了,自从我把串口的函数加到CAN的文件里面,错误百出,我被这个串口搞死了!以前单搞时也没事啊,哎,我决定从头开始,今天花了10块钱把数据手册上关于CAN和串口的资料打印了,细细的分析,靠单纯的移植总是会出问题。
评论
820386
wf1988
助工
2012-05-17 22:39 5楼
你用的是什么协议啊?如果自己不定的话就不妨用现成的modbus之类的协议呗。这方面可以看看周立功 的教程,不少都不错的。卡住后人就有惰性不想做,不妨左下想想理清思路再去解决吧
评论
820401
jobs
院士
2012-05-17 23:04 6楼
modbus RTU协议是通过判断间隔的两个字节的间隔时间,然后来确定是否属于同一次发送。楼主也可以借鉴一下。
也可以通过自定义一个开始符号,结束符号,逃跑符号来判断是否是同一次发送~~
仅供参考,个人建议
评论
820405
tsy040501
助工
2012-05-17 23:36 7楼
大大加油~
评论
820407
skm2007
高工
2012-05-18 00:25 8楼
需要循环调用单个字节的发送程序
评论
820433
HXW718059156
高工
2012-05-18 08:58 9楼
可能是LZ你的串口接收程序是每次仅接收一个字节,这样效率将非常低,尤其是在系统任务较多的时候。所以建议LZ采取以下方式:
1、采用buffer,使能FIFO,每次多接收几个字节;
2、采用中断方式,并尽量提高其中断优先级;
3、采用DMA方式;
评论
820439
hanshuyujifen2
高工
2012-05-18 09:07 10楼
晚上试试
评论
共10条 1/1
1
跳转至
页
回复
匿名不能发帖!请先 [
登陆
注册
]