基于51单片机的矩阵键盘和lcd的应用内容摘要:
函数值调用 unsigned char Hour=0,Min=0,Sec=0。 u8 Returnnumber = 0。 //按键值返回 bit flag=0。 //1分时间到标志 bit Brush_flag = 0。 //更新显示器 1:更新 sbit LED1=P2^3。 //二个指示灯 sbit LED2=P2^4。 sbit CS =P2^5。 //液晶接口 sbit SID=P2^6。 sbit SCLK=P2^7。 sbit B_light=P2^7。 //背光控制 void delay(unsigned int j) { unsigned char i。 do{ for(i=0。 i100。 i++)。 }while(j)。 } void send_mand(unsigned char mand_data) //发送命令 { unsigned char i。 unsigned char i_data,temp_data1,temp_data2。 i_data=0xf8。 //操作命令 ,可以查看资料 delay(10)。 CS=1。 SCLK=0。 for(i=0。 i8。 i++) { SID=(bit)(i_dataamp。 0x80)。 SCLK=0。 SCLK=1。 i_data=i_data1。 } 8 i_data=mand_data。 i_dataamp。 =0xf0。 for(i=0。 i8。 i++) { SID=(bit)(i_dataamp。 0x80)。 SCLK=0。 SCLK=1。 i_data=i_data1。 } i_data=mand_data。 temp_data1=i_dataamp。 0xf0。 temp_data2=i_dataamp。 0x0f。 temp_data1=4。 temp_data2=4。 i_data=temp_data1|temp_data2。 i_dataamp。 =0xf0。 for(i=0。 i8。 i++) { SID=(bit)(i_dataamp。 0x80)。 SCLK=0。 SCLK=1。 i_data=i_data1。 } CS=0。 } void send_data(unsigned char mand_data) //发送数据 { unsigned char i。 unsigned char i_data,temp_data1,temp_data2。 i_data=0xfa。 //操作命令 ,可以查看资料 delay(10)。 CS=1。 for(i=0。 i8。 i++) { SID=(bit)(i_dataamp。 0x80)。 SCLK=0。 SCLK=1。 i_data=i_data1。 } 9 i_data=mand_data。 i_dataamp。 =0xf0。 for(i=0。 i8。 i++) { SID=(bit)(i_dataamp。 0x80)。 SCLK=0。 SCLK=1。 i_data=i_data1。 } i_data=mand_data。 temp_data1=i_dataamp。 0xf0。 temp_data2=i_dataamp。 0x0f。 temp_data1=4。 temp_data2=4。 i_data=temp_data1|temp_data2。 i_dataamp。 =0xf0。 for(i=0。 i8。 i++) { SID=(bit)(i_dataamp。 0x80)。 SCLK=0。 SCLK=1。 i_data=i_data1。 } CS=0。 } void InitLCD() //液晶初始化 { send_mand(0x30)。 //功能设置 :一次送 8位数据 ,基本指令集 send_mand(0x06)。 //点设定 :显示字符 /光标从左到右移位 ,DDRAM地址加 1 send_mand(0x0c)。 //显示设定 :开显示 ,显示光标 ,当前显示位反白闪动 send_mand(0x04)。 //显示设定 :开显示 ,显示光标 ,当前显示位反白闪动。基于51单片机的矩阵键盘和lcd的应用
相关推荐
9 图 33 定时器 /计数器方式 1 逻 辑结构图 3 方式 2: 方式 0 和方式 1 的最大特点是计数溢出后,计数器为全 计数用时就存在反复装入计数初值的问题。 这不仅影响定时精数,而且也给程序设计带来麻烦。 方式 2 就是针对此问题而设置的。 当 M M2 为 10 时,定时器 /计数器处于工作方式 2,这时定时器 /计数器得等效框图如图 34 所示。
,故被测距离为 S=1/2vt ( 22) 本测量电路采用第二种方案。 由于超声波的声速与温度有关,如果温度变化不大,则可认为声速基本不变。 如果测距精度要求很高,则应通过温度补偿的方法加以校正。 超声波测距适用于高精度的中长距离测量。 因为超声波在标准空气中的传播速度为 米 /秒,由单片机负责计时,单片机使用 晶振,所以此系统的测量精度理论上可以达 到毫米级。 CPU 的选型
算器系统存储的数据,从而可以根据需要随时的读入和写出。 虽然处理速度比ARM 速度慢,但是用来设计计算器还是能满足要求,而且单片机的接口简单,方便我们使用,同时降低了我们的设计成本。 因此我们选择单片机来实现的方案。 用 8051 单片机作为中央处理单元进行计算器的设计。 针对软件编程,看个人习惯,用汇编来实现或者用 C 语言程序来实现都可以。 C语言可能会更加简短和容易理解
测频主要由 3 个部分组成: ( 1)时间基准 T产生电路。 时间基准产生电路的作用是用来产生计数器所使用的标准频率。 ( 2) 计数脉冲形成电路 桂林航天工业学院毕业论文 5 计数脉冲形成电路的作用是将被测的周期信号转换成可计数的窄脉冲。 ( 3) 计数显示电路 计数显示电路的作用是对主门输出的脉冲进行计数,其结果显示在数码管上。 设计任务的分析及方案的论证
crocontroller Futian Qin (Mechanical amp。 Electrical Engineering College of Shandong Agricultural University, Tai’an, Shandong 271018) Abstract: With the rapid development of modern smart grid
inute() { int i。 for(i=10。 i=0。 i) { StrTab[0]=tab[hour/10]。 StrTab[1]=tab[hour%10]。 StrTab[2]=0x40。 StrTab[3]=0x00。 StrTab[4]=0x00。 5 StrTab[5]=0x40。 StrTab[6]=tab[second/10]。