




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档倾情为你奉上精选优质文档倾情为你奉上专心专注专业专心专注专业精选优质文档倾情为你奉上专心专注专业实习题目指导教师职 称学生姓名学 号日 期实习题目指导教师职 称学生姓名学 号日 期内蒙古师范大学计算机与信息工程学院数字信号处理课程设计报告实习题目指导教师职 称学生姓名学 号日 期设计题目利用键盘控制液晶屏的显示指导教师郭改枝职称教授姓 名学 号日 期2013年6月20日利用键盘控制液晶屏的显示指导教师 郭改枝 讲师摘要 本系统包括DSP 对语音信号的处理、键盘控制、液晶屏显示几部分。DSP 作为主芯片实现各模块之间的通信,其主要工作有:上电自举,读取键盘值并初始化液晶屏,通过液晶屏
2、显示键盘的码值。同时,本设计在程序编写部分很好地将汇编语言与C语言结合起来,体现了语言之间的联系性,成功地利用键盘控制了液晶屏并显示了键码值。关键词 上电自举;中断; 读取键码;液晶显示1系统总体概况1.1总体描述键盘的按键按下,表示一次中断,每次中断,DSP转向中断服务程序并且讲键码值送到液晶屏并显示出来。1.2程序框图2.系统的组成部分2.1键盘模块2.1.1键盘说明键盘矩阵的行线和列线分别映射为DSP的IO空间的某个地址的数据线,行线的输出状态通过读IO空间的数据获得,列线的输入状态通过向IO空间写数据实现。实现键盘有两种方案:一是采用现有的一些芯片实现键盘扫描;另一种就是用软件实现键盘
3、扫描。这里就介绍一下软键盘的实现方案。 图2-1通常在一个键盘中使用了一个瞬时接触开关,并且用如上图2-1所示的简单电路,微处理器可以容易地检测到闭合。当开关打开时,通过处理器的I/O口的一个上拉电阻提供逻辑1;当开关闭合时,处理器的I/O口的输入将被拉低得到逻辑0。可遗憾的是,开关并不完善,因为当它们被按下或者被释放时,并不能够产生一个明确的1或者0。尽管触点可能看起来稳定而且很快地闭合,但与微处理器快速的运行速度相比,这种动作是比较慢的。当触点闭合时,其弹起就像一个球。弹起效果将产生如图8-2所示的好几个脉冲。弹起的持续时间通常将维持在5ms30ms之间。如果需要多个键,则可以将每个开关连
4、接到微处理器上它自己的输入端口。然而,当开关的数目增加时,这种方法将很快使用完所有的输入端口。键盘上阵列这些开关最有效的方法(当需要5个以上的键时)就形成了一个如图8-3所示的二维矩阵。当行和列的数目一样多时,也就是方型的矩阵,将产生一个最优化的布列方式(I/O端被连接的时候)。一个瞬时接触开关(按钮)放置在每一行与线一列的交叉点。矩阵所需的键的数目显然根据应用程序而不同。每一行由一个输出端口的一位驱动,而每一列由一个电阻器上拉且供给输入端口一位。图2-2 按键抖动 图2-3 矩阵键盘 键盘扫描过程就是让微处理器按有规律的时间间隔查看键盘矩阵,以确定是否有键被按下。一旦处理器判定有一个键按下,
5、键盘扫描软件将过滤掉抖动并且判定哪个键被按下。每个键被分配一个称为扫描码的唯一标识符。应用程序利用该扫描码,根据按下的键来判定应该采取什么行动。换句话说,扫描码将告诉应用程序按下哪个键。 2.1.2键盘扫描算法 在初始化阶段,所有的行(输出端口)被强行设置为低电平。在没有任何键按下时。所有的列(输入端口)将读到高电平。任何键的闭合将造成其中的一列变为低电平。为了查看是否有一个键已经被按下,微处理器仅仅需要查看任一列的值是否变成低电平。一旦微处理器检测到有键被按下,就需要找出是哪一个键。过程很简单,微处理器只需在其中一行上输出一个低电平。如果它在输入端口上发现一个0值,该微处理器就知道在所选择行
6、上产生了键的闭合。相反,如果输入端口全是高电平,则被按下的键就不在那一行,微处理器将选择下一行,并重复该过程直到它发现了该行为止。一旦该行被识别出来,则被按下键的具体的列可以通过锁定输入端口上唯一的低电位来确定。微处理器执行这些步骤所需要的时间与最小的状态闭合时间相比是非常短的,因此它假设该键在这个时间间隔中将维持按下的状态。比如:当发现某列变为低电平时,此时微处理器仅在某一行上输出低电平,再查看列的状态,如果此时在输入端口上发现了一个0,则就可以断定就是此行上的键按下了,反之,如果输入端口上全为1,则就不是这一行上按下了键。根据第一步和第二步中得到的值,便可以得到相应的扫描码。比如,第一步中
7、行全为零时列输入B1为零,当将输出的第二行B2置为零时,如果此时的列输入B1仍为零,则可得到扫描码为。 2.2液晶屏模块2.2.1液晶屏说明另一种便仅是LCD显示屏,没有驱动电路,需要与驱动电路配合使用。特点是体积小,但是却需要另外的驱动芯片。也可以使用带有LCD驱动能力的高档MCU驱动。本实验我们使用的是带有驱动电路的LCD显示模块,采用DSP的总线方式来驱动。 一般带有驱动模块的LCD显示屏使用这种驱动方式,由于LCD已经带有驱动硬件电路,因此模块给出的是总线接口,便于与单片机的总线进行接口。驱动模块具有八位数据总线,外加一些电源接口和控制信号。而且还自带显示缓存,只需要将要显示的内容送到
8、显示缓存中就可以实现内容的显示。由于只有八条数据线,因此常常通过引脚信号来实现地址与数据线复用,以达到把相应数据送到相应显示缓存的目的。2.2.2指令表指令代码功能R/WD/ID7D6D5D4D3D2D1D0显示开/关0010101111/0不论显示随机存储数据或内部状态如何,将显示打开或关闭1: 开 0: 关显示起始线00110显示起始线(031)指定随机存储数据在显示器顶端显示 (公共端0)编码 地址设定00101110页:(03)设置页地址(页地址) 列(段) 地址设定000列地址(079)设置列地址(列地址)状态读取10busyADC开/关RST0000读状态busy 1:I内部操作
9、0:准备就绪ADC 1:右向输出 0:左向RST 1:重启 0:正常开/关 1:显示关 0:显示开写显示数据01写数据将数据总线中数据写入显存读显示数据11读数据将显存数据读入数据总线ADC 选择0010100000/1指定对显存数据顺时针读取或逆时针读取0: 顺时针1: 逆时针静态驱动 开/关0010100100/1选择动态或静态驱动1: 静态驱动0: 动态驱动占空比选择0010101000/1选择占空比1:1/32H0:1/16RMW0011100000写操作时对列地址寄存器赋增量。读操作时不作改变。中止0011101110结束RWM模式重启0011100010设置显示器起始线寄存器为第1
10、行,列地址寄存器以及编码地址寄存器为第0行 节能模式(双重指令)00000011001100111001关闭显示器以及打开静态驱动,从而设置节能模式3.程序代码第一部分是键盘控制液晶屏的总体程序设计,实现了利用键盘控制液晶屏并显示代码。具体程序见附件一。第二部分是初始化程序,将各个寄存器,计数器,中断等初始化。具体程序见附件二。第三部分是命令程序,设置各个部分的位置等。具体程序见附件三。4 .小结 通过近两周的课程设计,我终于体会到实践是检验真理的唯一标准这句话的含义,只有不断的实践,不断的发现错误,不断的反思自己,才能一步步做出完美的结果。通过这次设计,我学到了以下几点:要想实现自己的小小目
11、标,必须要有锲而不舍的精神,要有百折不挠,不怕错,不怕输的精神。合作是相当重要的。没有李哲的全力付出,没有他的坚持,我们是不可能做出来的,而且我发现我的合作者具有很强的动手实践能力,这一点是我不具备的,在此向他学习。而我发现的都是小问题,而他动手能力又这么强,为此为有如此厉害的合作者高兴。提高了我的自学能力。很多知识是自己不会的,比如仿真软件的使用,通过查阅资料,上网学习,最终学到了有用的东西。巩固了我的专业知识,包括平时学的书本上的理论知识。最后,在整个设计实现过程中,得到了郭改枝老师的鼓励与精心指导,在此表示衷心的感谢!参考文献1 刘艳萍 李志军,DSP技术原理及应用教程(第3版) 北京航
12、空航天出版社.2 刘修文,电子控制电路300例,机械工业出版社,2005年4月.附件一:利用键盘控制液晶屏的显示#include /*/void Wr_c_l(char com);void Wr_c_r(char com);void Wr_d_l(char data);void Wr_d_r(char data);void Init_Lcd();void Cls_Lcd();void lcd_dsp(char lorr,char page_cnt,char line,char numx);char temp,clr_page_cnt,clr_byte_cnt,page_cnt,colm_cnt
13、;ioport unsigned port0800;/lcd dataioioport unsigned port1000;/lcd resetioport unsigned port0c00;/lcd diioport unsigned port1400;/lcd cs1ioport unsigned port1800;/lcd cs2ioport unsigned port2C00;/faguangchar num0 =0,0 x3E,0 x51,0 x49,0 x45,0 x3E,0 x00,0 x00;/0=00Hchar num1 =0,0 x00,0 x42,0 x7F,0 x40
14、,0 x00,0 x00,0 x00;/1=01Hchar num2 =0,0 x42,0 x61,0 x51,0 x49,0 x46,0 x00,0 x00;/2=02Hchar num3 =0,0 x21,0 x41,0 x45,0 x4B,0 x31,0 x00,0 x00;/3=03Hchar num4 =0,0 x18,0 x14,0 x12,0 x7F,0 x10,0 x00,0 x00;/4=04Hchar num5 =0,0 x27,0 x45,0 x45,0 x45,0 x39,0 x00,0 x00;/5=05Hchar num6 =0,0 x3C,0 x4A,0 x49,
15、0 x49,0 x30,0 x00,0 x00;/6=06Hchar num7 =0,0 x01,0 x01,0 x79,0 x05,0 x03,0 x00,0 x00;/7=07Hchar num8 =0,0 x36,0 x49,0 x49,0 x49,0 x36,0 x00,0 x00;/8=08Hchar num9 =0,0 x06,0 x49,0 x49,0 x29,0 x1E,0 x00,0 x00;/9=09Hchar numa =0,0 x14,0 x08,0 x3E,0 x08,0 x14,0 x00,0 x00;/*=0AHchar numb =0,0 x08,0 x08,0
16、 x3E,0 x08,0 x08,0 x00,0 x00;/+=0BHchar numc =0,0 x00,0 x50,0 x30,0 x00,0 x00,0 x00,0 x00;/,=0CHchar numd =0,0 x08,0 x08,0 x08,0 x08,0 x08,0 x00,0 x00;/-=0DHchar nume =0,0 x00,0 x60,0 x60,0 x00,0 x00,0 x00,0 x00;/.=0EHchar numf =0,0 x20,0 x10,0 x08,0 x04,0 x02,0 x00,0 x00;/=0FHchar num10=0,0 x32,0 x
17、49,0 x79,0 x41,0 x3E,0 x00,0 x00;/=10Hchar num11=0,0 x00,0 x00,0 x4F,0 x00,0 x00,0 x00,0 x00;/!=1lHchar num12=0,0 x00,0 x07,0 x00,0 x07,0 x00,0 x00,0 x00;/=12Hchar num13=0,0 x14,0 x7F,0 x14,0 x7F,0 x14,0 x00,0 x00;/#=13Hchar num14=0,0 x24,0 x2A,0 x7F,0 x2A,0 x12,0 x00,0 x00;/$=14Hchar num15=0,0 x23,
18、0 x13,0 x08,0 x64,0 x62,0 x00,0 x00;/%=15Hchar num16=0,0 x36,0 x49,0 x55,0 x22,0 x50,0 x00,0 x00;/&=16Hchar num17=0,0 x00,0 x05,0 x03,0 x00,0 x00,0 x00,0 x00;/=17Hchar num18=0,0 x00,0 x1C,0 x22,0 x41,0 x00,0 x00,0 x00;/(=18Hchar num19=0,0 x00,0 x41,0 x22,0 x1C,0 x00,0 x00,0 x00;/)=19Hchar num1a=0,0
19、x00,0 x36,0 x36,0 x00,0 x00,0 x00,0 x00;/:=1AHchar num1b=0,0 x00,0 x56,0 x36,0 x00,0 x00,0 x00,0 x00;/;=1BHchar num1c=0,0 x08,0 x14,0 x22,0 x41,0 x00,0 x00,0 x00;/=1EHchar num1f=0,0 x02,0 x01,0 x51,0 x09,0 x06,0 x00,0 x00;/?=1FHchar num20=0,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00;/ =20Hchar num21=
20、0 xF,0 xFF,0 xFF,0 xFF,0 xFF,0 xFF,0 xFF,0 xFF;/ =21Hchar num22=0,0 x7E,0 x11,0 x11,0 x11,0 x7E,0 x00,0 x00;/A=22Hchar num23=0,0 x41,0 x7F,0 x49,0 x49,0 x36,0 x00,0 x00;/B=23Hchar num24=0,0 x3E,0 x41,0 x41,0 x41,0 x22,0 x00,0 x00;/C=24Hchar num25=0,0 x41,0 x7F,0 x41,0 x41,0 x3E,0 x00,0 x00;/D=25Hcha
21、r num26=0,0 x7F,0 x49,0 x49,0 x49,0 x49,0 x00,0 x00;/E=26Hchar num27=0,0 x7F,0 x09,0 x09,0 x09,0 x01,0 x00,0 x00;/F=27Hchar num28=0,0 x3E,0 x41,0 x41,0 x49,0 x7A,0 x00,0 x00;/G=28Hchar num29=0,0 x7F,0 x08,0 x08,0 x08,0 x7F,0 x00,0 x00;/H=29Hchar num2a=0,0 x00,0 x41,0 x7F,0 x41,0 x00,0 x00,0 x00;/I=2
22、AHchar num2b=0,0 x20,0 x40,0 x41,0 x3F,0 x01,0 x00,0 x00;/J=2BHchar num2c=0,0 x7F,0 x08,0 x14,0 x22,0 x41,0 x00,0 x00;/K=2CHchar num2d=0,0 x7F,0 x40,0 x40,0 x40,0 x40,0 x00,0 x00;/L=2DHchar num2e=0,0 x7F,0 x02,0 x00,0 x02,0 x7F,0 x00,0 x00;/M=2EHchar num2f=0,0 x7F,0 x06,0 x08,0 x30,0 x7F,0 x00,0 x00
23、;/N=2FHchar num30=0,0 x3E,0 x41,0 x41,0 x41,0 x3E,0 x00,0 x00;/O=30Hchar num31=0,0 x7F,0 x09,0 x09,0 x09,0 x06,0 x00,0 x00;/P=31Hchar num32=0,0 x3E,0 x41,0 x51,0 x21,0 x5E,0 x00,0 x00;/Q=32Hchar num33=0,0 x7F,0 x09,0 x19,0 x29,0 x46,0 x00,0 x00;/R=33Hchar num34=0,0 x26,0 x49,0 x49,0 x49,0 x32,0 x00,
24、0 x00;/S=34Hchar num35=0,0 x01,0 x01,0 x7F,0 x01,0 x01,0 x00,0 x00;/T=35Hchar num36=0,0 x3F,0 x40,0 x40,0 x40,0 x3F,0 x00,0 x00;/U=36Hchar num37=0,0 x1F,0 x20,0 x40,0 x20,0 x1F,0 x00,0 x00;/V=37Hchar num38=0,0 x7F,0 x20,0 x18,0 x20,0 x7F,0 x00,0 x00;/W=38Hchar num39=0,0 x63,0 x14,0 x08,0 x14,0 x63,0
25、 x00,0 x00;/X=39Hchar num3a=0,0 x07,0 x08,0 x70,0 x08,0 x07,0 x00,0 x00;/Y=3AHchar num3b=0,0 x61,0 x51,0 x49,0 x45,0 x43,0 x00,0 x00;/Z=3BHchar num3c=0,0 x00,0 x7F,0 x41,0 x41,0 x00,0 x00,0 x00;/=3CHchar num3d=0,0 x02,0 x04,0 x08,0 x10,0 x20,0 x00,0 x00;/=3DHchar num3e=0,0 x00,0 x41,0 x41,0 x7F,0 x0
26、0,0 x00,0 x00;/=3EHchar num3f=0,0 x04,0 x02,0 x01,0 x02,0 x04,0 x00,0 x00;/=3FHchar num40=0,0 x40,0 x40,0 x40,0 x40,0 x40,0 x00,0 x00;/-=40Hchar num41=0,0 x20,0 x54,0 x54,0 x54,0 x78,0 x00,0 x00;/a=41Hchar num42=0,0 x7F,0 x48,0 x44,0 x44,0 x38,0 x00,0 x00;/b=42Hchar num43=0,0 x38,0 x44,0 x44,0 x44,0
27、 x28,0 x00,0 x00;/c=43Hchar num44=0,0 x38,0 x44,0 x44,0 x48,0 x7F,0 x00,0 x00;/d=44Hchar num45=0,0 x38,0 x54,0 x54,0 x54,0 x18,0 x00,0 x00;/e=45Hchar num46=0,0 x00,0 x08,0 x7E,0 x09,0 x02,0 x00,0 x00;/f=46Hchar num47=0,0 x0C,0 x52,0 x52,0 x4C,0 x3E,0 x00,0 x00;/g=47Hchar num48=0,0 x7F,0 x08,0 x04,0
28、x04,0 x78,0 x00,0 x00;/h=48Hchar num49=0,0 x00,0 x44,0 x7D,0 x40,0 x00,0 x00,0 x00;/i=49Hchar num4a=0,0 x20,0 x40,0 x44,0 x3D,0 x00,0 x00,0 x00;/j=4AHchar num4b=0,0 x00,0 x7F,0 x10,0 x28,0 x44,0 x00,0 x00;/k=4BHchar num4c=0,0 x00,0 x41,0 x7F,0 x40,0 x00,0 x00,0 x00;/I=4CHchar num4d=0,0 x7C,0 x04,0 x
29、78,0 x04,0 x78,0 x00,0 x00;/m=4DHchar num4e=0,0 x7C,0 x08,0 x04,0 x04,0 x78,0 x00,0 x00;/n=4EHchar num4f=0,0 x38,0 x44,0 x44,0 x44,0 x38,0 x00,0 x00;/o=4FHchar num50=0,0 x7E,0 x0C,0 x12,0 x12,0 x0C,0 x00,0 x00;/p=50Hchar num51=0,0 x0C,0 x12,0 x12,0 x0C,0 x7E,0 x00,0 x00;/q=51Hchar num52=0,0 x7C,0 x0
30、8,0 x04,0 x04,0 x08,0 x00,0 x00;/r=52Hchar num53=0,0 x58,0 x54,0 x54,0 x54,0 x64,0 x00,0 x00;/s=53Hchar num54=0,0 x04,0 x3F,0 x44,0 x40,0 x20,0 x00,0 x00;/t=54Hchar num55=0,0 x3C,0 x40,0 x40,0 x3C,0 x40,0 x00,0 x00;/u=55Hchar num56=0,0 x1C,0 x20,0 x40,0 x20,0 x1C,0 x00,0 x00;/v=56Hchar num57=0,0 x3C
31、,0 x40,0 x30,0 x40,0 x3C,0 x00,0 x00;/w=57Hchar num58=0,0 x44,0 x28,0 x10,0 x28,0 x44,0 x00,0 x00;/x=58Hchar num59=0,0 x1C,0 xA0,0 xA0,0 x90,0 x7C,0 x00,0 x00;/y=59Hchar num5a=0,0 x44,0 x64,0 x54,0 x4C,0 x44,0 x00,0 x00;/z=5AHchar num5b=0,0 x00,0 x08,0 x36,0 x41,0 x00,0 x00,0 x00;/=5BHchar num5c=0,0
32、 x00,0 x00,0 x77,0 x00,0 x00,0 x00,0 x00;/|=5CHchar num5d=0,0 x00,0 x41,0 x36,0 x08,0 x00,0 x00,0 x00;/=5DHchar num5e=0,0 x02,0 x01,0 x02,0 x04,0 x02,0 x00,0 x00;/=5EHchar love1=0,0 x40,0 xB2,0 x96,0 x9A,0 x92,0 xF6,0 x9A;char love2=0 x93,0 x91,0 x99,0 x97,0 x91,0 x90,0 x30,0;char love3=0 x40,0 x20,
33、0 xA0,0 x90,0 x4C,0 x47,0 x2A,0 x2A;char love4=0 x12,0 x1A,0 x26,0 x22,0 x40,0 xC0,0 x40,0;char an11=0 x10,0 x10,0 x10,0 xFF,0 x90,0 x20,0 x98,0 x88;char an12=0 x88,0 xE9,0 x8E,0 x88,0 x88,0 xA8,0 x98,0 x00;char an21=0 x02,0 x42,0 x81,0 x7F,0 x00,0 x00,0 x80,0 x84;char an22=0 x4B,0 x28,0 x10,0 x28,0
34、 x47,0 x80,0 x00,0 x00;/*?,0*/char key13=0 x40,0 x30,0 xEF,0 x24,0 x24,0 x80,0 xE4,0 x9C;char key14=0 x10,0 x54,0 x54,0 xFF,0 x54,0 x7C,0 x10,0 x00;char key23=0 x01,0 x01,0 x7F,0 x21,0 x51,0 x26,0 x18,0 x27;char key24=0 x44,0 x45,0 x45,0 x5F,0 x45,0 x45,0 x44,0 x00;/*?,1*/char shi15=0 x00,0 x00,0 x0
35、0,0 x7F,0 x49,0 x49,0 x49,0 x49;char shi16=0 x49,0 x49,0 x49,0 x7F,0 x00,0 x00,0 x00,0 x00;char shi25=0 x81,0 x41,0 x21,0 x1D,0 x21,0 x41,0 x81,0 xFF;char shi26=0 x89,0 x89,0 x89,0 x89,0 x89,0 x81,0 x81,0 x00;/*?,2*/char keyvalue1;/*To Decide The AIC Sample Frequency*/*/*DSP的IO空间,扩展发光二极管、数码管、键盘、液晶等外
36、围设备*/ioport unsigned port1C00;/键盘行列线/*/char rdkey() ;char scan_key();char keyvalue=255;void main() c54_init(); lcd_dsp(0,1,1,an11); lcd_dsp(0,1,2,an12); lcd_dsp(0,2,1,an21); lcd_dsp(0,2,2,an22); lcd_dsp(0,1,3,key13); lcd_dsp(0,1,4,key14); lcd_dsp(0,2,3,key23); lcd_dsp(0,2,4,key24); lcd_dsp(0,1,5,shi
37、15); lcd_dsp(0,1,6,shi16); lcd_dsp(0,2,5,shi25); lcd_dsp(0,2,6,shi26);for (;) keyvalue = scan_key();if (keyvalue=255)asm( nop);/do nothingelse keyvalue1 = keyvalue;asm( nop);/do nothingasm( nop);/do nothing char rdkey()char keyin;port1C00 = 0 x0 ;keyin = port1C00 ;keyin = keyin & 0 xF ; if (keyin =
38、0 xF) return 0 ;else return 1 ;char scan_key()char keyornot;int keyin;int keyvalue; keyornot = rdkey() ; if (!keyornot) return 255; delay3(); keyornot = rdkey() ; if (keyornot )/某个键按下!port1C00 = 0 xe ;keyin = port1C00 & 0 xF ;if ( keyin != 0 xF)keyvalue = 0;keyin = keyin;keyvalue = keyin + keyvalue-
39、7;while (keyornot = rdkey()/等键松下delay3();/return keyvalue;port1C00 = 0 xd ;keyin = port1C00 & 0 xF ;if ( keyin != 0 xF)keyvalue = 1;keyvalue = keyin + keyvalue ;while (keyornot = rdkey()delay3();/return keyvalue;port1C00 = 0 xb ;keyin = port1C00 & 0 xF ;if ( keyin != 0 xF)keyvalue = 9;keyvalue = key
40、in + keyvalue ;while (keyornot = rdkey()delay3();/return keyvalue;port1C00 = 0 x7 ;keyin = port1C00 & 0 xF ;keyin = port1C00 & 0 xF ;if ( keyin != 0 xF)keyvalue = 17;keyvalue = keyin + keyvalue ;while (keyornot = rdkey()delay3();/return keyvalue;if (keyvalue=0 x7) keyvalue=0; goto proecess0; if (key
41、value=0 x6) keyvalue=1; goto proecess1; if (keyvalue=0 x4) keyvalue=2; goto proecess2; if (keyvalue=0 x0) keyvalue=3; goto proecess3; if (keyvalue=0 xf) keyvalue=4; goto proecess4; if (keyvalue=0 xe) keyvalue=5; goto proecess5; if (keyvalue=0 xc) keyvalue=6; goto proecess6; if (keyvalue=0 x8) keyval
42、ue=7; goto proecess7; if (keyvalue=0 x17) keyvalue=8; goto proecess8; if (keyvalue=0 x16) keyvalue=9; goto proecess9; if (keyvalue=0 x14) keyvalue=10; goto proecess10; if (keyvalue=0 x10) keyvalue=11; goto proecess11; if (keyvalue=0 x1f) keyvalue=12; goto proecess12; if (keyvalue=0 x1e) keyvalue=13;
43、 goto proecess13; if (keyvalue=0 x1c) keyvalue=14; goto proecess14; if (keyvalue=0 x18) keyvalue=15; goto proecess15; proecess0: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num0);/t return keyval
44、ue; proecess1: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num1);/t return keyvalue;proecess2: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /init
45、ialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num2);/t return keyvalue; proecess3: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num3);/t return keyvalue; proecess4: temp = port1000 ;/ /RES=0,re
46、set lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num4);/t return keyvalue; proecess5: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp
47、(0,4,1,num5);/t return keyvalue; proecess6: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num6);/t return keyvalue; proecess7: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=
48、1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num7);/t return keyvalue; proecess8: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num8);/t return keyvalue; proecess9
49、: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num9);/t return keyvalue; proecess10: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd
50、Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num1);/tlcd_dsp(0,4,2,num0);/i return keyvalue; proecess11: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num1);/tlcd_dsp(0,4,2,num1);/i return keyvalue; proec
51、ess12: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num1);/tlcd_dsp(0,4,2,num2);/i return keyvalue; proecess13: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd I
52、nit_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num1);/tlcd_dsp(0,4,2,num3);/i return keyvalue; proecess14: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num1);/tlcd_dsp(0,4,2,num4
53、);/i return keyvalue; proecess15: temp = port1000 ;/ /RES=0,reset lcd delay2(); port1000 = temp ;/ /RES=1,enable lcd Init_Lcd(); /initialize lcd Cls_Lcd();/清屏 delay2(); lcd_dsp(0,4,1,num1);/tlcd_dsp(0,4,2,num5);/i return keyvalue; return 255;void lcd_dsp(char lorr,char page_cnt,char line,char numx)/写入一个8*8的字符char clr_byte_cnt;page_cnt = (page_cnt - 1) | 0 xb8;/设置页号line = (line-1)*8 + 0 x40 ;/改字符的起始列if (lorr=0)/写-l块(左半屏)Wr_c_l(page_cnt);Wr_c_l(line);for(clr_byte_cnt=1;clr_byte_cnt=8;clr_byte_cnt+)/将numx写入Wr_d_l(numxclr_byte_cnt-1);/在对应列写入一字节数据else/写-r块(右半屏)Wr_c_r(page_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中式面点制作(视频课)知到课后答案智慧树章节测试答案2025年春洛浦县中等职业技术学校
- 海南外国语职业学院《建筑设计与构造(2)》2023-2024学年第二学期期末试卷
- 长沙民政职业技术学院《大气污染控制工程》2023-2024学年第二学期期末试卷
- 柳州职业技术学院《材料连接原理与技术》2023-2024学年第二学期期末试卷
- 厦门海洋职业技术学院《工程地质(一)》2023-2024学年第二学期期末试卷
- 淮北职业技术学院《漆画创作》2023-2024学年第二学期期末试卷
- 古代舆论沟通机制
- 构建人类命运共同体的重要性与必要性
- 高压水枪冲洗施工方案
- 牌楼建筑修缮施工方案
- 磷脂酶与脂质代谢
- 上海市奉贤区2022年中考二模英语试题(含解析和听力)
- 体育课电子教案模板
- 数字的秘密生活最有趣的50个数学故事
- 养老机构安全隐患排查清单、自查表、治理整改台账
- 5.1 数据安全概述
- 2023年国内广西地区民宿行业分析报告
- 移动机器人SLAM技术 课件 【ch06】激光SLAM
- led灯具生产工艺过程流程图
- 2023版思想道德与法治绪论教学设计 担当复兴大任 成就时代新人教学设计
- 财务分析模板(43张)课件
评论
0/150
提交评论