完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
请问以下两种方式读取外部扩展RAM,有什么差别呢?为什么在我的程序返回的结果很怪呢?
方式一: j = 0x0016; k = 0x16; pToV = &pV->bTsAddr;//0x4016 for( i = 0x16; i < RAM_LENGTH; i++ ) { *pToV=k; abSndBuffer [bWriteSndPtr++] = 0x5A; bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)(i>>8); bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)i; bSndCounter++; abSndBuffer [bWriteSndPtr++] = 0x5A; bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)k; bSndCounter++; abSndBuffer [bWriteSndPtr++] = 0x5A; bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)*pToV; bSndCounter++; StartSerialCommunication(); pToV++; j++;k++; } 串口接收如下结果: 5A 00 16 5A 16 5A 16 5A 00 17 5A 17 5A 17 5A 00 18 5A 18 5A 18 5A 00 19 5A 19 5A 19 5A 00 1A 5A 1A 5A 1A 5A 00 1B 5A 1B 5A 1B 5A 00 1C 5A 1C 5A 1C 5A 00 1D 5A 1D 5A 1D 5A 00 1E 5A 1E 5A 1E 5A 00 1F 5A 1F 5A 1F 5A 00 20 5A 20 5A 20 . . . 方式二: j = 0x0016; pToV = &pV->bTsAddr; for( i = 0x16; i < RAM_LENGTH; ) { *pToV = (uint8_t)(j>>8); pToV++; *pToV = (uint8_t)j; pToV++; abSndBuffer [bWriteSndPtr++] = 0x5A; bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)(i>>8); bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)i; bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)(j>>8); bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)j; bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)(*(pToV-2)); bSndCounter++; abSndBuffer [bWriteSndPtr++] = (uint8_t)(*(pToV-1)); bSndCounter++; StartSerialCommunication(); i+=2; j+=2; } 串口接收如下结果: 5A 00 16 00 16 16 17 5A 00 18 00 18 18 19 5A 00 1A 00 1A 1A 1B 5A 00 1C 00 1C 1C 1D 5A 00 1E 00 1E 1E 1F 5A 00 20 00 20 20 21 . . . 各位帮忙看看吧,实在找不出问题在哪里 |
|
相关推荐
2个回答
|
|
高手呢,请高手出马呀。急等
|
|
|
|
回帖奖励 +1 分积分
同样的程序为什么结果会不同,我把程序分别用在AT89C5131和AT89C51RE2上,结果是不同的。
这段程序的主要目的是为了判断外部扩展的RAM是否正常工作,本来是没有串口返回的,我是为了方便查看结果所以加上的。程序在AT89C5131就判断外部RAM正常,而AT89C51RE2则返回测试外部RAM失败。这实在让人很疑惑。各位高手请指教。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
205 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1253 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
848 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
853 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1073 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12011 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 23:28 , Processed in 0.485112 second(s), Total 73, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号