[AVR单片机] 关于USART的疑惑

[复制链接]
2051|10
 楼主| tsdwddp 发表于 2013-7-12 09:48 | 显示全部楼层 |阅读模式
先给各位看官问个好!
mega ,Xmaga的USART基本使用没有问题!但我一直有个疑问,就是如果上位机连续传N个BYTE,单片机接收,单片机没接收到一个字节,就将这个字节存储下来,存储这条指令是需要时间的,而上位机是连续传输的,我的问题是单片机存储接收的数据时,是否会与接收数据冲突?是否和波特率有关系?还是说单片机在存储时,其实单片内usart模块,仍在接收数据
 楼主| tsdwddp 发表于 2013-7-12 14:30 | 显示全部楼层
qin552011373 发表于 2013-7-12 17:56 | 显示全部楼层
做个试验试一下咯
zezy371 发表于 2013-7-14 00:54 | 显示全部楼层
写个程序试验一下,我马上写来试验一下
gdxizhilang 发表于 2013-7-14 11:11 | 显示全部楼层
存储是不影响接收的,你的晶振是多少,执行一条存储指令是多长时间?而波特率是多少?每接收一个字节是多长时间?另外你USART是用中断接收还是查询?
这些都是要考虑的。
 楼主| tsdwddp 发表于 2013-7-15 08:57 | 显示全部楼层
恩,结贴了,当接收到数据后,执行指令的时间不能太长,太长的话就不对了,这和波特率有关系吧!执行指令的时候,usart应该是继续工作的,也就是接数据(接收数据完成时间>指令执行时间)
冥顽的石头 发表于 2013-7-15 09:54 | 显示全部楼层
lion1899 发表于 2013-7-18 11:43 | 显示全部楼层
学习的路过!!
qin552011373 发表于 2013-7-19 11:50 | 显示全部楼层
tsdwddp 发表于 2013-7-15 08:57
恩,结贴了,当接收到数据后,执行指令的时间不能太长,太长的话就不对了,这和波特率有关系吧!执行指令的 ...

肯定会大于的   你可以看一下生成的汇编
zezy371 发表于 2013-7-29 23:51 | 显示全部楼层
我的想法是,先用数组保存数据(也就是缓冲吧)然后再存入去他比较慢的存储器中比如24C02什么的中,不知想法行吗?
yfei827 发表于 2013-8-1 11:27 | 显示全部楼层
新来滴 学习!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

54

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部