键盘中断实验

上传人:博****1 文档编号:445337390 上传时间:2024-01-31 格式:DOC 页数:7 大小:96KB
返回 下载 相关 举报
键盘中断实验_第1页
第1页 / 共7页
键盘中断实验_第2页
第2页 / 共7页
键盘中断实验_第3页
第3页 / 共7页
键盘中断实验_第4页
第4页 / 共7页
键盘中断实验_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《键盘中断实验》由会员分享,可在线阅读,更多相关《键盘中断实验(7页珍藏版)》请在金锄头文库上搜索。

1、南通大学实验报告院系 :计算机科学与技术姓名 :课程名称:接口技术成绩 :学号 :1213022013指导教师 :李跃华同组实验者 :实验日期: 2014-5-7实验名称 :键盘中断实验1.实验目的1熟练运用CodeWarrior 嵌入式开发系统环境、C 语言、调试方式。2复习串行通信接口(SCI)的内容。3加强键盘中断基本原理及编程原理的理解。4理解“行扫描”法的原理并能进行键值识别和键值编码2.实验内容键盘的c 语言编程:1)初始化,先按IO口方式初始化,即定义列线为输入且上拉,行线为输出,然后依输入口的键盘功能初始化相应的寄存器。2)定义键值表3)扫描一次,读取键值4)获得键盘定义值行扫

2、描法是使键盘的某一行输出为低电平,其余行为高电平,然后读取列值,如果列值中有某位为低电平,则表明该行和列交点处的键被按下;若为全高则再扫描下一行,直至扫描完全部的行线为止。这样就可以确定是哪一行哪一列交点的键被按下。2. 软件设计三 程序流程图主程序中构件初始化在主函数里添加波特率在中断中加接受函数Tool 测试按键值在pc 上显示四 编程1.内核定时器中断void tpm0_isr(void)static uint_32 TPMCounter = 0; uint_8 value;static uint_8 LEDindex=0; uint_8 LEDDataBuffer4;uint_8 i;

3、/LED 缓冲区赋值LEDDataBuffer0=0;LEDDataBuffer1=2;LEDDataBuffer2=3;LEDDataBuffer3=5;/计时器/键盘变量/位选口声明/LED 显示缓冲区/LCD 显示缓冲区,其中.表示按下的数字uint_8 kbv32=Thekeyboard you just input is .;if(TPM_SC_REG(TPM0_BASE_PTR) & TPM_SC_TOF_MASK) = TPM_SC_TOF_MASK)TPMCounter+;BSET(TPM_SC_TOF_SHIFT,TPM_SC_REG(TPM0_BASE_PTR); /中断置

4、标志位写1 清 0/处理 LED 部分LEDindex+;/位选位 +1if(LEDindex=4)LEDindex=0;/大于 4 位选口置0i=LEDchangeCode(LEDDataBufferLEDindex-0);/转码LEDshow1(LEDindex,i);/显示 LEDif(TPMCounter100)TPMCounter = 0;/键盘得到扫描值value = KBScanN(2);/扫描键值 ,存于 value 中if(KBDef(value)!= 0xff)/发送键值/修改 .成为按键值kbv31 = KBDef(value);/通过 LCD 显示出来LCDShow(k

5、bv);uart_send_string(UART_2,kbv);/ 键盘发送信息2.程序的入口int main(void)/1.声明主函数使用的局部变量uint_8 * g_DispalyInit;/2.关总中断enter_critical();/3.初始化底层模块uart_init (UART_1,BUSCLK,9600);/串口 1 初始化 ,总线时钟 24000Khz,波特率 9600LEDInit();/LED初始化LCDInit();/LCD初始化KBInit();/键盘初始化tpm_init(TPM0,TPM_CLKSRC_PLL,1000);/初始化 TPM 模块, 1ms 中断一次/4.缓冲区赋值g_DispalyInit=(uint_8*)WaitReceiving.Soochow2013.01.;/5.开中断tpm_enable_int(0);init_critical();/6.lcd 显示初始字符LCDShow(g_DispalyInit);/=for(;)/=return 0;四. 实验小结在这次实验中主要让我们熟悉掌握gpio 口通信的知识,在熟悉代码的前提下在主函数里初始化波特率何在中断函数里添加一个接收函数就可以。设置键盘中断允许寄存器,当键盘有键被按下时,立即产生中断,中断程序处理按键事件,比如确定哪个键被按下,然后转换为该键的定义值

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号