打印

谁来回答 在RTX51TINY系统上对at24c512中的数据读取疑难

[复制链接]
2445|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hf97852|  楼主 | 2010-3-15 11:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hf97852 于 2010-9-30 13:27 编辑

当我在89s52外扩的一个数据存储器(AT24C512)上用调试助手读取里面的数据时 怎么丢了大部分的数据呢 ? 读取用的是在
rtx51tiny上用的是在串口中断(命令判别)

中创建一个中断函数(在这个中断函数中实现24c512中的数据读取——即通过rs232发送到调试助手上)。

  问题是:在串口调试助手中显示的数据只有我想读取的数据的一小部分????????

相关帖子

沙发
hf97852|  楼主 | 2010-3-15 20:48 | 只看该作者
高手来解答

使用特权

评论回复
板凳
hf97852|  楼主 | 2010-3-16 09:10 | 只看该作者
看了 很多 trx51tiny资料还没找到原因 不知道是不是时间片跟延时函数的问题

使用特权

评论回复
地板
hf97852|  楼主 | 2010-3-25 10:15 | 只看该作者
串口调试助手的原因 换个调试助手就好了

使用特权

评论回复
5
冷漠| | 2010-3-25 12:50 | 只看该作者
我也正在用串口调试助手,LZ能否告知哪个版本的调试助手有问题,您换的没问题的是哪个版本?共享一下发现。

我正用的是SComAssistant V2.1,不知会不会有问题。

使用特权

评论回复
6
歪 歪| | 2010-3-25 16:29 | 只看该作者
你可以用这个工具,内核级抓包,任何数据都可见,在也不用烦恼串口助手问题了。

下载地址:
http://download.cnet.com/ComTrac ... 6892.html?tag=mncol

感觉好别忘了给个review(评论),谢谢!

使用特权

评论回复
7
冷漠| | 2010-3-25 19:38 | 只看该作者
感谢6楼。近几天被串口助手弄得束手无策。总是接收显示错,例如发送“4A”它显示收到“2A”;发送“8A”,显示收到“4A”。这么精确的错误,不好分析呀。LZ有没有这种实验经历?帮帮忙。

咱试试外国人的东西。

使用特权

评论回复
8
wuji2005| | 2010-3-25 19:41 | 只看该作者
有可能是调试助手的问题

使用特权

评论回复
9
因特网用户| | 2010-3-25 19:51 | 只看该作者
用示波器看看不就可以了
软件的话  试试bus hound抓抓看

使用特权

评论回复
10
冷漠| | 2010-3-26 09:12 | 只看该作者
昏天黑地一场,终于找到原因。原来是晶振12M和11.0592M 偏差的原因!
仿真器默认晶振是12M,编程序却按照用户板晶振11.0592M设定波特率9600,也就是TH1=0xFD; 结果造成单片机一方发送波特率偏差。

现象也好解释了,(总是事后醒悟)异步通信11位一帧是为了双方频率偏差重新同步的。所以当发送0x4A/0x8A时,先发送低位,前面的发送位偏差不大,能识别正确,后面的位积累负偏差越来越大,造成高位发送提前识别,(11.0592M比12M 位脉冲串窄)所以4被认为2,8被误判为4。

使用特权

评论回复
11
hf97852|  楼主 | 2010-8-25 21:52 | 只看该作者
嗯 调试助手的问题!!!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

42

帖子

0

粉丝