标题: 新手做了个单片机万年历的程序 烧入后lcd12864的时间不变为什么? [打印本页]

作者: 某某不会    时间: 2021-8-6 17:22
标题: 新手做了个单片机万年历的程序 烧入后lcd12864的时间不变为什么?
第一次学习单片机,使用程序,烧入进单片机后,时间不动,所有的按键都没啥控制到,顶多把下面的字变成了其他的然后又复原。不知道程序是哪里有问题该怎么改动。求求大神帮忙看看 十分谢谢。程序和照片在附件,拜托大家帮忙看看。
图和代码在附件。

IMG20210806171637.jpg (5.37 MB, 下载次数: 101)

IMG20210806171637.jpg

万年历.docx

21.29 KB, 下载次数: 15


作者: csmyldl    时间: 2021-8-6 23:26
一般是时钟的时序不对,需根据单片机的时钟调整时序
作者: 某某不会    时间: 2021-8-7 10:00
csmyldl 发表于 2021-8-6 23:26
一般是时钟的时序不对,需根据单片机的时钟调整时序

好,我看看怎么弄,谢谢

作者: Jiang_YY    时间: 2021-8-7 12:33
        init_12864();
        delay(1000);
        set_time();          //第一次下载程序 设置时间  之后可以屏蔽
        init_12864();

应该是时钟芯片12864没有正常工作或者正常通讯。你改变set_time()函数内的初值,然后直接再读出来显示,看看对不对。
作者: Jiang_YY    时间: 2021-8-7 12:42
1 直接在 shou()函数内写固定值,测试一下显示是否正常,如果显示能随着你的值正确变化,则显示正常。否则显示模块部分不对,检查一下显示模块部分。不给从你的现象看,显示模块应该是正常的。
2 你改变set_time()函数内的初值,中间不响应其它操作,直接get_time();shou(); 读出来显示,看看对不对。估计问题在这。仔细检查一下时钟模块的初始化流程,如果流程正确(包括复位流程和寄存器配置),则检查一下通讯波形是否正常。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1