收藏 分销(赏)

基于DSP芯片的键盘控制LCD显示.docx

上传人:胜**** 文档编号:2686661 上传时间:2024-06-04 格式:DOCX 页数:37 大小:379.55KB
下载 相关 举报
基于DSP芯片的键盘控制LCD显示.docx_第1页
第1页 / 共37页
基于DSP芯片的键盘控制LCD显示.docx_第2页
第2页 / 共37页
基于DSP芯片的键盘控制LCD显示.docx_第3页
第3页 / 共37页
基于DSP芯片的键盘控制LCD显示.docx_第4页
第4页 / 共37页
基于DSP芯片的键盘控制LCD显示.docx_第5页
第5页 / 共37页
点击查看更多>>
资源描述

1、*大学*学院课程设计报告题 目:基于DSP芯片的键盘控制LCD显示专 业: 通信工程 班 级: 一班 姓 名: * 学 号: * 指导教师: * 年 月 日信息与电气工程学院课程设计任务书20 15 20 16 学年第 一 学期专业: 学号: 姓名: 课程设计名称: DSP原理与应用 设计题目: 基于DSP芯片的键盘控制LCD显示 完成期限:自 2015 年 12 月 21 日至 2015 年 12 月 25 日共 1 周设计依据、要求及主要内容(可另加附页):一、设计依据通过4 * 4的行列式键盘,TMS320F2407的8个I / O口与之相连,用扫描法来进行按键识别。使行线一直处于高电平

2、,在某一时刻只让一条列线处于低电平,而其余列线处于高电平。那么按下键的那列电平就会拉成低电平,判断出哪列为低电平就可以判断出按键号码。二、设计要求1.要求正确掌握CCS2000的安装和调试方法,以及DSP实验箱下载调试的步骤;2.要求正确掌握键盘信号的输入和DSP I/O的使用;3.要求键盘信号之间的时序能正确识别和引入。三、主要内容1.根据行列式键盘的特点,进行键盘控制系统的整体研究与设计;2.熟练掌握CCS2000软件的使用,并能够按要求对设计的电路进行仿真,实现相应的功能;3.LCD液晶显示屏实时显示按键的信息;4.采用软件编程的方法实现按键信息的提取和显示。指导教师(签字): 批准日期

3、: 年 月 日37摘要 随着21世纪的到来,电子信息行业将是人类社会的高科技行业之一,式设施现代化的基础,也是人类通往科技巅峰的直通路。电子行业的发展从长远来看很重要,但最主要的还是科技问题。 行列式键盘提高效率进行按键操作管理有效方法,它可以提高系统准确性,有利于资源的节约,降低对操作者本身素质的要求。是它能准时、实时、高效地显示按键信息,以提高工作效率和资源利用率。行列式键盘乃是当今使用最为广泛的键盘模式之一,该系统以8个端口连接控制4*4个按键,即时在LCD数码管上。单片机控制的据这是键盘显示系统,该系统可以对不同的按键进行实时显示,其核心是插上2407主控板的DSP实验箱和键盘矩阵电路

4、部分,主要对按键与显示电路的关系、矩阵式技术及设备系统的硬件、软件等各个部分进行实现。4*4矩阵式键盘采用插上2407主控板的DSP实验箱为核心,主要由矩阵式键盘电路、译码电路、显示电路等组成,软件选用汇编语言编程。单片机将检测到的按键信号转换成数字量,显示于LCD显示器上。该系统灵活性强,易于操作,可靠性高,将会有更广阔的开发前景。关键字:插上2407主控板的DSP实验箱;行列式;LCD;键盘目录一、 实验目的.5二、 实验设备.5三、 实验原理.6四、 实验步骤.7五、 程序.8六、 实验总结.25七、参考文献.25基于DSP芯片的键盘控制LCD显示一、 实验目的 1.掌握CCS2000的

5、安装和调试方法,以及DSP实验箱下载调试的步骤; 2.掌握键盘信号的输入,DSP I/O口的使用; 3.掌握键盘信号之间时序的正确识别和引入。二、实验设备1.一台装有CCS2000软件的计算机; CCS2000具有以下特性:TI编译器的完全集成的环境:CCS2000目标管理系统,内建编辑器,所有的调试和分析能力集成在一个Windows环境中。对c和DSP汇编文件的目标管理:目标编辑器保持对所有文件及相关内容的跟踪。它只对最近一次编译中改变过的文件重新编译,以节省编译时间。高集成的编辑器调整C和DSP汇编代码:CCS2000的内建编辑器支持C和汇编文件的动态语法加亮显示。使用户能很容易地阅读代码

6、和当场发现语法错误,对编辑和调试时的后台编辑:用户在使用编译器和汇编器时没有必要退出系统到DOS环境中,因为CCS2000会自动将这些工具装载在它的环境中。在其窗口中,错误会加亮显示只要双击错误就可以直接到达出错处。PDM允许将命令传播给所有的或所选择的处理器。在任何算法点观察信号的图形窗口探针,图形显示窗口使用户能够观察时域或频域内的信号。2.插上2407主控板的DSP实验箱;(仿真器模块,显示控制模块,DSP评估板模块,行列式键盘模块) ICETEK-LF2407-A板是一块很独立的目标板,它非常适合检验LF2407DSP的性能,此外,本目标板提供了LF240x系列芯片进行扩展和运行软件的

7、标准平台。ICETEK-LF2407-A板使用了TMS320LF2407DSP芯片,兼容所有LF2407的使用代码,它具有2.5K字节的片上数据存储器,128K板上存储器,片上UART,DAC7625模数转换器。此EVM板还提供了DSP的扩展引脚,方便了用户外搭所需电路。许多用户接口可利用简单的代码进行扩展,从而缩短了调试时间。 ICETEK-LF2407-A板功能:它主要的接口包括目标存储器接口、模拟接口、CAN总线接口、并口、用户指示灯和开关、外部扩展接口。LF2407提供了128K的静态存储器,外部I/O口支持相应的64kI/O端口,片上的CAN总线和RS232端口可用做扩展连接。 3.

8、DSP硬件仿真器。三、实验原理实验箱上提供一个4x4的行列式键盘。2407的8个I/O口与之相连,这里按键的识别方法是扫描法。键被按下时,与此键相连的行线电平将由与此键相连的列线电平决定,而行线的电平在无按键按下时处于高电平状态。如果让所有的列线也处于高电平,那么键按下与否不会引起行线电平的状态变化,始终为高电平。所以,让所有的列线处于高电平是无法识别出按键的。现在反过来,让所有的列线处于低电平,很明显,按键所在的行电平将被拉成低电平。根据此行电平的变化,便能判断此行一定有按键被按下,但还不能确定是哪个键被按下。假如是5键按下,为了进一步判定是哪一列的键被按下,可在某一时刻只让一条列线处于低电

9、平,而其余列线处于高电平。那么,按下键的那列电平就会拉成低电平,判断出哪列为低电平就可以判断出按键号码。读者可以通过下面的键位去加深理解其含义实验流程图:由图可知,插上2407主控板的DSP实验箱的主芯片扫描矩阵键盘模块,矩阵键盘按键返回数据给实验箱主控制芯片,再由DSP芯片控制液晶显示模块,输入数据到液晶显示模块,然后完成实验流程,按下矩阵键盘的任意一个按键都能显示相对应的数据。四、实验步骤1把2407模块小板插到大板上电脑显示会要安装驱动,按照流程安装好驱动;打开液晶模块的电源开关;2在CCS2000环境中打开本实验的工程编译(.keyzkey.pjt) ,生成输出文件,通过仿真器把执行代

10、码(.out的文件)下载到DSP芯片; 2 运行;按下键盘按键,液晶会显示所按键的号码。 4.调试及性能分析 点击“运行”按键,进行仿真,点击右边4*4按键,则数码管显示0F,仿真结果符合实验要求。 5.系统实现的功能基本功能:通过键盘输入,在LCD液晶显示屏上显示相应的数值;功能优势:键盘输入,插上2407主控板的DSP实验箱控制,LCD液晶显示屏显示。五、 程序r16 .set 280hr17 .set 282hr18 .set 284hr21 .set 286hr22 .set 288h ;r22 为调用显示一次的列数r23 .set 28ah ;r24显示起始页 r24 .set 28

11、ch ;r24显示起始列r25 .set 28eh ;r25显示结束页r26 .set 290hkeydata .set 292h ;存放键值rowdata .set 294h ;存放行数scandata .set 296h ;存放扫描值keybuffer .set 298h ;读写键值缓冲dp_user .set 5hkeydata1 .set 29ahlcdtab .set 29chlcddata .set 29ehpbdatdir .set 709ah dp_pf2 .set 0e1hpadatdir .set 7098hpcdatdir .set 709chmcra .set 7090

12、hmcrb .set 7092hmcrc .set 7094hpedatdir .set 7095hpfdatdir .set 7096h;以F口的低四位为输出,C口的7,6,5,0为输入,调试以通 .data tab00:;- 文字: E -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,007H,006H,004H,004H,004H,004H,004H,004H,004H,007H,007H,004H,004H,000H .word 000H,0C0H,080H,000H,01FH,007H,002H,002H,002H,002H,002H

13、,0FFH,0FFH,000H,000H,000H .word 000H,006H,001H,000H,0C0H,000H,000H,000H,000H,000H,000H,0FFH,0FFH,000H,000H,000H .word 000H,000H,0C0H,0C0H,040H,040H,040H,040H,040H,040H,040H,0C0H,0C0H,040H,040H,000Htab01:;- 文字: 0 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,000H,001H,003H,006H,004H,004H,004H,006H

14、,003H,001H,000H,000H,000H,000H .word 000H,01FH,0FFH,0C0H,000H,000H,000H,000H,000H,000H,000H,0E0H,0FFH,01FH,000H,000H .word 000H,0F0H,0FEH,007H,001H,000H,000H,000H,000H,000H,001H,00FH,0FEH,0F0H,000H,000H .word 000H,000H,000H,000H,080H,0C0H,040H,040H,040H,0C0H,080H,000H,000H,000H,000H,000Htab02:;- 文字:

15、 F -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,007H,006H,006H,004H,004H,004H,004H,004H,004H,004H,007H,007H,004H,004H,000H .word 0C0H,080H,000H,01FH,007H,002H,002H,002H,002H,002H,002H,0FFH,0FFH,000H,000H,000H .word 000H,000H,000H,0C0H,000H,000H,000H,000H,000H,000H,000H,0FFH,0FFH,000H,000H,000H .word

16、000H,000H,000H,000H,000H,000H,000H,000H,000H,040H,040H,0C0H,0C0H,040H,040H,000Htab03:;- 文字: D -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,000H,001H,003H,002H,006H,004H,004H,004H,004H,007H,007H,004H,004H,000H .word 000H,01FH,0FFH,0E0H,000H,000H,000H,000H,000H,000H,000H,0FFH,0FFH,000H,000H,000H .

17、word 000H,0F0H,0FCH,00FH,001H,000H,000H,000H,000H,000H,000H,0FFH,0FFH,000H,000H,000H .word 000H,000H,000H,000H,080H,080H,0C0H,040H,040H,040H,040H,0C0H,0C0H,040H,040H,000Htab04:;- 文字: 7 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,006H,007H,006H,006H,006H,006H,006H,006H,006H,007H,007H,001H,000H,0

18、00H .word 000H,000H,000H,000H,0C0H,030H,00CH,003H,000H,000H,000H,000H,080H,0E0H,000H,000H .word 000H,000H,000H,000H,000H,000H,000H,080H,07FH,00FH,000H,000H,000H,000H,000H,000H .word 000H,000H,000H,000H,000H,000H,000H,000H,0C0H,0C0H,000H,000H,000H,000H,000H,000Htab05:;- 文字: 8 -;- 宋体24; 此字体下对应的点阵为:宽x高

19、=16x32 - .word 000H,000H,000H,001H,003H,006H,004H,004H,004H,004H,006H,003H,001H,000H,000H,000H .word 000H,000H,0F0H,0F8H,00CH,003H,003H,003H,003H,006H,00FH,01DH,0F8H,0F0H,000H,000H .word 000H,000H,03EH,07FH,0E1H,0C0H,080H,000H,000H,000H,000H,080H,0C1H,07FH,03EH,000H .word 000H,000H,000H,000H,080H,08

20、0H,040H,040H,040H,040H,040H,080H,080H,000H,000H,000Htab06:;- 文字: 9 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,000H,000H,001H,002H,004H,004H,004H,004H,004H,002H,003H,001H,000H,000H .word 000H,000H,03FH,0FFH,083H,001H,000H,000H,000H,000H,000H,000H,081H,0FFH,07EH,000H .word 000H,000H,0E0H,0FCH,01

21、EH,083H,081H,040H,040H,040H,040H,0C0H,083H,003H,000H,000H .word 000H,000H,000H,000H,000H,000H,080H,0C0H,040H,040H,040H,040H,080H,080H,000H,000Htab07:;- 文字: C -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,007H,003H,002H,004H,004H,004H,004H,006H,002H,001H,000H,000H,000H,000H .word 000H,060H,080H,00

22、0H,000H,000H,000H,000H,000H,000H,000H,080H,0E0H,07FH,00FH,000H .word 000H,00CH,003H,001H,000H,000H,000H,000H,000H,000H,000H,001H,00FH,0FEH,0F0H,000H .word 000H,000H,000H,080H,080H,040H,040H,040H,040H,040H,080H,080H,000H,000H,000H,000Htab08:;- 文字: 4 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,00

23、0H,000H,007H,007H,003H,000H,000H,000H,000H,000H,000H,000H,000H,000H .word 000H,000H,000H,000H,0FFH,0FFH,0FFH,080H,060H,018H,00CH,003H,000H,000H,000H,000H .word 000H,010H,010H,010H,0FFH,0FFH,0FFH,010H,010H,010H,010H,010H,090H,070H,010H,000H .word 000H,020H,020H,020H,0E0H,0E0H,0E0H,020H,020H,020H,000H

24、,000H,000H,000H,000H,000Htab09:;- 文字: 5 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,006H,006H,006H,006H,006H,006H,006H,006H,006H,007H,000H,000H,000H,000H .word 000H,000H,000H,003H,006H,00CH,008H,008H,008H,008H,004H,0C2H,03FH,000H,000H,000H .word 000H,000H,0FCH,0FFH,003H,000H,000H,000H,000H,000H

25、,000H,000H,00CH,00FH,000H,000H .word 000H,000H,000H,000H,080H,080H,040H,040H,040H,040H,040H,040H,080H,000H,000H,000Htab10:;- 文字: 6 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,001H,003H,004H,004H,004H,004H,006H,002H,001H,000H,000H,000H,000H,000H .word 000H,000H,081H,083H,006H,004H,004H,004H,004H

26、,002H,003H,0E1H,07FH,00FH,000H,000H .word 000H,0FCH,0FFH,001H,000H,000H,000H,000H,000H,000H,001H,087H,0FEH,0F8H,000H,000H .word 000H,000H,000H,080H,080H,040H,040H,040H,040H,0C0H,080H,000H,000H,000H,000H,000Htab11:;- 文字: B -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,001H,003H,003H,006H,004H,004H

27、,004H,004H,004H,007H,007H,004H,004H,000H .word 000H,000H,0F0H,0F9H,00DH,006H,002H,002H,002H,002H,002H,0FFH,0FFH,000H,000H,000H .word 000H,03EH,0FFH,081H,000H,000H,000H,000H,000H,000H,000H,0FFH,0FFH,000H,000H,000H .word 000H,000H,000H,080H,0C0H,040H,040H,040H,040H,040H,040H,0C0H,0C0H,040H,040H,000Hta

28、b12:;- 文字: 1 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,000H,000H,000H,000H,000H,007H,003H,001H,001H,001H,001H,000H,000H,000H .word 000H,000H,000H,000H,000H,000H,000H,0FFH,0FFH,000H,000H,000H,000H,000H,000H,000H .word 000H,000H,000H,000H,000H,000H,000H,0FFH,0FFH,000H,000H,000H,000H,000H,000H,0

29、00H .word 000H,000H,000H,040H,040H,040H,0C0H,0C0H,0C0H,0C0H,040H,040H,040H,000H,000H,000Htab13:;- 文字: 2 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,000H,003H,003H,006H,004H,004H,004H,004H,004H,002H,001H,000H,000H,000H .word 000H,000H,0F8H,0FCH,006H,001H,000H,000H,000H,000H,000H,000H,030H,0F0H,0

30、00H,000H .word 000H,000H,00FH,001H,000H,000H,080H,040H,020H,010H,008H,004H,002H,001H,000H,000H .word 000H,000H,000H,0C0H,0C0H,0C0H,0C0H,0C0H,0C0H,0C0H,0C0H,0C0H,0C0H,0C0H,000H,000Htab14:;- 文字: 3 -;- 宋体24; 此字体下对应的点阵为:宽x高=16x32 - .word 000H,000H,000H,000H,003H,003H,006H,004H,004H,004H,004H,002H,003H,0

31、01H,000H,000H .word 000H,000H,000H,0F0H,0F9H,00DH,007H,002H,002H,002H,000H,000H,0E0H,0E0H,000H,000H .word 000H,000H,03CH,0FFH,081H,000H,000H,000H,000H,000H,000H,000H,00FH,00FH,000H,000H .word 000H,000H,000H,000H,080H,080H,040H,040H,040H,040H,040H,080H,080H,000H,000H,000Htab15:;- 文字: A -;- 宋体24; 此字体下

32、对应的点阵为:宽x高=16x32 - .word 000H,000H,000H,000H,000H,000H,000H,00FH,007H,007H,000H,000H,000H,000H,000H,000H .word 000H,000H,000H,000H,000H,007H,07FH,0F8H,000H,0C0H,07CH,007H,000H,000H,000H,000H .word 000H,000H,000H,003H,07FH,0FCH,0C0H,040H,040H,040H,040H,0C0H,07CH,007H,000H,000H .word 000H,040H,040H,0C

33、0H,0C0H,040H,000H,000H,000H,000H,000H,040H,040H,0C0H,0C0H,040H .include 240xa.inc .def _c_int0 .text_c_int0 setc INTM clrc SXM clrc OVM clrc CNF ldp #0e0h splk #0e8h,WDCR ldp #0 splk #0h,IMR splk #0ffffh,IFR ldp #dp_user splk#0FFFH,r22 out r22,WSGR ldp #dp_pf2 lacl #00h sacl mcra ;初始化mcra,定义a的0,1口为i

34、/o lacl mcrb lacl #0ff00h sacl mcrb ;初始化mcrb,定义c 的2,3,4口为i/o lacl #000h sacl mcrc ;初始化mcrc,定义e口为i/o nop ldp #5 lacl #0 sacl lcdtab sacl keydata ;long1: lacl #0ff00h ldp #0e1h sacl PADATDIR ;a的0,1口输出且为0 rpt #20 ;延时 nop lacl #0ff00h sacl PCDATDIR ;c的2,3,4口输出且为0 rpt #20 nop lacl #0ff00h sacl pedatdir ;

35、c的2,3,4口输出且为0 rpt #20 nop ldp #dp_user splk #3eh,r16 ;关液晶显示3e call write_ins0 rpt #100 nop rpt #100 nop rpt #100 nop ldp #dp_user splk #3fh,r16 ;开液晶显示3f call write_ins0 call write_ins1 rpt #100 nop rpt #100 nop ; B long100l1: ldp #dp_user splk #0c0h,r16 ;起始行对应行 call write_ins0 noplong2: ldp #dp_user

36、 splk #0bfh,r16 ;确定初始页;call write_ins0 call write_ins0 ldp #dp_user splk #40h,r16 ;确定初始列 call write_ins0 ldp #dp_user call display_cs0 call display_cs1 ;键盘扫描开始 long100: ;call display_cs0 scan_again: call scan_key ;调用函数,得到对应数的(数)*16作地址偏移用 lacl keydata bcnd long100,eq lacl #0ff00h ldp #0e1h sacl PADAT

37、DIR ;a的0,1口输出且为0 rpt #20 ;延时 nop lacl #0ff00h sacl PCDATDIR ;c的2,3,4口输出且为0 rpt #20 nop lacl #0ff00h sacl pedatdir ;c的2,3,4口输出且为 ;call display_cs0 lacl #0h ldp #5h sacl lcdtab ;lcdtab的作用是放取数的地址值 lacc #0 mar *,ar5 ldp #5h lacl keydata sub #01h sacl keydata lar ar5,keydata lar ar0,#00h ;sacl lcdtab lac

38、l #00lay1: LACL lcdtab add #64 sacl lcdtab sbrk #1h nop cmpr 00 bcnd lay1,NTC sacl lcdtab; ;显示一个数 long35: ldp #dp_user splk #10h,r22 ;r22 为调用显示一次的列数 ldp #dp_user splk #0beh,r23 ;r23显示起始页 ldp #dp_user splk #70h,r24 ;r24显示起始列 ldp #dp_user splk #0bbh,r25 ;r25显示结束页 lacc lcdtab add #tab00 ;取第一行的地址数 sacl lcdtab call display4 ;显示第一个字 ldp #dp_user ;* ldp #dp_user splk #10h,r22 ;r22 为调用显示一次的列数 ldp #dp_user splk #0beh,r23 ;r23显示起始页 ldp #dp_user splk #60h,r24 ;r24显示起始列 ldp #dp_user splk #0bbh,r25 ;r25显示结束页 lacc lcdtab add

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服