OpenEdv-开源电子网

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

将rtc实验换在lcd1602显示时为什么年显示数值有问题

[复制链接]

51

主题

340

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3275
金钱
3275
注册时间
2013-9-21
在线时间
281 小时
发表于 2015-1-15 22:01:13 | 显示全部楼层 |阅读模式
5金钱

将rtc实验换在lcd1602显示时为什么年显示数值有问题 Rtc代码皆无更改

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

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-1-15 22:43:32 | 显示全部楼层
是不是原始数据就有问题?这个你单步跟踪下代码很容易找出来问题.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-1-16 08:17:08 | 显示全部楼层
没转换吧,楼主,BCD码显示时要转换一下的
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

51

主题

340

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3275
金钱
3275
注册时间
2013-9-21
在线时间
281 小时
 楼主| 发表于 2015-1-16 15:40:14 | 显示全部楼层
回复【3楼】八度空间:
---------------------------------
我也认为没转换因为tft ocd显示正常
回复

使用道具 举报

51

主题

340

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3275
金钱
3275
注册时间
2013-9-21
在线时间
281 小时
 楼主| 发表于 2015-1-16 15:48:48 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
回复【3楼】八度空间:
---------------------------------

Rtc set(2015, 01, 11, 10, 16, 00);
这句是修改显示时间看不出那里有BCD码
回复

使用道具 举报

51

主题

340

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3275
金钱
3275
注册时间
2013-9-21
在线时间
281 小时
 楼主| 发表于 2015-1-16 15:52:49 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
Rtc代码都没改
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-1-16 17:49:12 | 显示全部楼层
回复【4楼】hack906447:
---------------------------------
你显示年的函数体发上来看下
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

51

主题

340

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3275
金钱
3275
注册时间
2013-9-21
在线时间
281 小时
 楼主| 发表于 2015-1-16 20:55:46 | 显示全部楼层
回复【7楼】八度空间:
---------------------------------
非常感谢

RTC-LCD1602.rar

2.91 MB, 下载次数: 91

回复

使用道具 举报

51

主题

340

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3275
金钱
3275
注册时间
2013-9-21
在线时间
281 小时
 楼主| 发表于 2015-1-18 09:26:21 | 显示全部楼层
回复【7楼】八度空间:
---------------------------------
请问大神友看出哪里有问题吗
我尝试更改rtc与1602的显示函数将参数更改为u16但是还是不行
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-1-19 08:30:56 | 显示全部楼层
回复【9楼】hack906447:
---------------------------------
void LCD_DisplayNum(u32 num)
{
u8  i=0, j, k=0, wei, q;
u8 str[9];
if    (num>=10000000) wei=8;
else if(num>=1000000) wei=7;
else if(num>=100000) wei=6;
else if(num>=10000) wei=5;
else if(num>=1000)  wei=4;
else if(num>=100) wei=3;
else if(num>=10)  wei=2;
else  wei=1;
for(i=wei;i>0;i--)
{   
q=1;
j=1;  //i=1??q=1,眔???
for(;j<i;j++) q *= 10;
str[k++] = num/q +'0';
num %= q;
}
str[k] = '\0';  //睰??才﹃挡?夹粁
LCD_DisplayString(str); //陪ボ?才﹃
}

你这个函数好蛋疼啊>
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

51

主题

340

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3275
金钱
3275
注册时间
2013-9-21
在线时间
281 小时
 楼主| 发表于 2015-1-19 09:36:43 | 显示全部楼层
回复【10楼】八度空间:
---------------------------------
区别显示位码功能可能复杂了一点
大神认为问题出在那?
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-1-19 12:34:54 | 显示全部楼层
回复【11楼】hack906447:
---------------------------------
我认为就是出在这个函数
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

51

主题

340

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3275
金钱
3275
注册时间
2013-9-21
在线时间
281 小时
 楼主| 发表于 2015-1-22 21:33:45 | 显示全部楼层
回复【12楼】八度空间:
---------------------------------
非常感谢但是我找不出哪里有问题大神可以给各方向说说你认为有问题的地方吗
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-1-23 07:48:47 | 显示全部楼层
回复【13楼】hack906447:
---------------------------------
其实最直接的方法就是用sprintf这个函数,打印到数组,在利用显示字符串函数显示
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-26 13:58

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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