求单片机实验 键盘输入液晶显示实验的C语言源代码(具体要求在底下补充)
电原理图如下图所示,LCD由1602及其相关电路组成,初始显示代码在下方,要求编程实现:每按下一按钮,LCD显示出对应的序号。按下最下方按键清零按键显示0000。上面四个...
电原理图如下图所示,LCD由1602及其相关电路组成,初始显示代码在下方,要求编程实现:每按下一按钮,LCD显示出对应的序号。按下最下方按键清零按键显示0000。上面四个按键分别为加一、减一、加二、减二。(可以仅显示个位数)
不用源代码,思路就好 展开
不用源代码,思路就好 展开
2个回答
展开全部
首先要解决LCD1602的显示,就是要有正确的显示程序,可以在液晶屏上显示出字母和数字来。其实,就是解决识别按键按下,这两个程序都能写吧。
剩下要解决的问题就很简单了,定义一个变量,假如是n。如果要计数的最大数是255,就定义成unsigned char 型,计数有千位,就定义成unsigned int 型。至于按键后加一,就n++;减一就 n--; 加2,n+=2; 减2,n-=2; 清零就更容易了,n=0;
另一个问题是,计数值在LCD上显示。LCD是不能直接送变量值显示的,需要对变量值取出每一位后,变成字符再写到LCD才能显示。
显示个位,显示时带入显示函数的实参是: n%10+0x30; 加0x30就是把一位数值变成一个字符了,即ASCII码。
显示十位:n/10%10+0x30;
显示百位:n/100%10+0x30;
显示千位:n/1000+0x30;
剩下要解决的问题就很简单了,定义一个变量,假如是n。如果要计数的最大数是255,就定义成unsigned char 型,计数有千位,就定义成unsigned int 型。至于按键后加一,就n++;减一就 n--; 加2,n+=2; 减2,n-=2; 清零就更容易了,n=0;
另一个问题是,计数值在LCD上显示。LCD是不能直接送变量值显示的,需要对变量值取出每一位后,变成字符再写到LCD才能显示。
显示个位,显示时带入显示函数的实参是: n%10+0x30; 加0x30就是把一位数值变成一个字符了,即ASCII码。
显示十位:n/10%10+0x30;
显示百位:n/100%10+0x30;
显示千位:n/1000+0x30;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询