键盘中断实验_第1页
键盘中断实验_第2页
键盘中断实验_第3页
键盘中断实验_第4页
键盘中断实验_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南通大学实验报告 院系 计算机科学与技术 姓名 课程名称 接口技术 成绩 学号 指导教师 李跃华 同组实验者 实验日期 2014 5 7 实验名称 键盘中断实验 1 实验目的 1 熟练运用 CodeWarrior 嵌入式开发系统环境 C 语言 调试方式 2 复习串行通信接口 SCI 的内容 3 加强键盘中断基本原理及编程原理的理解 4 理解 行扫描 法的原理并能进行键值识别和键值编码 2 实验内容 键盘的 c 语言编程 1 初始化 先按 IO 口方式初始化 即定义列线为输入且 上拉 行线为输出 然后依 输入口的键盘功能初始化相应的寄存器 2 定义键值表 3 扫描一次 读取键值 4 获得键盘定义值 行扫描法是使键盘的某一行输出为低电平 其余行为高电 平 然后读取列值 如果列值 中有某位为低电平 则表明该行和列交点处的键被按下 若为全高则再扫描下一行 直至扫 描完全部的行线为止 这样就可以确定是哪一行哪一列交 点的键被按下 2 软件设计 三 程序流程图 主程序中构件初始 化 在主函数里添加波特率 Tool 测试 在中断中加接受函数 按键值在 pc 上显示 四 编程 1 内核定时器中断 void tpm0 isr void static uint 32 TPMCounter 0 计时器 uint 8 value 键盘变量 static uint 8 LEDindex 0 位选口声明 uint 8 LEDDataBuffer 4 LED 显示缓冲区 uint 8 i LED 缓冲区赋值 LEDDataBuffer 0 0 LEDDataBuffer 1 2 LEDDataBuffer 2 3 LEDDataBuffer 3 5 LCD 显示缓冲区 其中 表示按下的数字 uint 8 kbv 32 The keyboard you just input is if TPM SC REG TPM0 BASE PTR BSET TPM SC TOF SHIFT TPM SC REG TPM0 BASE P TR 中断置标志位写 1 清 0 处理 LED 部分 LEDindex 位选位 1 if LEDindex 4 LEDindex 0 大于 4 位选口置 0 i LEDchangeCode LEDDataBuffer LEDindex 0 转码 LEDshow1 LEDindex i 显示 LED if TPMCounter 100 TPMCounter 0 键盘得到扫描值 value KBScanN 2 扫描键值 存于 value 中 if KBDef value 0 xff 发送键值 修改 成为按键值 kbv 31 KBDef value 通过 LCD 显示出来 LCDShow kbv 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 波特率 9600 LEDInit LED 初始化 LCDInit LCD 初始化 KBInit 键盘 初始化 tpm init TPM0 TPM CLKSRC PLL 1000 初始化 TPM 模块 1ms 中断一次 4 缓冲区赋值 g DispalyInit uint 8 Wait Receiving Soochow 2013 01 5 开中断 tpm enable int 0 init critical 6 lcd 显示初始字符 LCDShow g DispalyInit for return 0 四 实验小结 在这次实验中主要让我们熟悉掌握 gpio 口通信的知识 在熟悉 代码的前提下在主函数里初始

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论