打印

DS1302RAM无法写入超过79的数据?!

[复制链接]
1869|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xichandoujigu|  楼主 | 2019-3-1 10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在调试DS1302的时候发现一个奇怪的问题,不知道解决办法,发帖求助。
在操作DS1302的RAM时,如果输入的数值1-79能正常显示1-79,但是如果输入超过79就不能正常显示,显示结果为X-80,比如
写入80则输出为0,
写入81则输出为1,
写入82则输出为2,
....................
写入99则输出为19,
还请教是什么原因呢?
源代码如下

void main()
{      
    unsigned char x=99;
    Initial_096OLED();
    while(1)
    {
        Write1302 (WRITE_PROTECT,0X00);           //禁止写保护
        Write1302 (0xC2,((x/10)* 16 + x%10));           //将x转换为16进制写入RAM
                Write1302 (WRITE_PROTECT,0x80);          //允许写保护
                OLED_xianshi(Read1302 ( 0xc3)/10,Read1302 ( 0xc3)%10);  //显示
                /*如果x为1-79,能正常显示,但是如果x为80-99则显示结果为x-80,比如x为89,结果为9,x为99结果则为19*/
        }
}


相关帖子

沙发
mohanwei| | 2019-3-1 10:35 | 只看该作者
你琢磨一下你的写入读出两次转换。

使用特权

评论回复
板凳
xichandoujigu|  楼主 | 2019-3-1 11:38 | 只看该作者
mohanwei 发表于 2019-3-1 10:35
你琢磨一下你的写入读出两次转换。

转换应该没有问题,不然1-79也不会正常显示呢?

使用特权

评论回复
地板
mohanwei| | 2019-3-1 12:24 | 只看该作者
xichandoujigu 发表于 2019-3-1 11:38
转换应该没有问题,不然1-79也不会正常显示呢?

80,写的时候是128,读出来也是128,但你显示的时候是OLED_xianshi(12,8);
不明白你为啥要这样设计

使用特权

评论回复
评论
zhuls 2019-3-6 10:18 回复TA
一眼看出问题了,我还得看半天。。。差距。。 
评分
参与人数 1威望 +5 收起 理由
zhuls + 5 很给力!
5
zhuls| | 2019-3-6 09:57 | 只看该作者
本帖最后由 zhuls 于 2019-3-6 10:17 编辑

Write1302 (0xC2,((x/10)* 16 + x%10));           //将x转换为16进制写入RAM//我总觉得的这里有猫腻呢?
按这个公式,你10进制写入后的数值,10进制的99就是(9*16+9)=153,变成了16进制的0x99
读出的16制0x99要变成10进制的99,应该 是0x99/16+0x99%16才对啊,按你的Read1302 ( 0xc3)/10,Read1302 ( 0xc3)%10公式,数据值是15,3
我没有算错吧?
你的OLED_xianshi(x,x)应该是只能显示2个数字,那么3个数字你该如何显示 出来呢?
OLED_xianshi(Read1302 ( 0xc3)/10,Read1302 ( 0xc3)%10);//这里是要读2次1302的感觉。



使用特权

评论回复
6
零三翟邢止胃| | 2019-3-14 12:49 | 只看该作者
不错的啊!!!!!

使用特权

评论回复
7
saodisenghezai| | 2019-12-13 15:18 | 只看该作者
xichandoujigu 发表于 2019-3-1 11:38
转换应该没有问题,不然1-79也不会正常显示呢?

解决没我也遇到同样问题

使用特权

评论回复
8
saodisenghezai| | 2019-12-14 23:26 | 只看该作者
1302读写程序有问题,换

使用特权

评论回复
9
li1874| | 2019-12-22 17:35 | 只看该作者

1302读写程序有问题

使用特权

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

本版积分规则

31

主题

96

帖子

2

粉丝