OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 12611|回复: 3

请教RTC实验调试出现的问题

[复制链接]

9

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2012-11-19
在线时间
2 小时
发表于 2013-8-7 19:47:33 | 显示全部楼层 |阅读模式
用的是旗舰的板子,代码没用原子大哥的,是我根据《原子交你玩STM32》的步骤自己编的;
请教一下几个问题:
1)RTC的时钟数据时存储在备份寄存器中的,那要怎样才会使它的信息丢失呢?断电,擦除代码似乎都不行。目前我只是在usmart调试里调用RTC_Set()函数才能修改时间,否则只会继续显示。。。。
2)显示问题:显示的好奇怪,说是font.h错了也不像,但是不怎么清晰,硬件没问题。下有图:

部分
//时间显示格式
linechar_1608t(5,5,"    -  -  ");
linechar_1608t(6,5," : :  ");
while(1)
{
F_COLOR = color(60,0,0);
if(t!=calendar.sec)
{
    t=calendar.sec;
 
count_show(5,5,calendar.w_year);  //先写数,再擦除,count_show();第x行,第Y个数
count_show(5,10,calendar.w_month);
count_show(5,13,calendar.w_date);
count_show(6,5,calendar.hour);
count_show(6,8,calendar.min);
count_show(6,11,calendar.sec);

 switch(calendar.week)
{
case 0:
   linechar_1608t(5,18,"Sun");//写字符串函数
break;
case 1:
linechar_1608t(5,18,"Mon");
break;
case 2:
linechar_1608t(5,18,"Tues");
break;
case 3:
linechar_1608t(5,18,"Wed");
break;
case 4:
linechar_1608t(5,18,"Thur");
break;
case 5:
linechar_1608t(5,18,"Fri");
break;
case 6:
linechar_1608t(5,18,"Sat");
break;  
}

    delay_ms(1000); 

   
Clear_Line(5,5,4);   //为了避免干扰,每次对写的数都用了擦除函数
Clear_Line(5,10,2); //第5行,第10个数开始,擦除2个数;
Clear_Line(5,13,2);

Clear_Line(5,18,5);

Clear_Line(6,5,2);
Clear_Line(6,8,2);
Clear_Line(6,11,2);
    delay_ms(10);
}      
}
3)请教一下原子大哥在calendar那个结构体重数据的定义;vu16,不稳定的无符号16位,和u16有什么区别
我的count_show里显示的只可以使u16的数字,我照着修改了下,感觉没什么区别???





二战了!!!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-8-7 21:21:47 | 显示全部楼层
回复【楼主位】angelcoffee:
---------------------------------
1,把板子上的CR1220电池给拆了,然后断电,就可以让所有后备区数据丢失了.
2,你显示用的函数不对,应该用填充的方式显示字符,你这个应该是画点的方式,所以不会擦除之前的显示,这样,等于你在一个位置写了N个数字,最后你自己也不认识到底写的什么字了....
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2012-11-19
在线时间
2 小时
 楼主| 发表于 2013-8-8 18:53:02 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
恩,显示的问题查出来了,问题是我显示是用了一个去除背景色的函数,里面的读点函数参数反了。
想追问的是:
1)CR1220电池让板子一直用没事吗?
2)上面的代码我每次显示完都要把显示的那个格子擦除:就是Clear_Line();函数。去了就不行
但是原子大哥的历程里为什么显示函数SHOW_String/Num()之类的不需要擦除也没问题?
二战了!!!
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-8-8 20:50:24 | 显示全部楼层
1,可以的,直到CR1220没电了.
2,这得你自己分析你自己代码了,你自己写的,应该比我清楚啊
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-15 10:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表