完善资料让更多小伙伴认识你,还能领取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失败。这实在让人很疑惑。各位高手请指教。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
377 浏览 0 评论
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
536 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
540 浏览 0 评论
950 浏览 0 评论
如何用OpenCV的相机捕捉视频进行人脸检测--基于米尔NXP i.MX93开发板
1403 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11760 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 08:26 , Processed in 0.478344 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号