



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
G2一体化实验板:矩阵键盘和数码管显示一、实验目的(1)掌握如何用数码管显示数值或者某些字符;(2)掌握矩阵键盘的使用方法。二、实验设备G2一体化实验板。三、实验内容及步骤1、基础实验检测程序功能:按下某个按键,则数码管会显示对应的数值,即若按下按键Ki(i取值为015),在数码管上显示数值i,如若K0按下,则在数码管上显示数字0,若K15按下,则在数码管上显示数字15等。各个按键的具体定义见下图1:K0K1K2K3K4K5K6K7K8K9K10K11K12K13K14K15图1 检测程序中44矩阵键盘盘面步骤:(1)将msp430LaunchPad(芯片型号为G2433)插到实验板主板上;(2)将矩阵键盘和数码管部分的四个跳线帽连上,这四个跳线帽对应的IO口分别是P2.3、P2.5、P2.6和P2.7;(3)确保P2.3、P2.5、P2.6和P2.7这4个IO口不被其他部分的电路使用,即是断开这几个IO口与其他部分电路连接的跳线帽;(4)按下主板上的电源开关;(5)用USB线连接msp430LaunchPad和电脑;(6)打开下载软件并添加所给例程,并下载该程序(在下载之前先进行相关设置);(7)下载完毕后,退出软件下载模式,即可在矩阵键盘和数码管模块上实现上述功能(注意:在此之前一定先按几下msp430LaunchPad上的复位键RESET)。2、拓展实验简易计算器功能:实现4位(由于数码管只有4位)非负整数的四则运算,即加、减、乘和除法。各个按键的具体定义见下图2: 789 45612 30清零=图2 计算器键盘盘面说明:(1)由于数码管的显示能力有限,所以当按下加号键“”时,在数码管上并非显示“”,而是在第0位的数码管上显示“”以表示加号;当按下乘号键“”时,在数码管上并非显示“”,而是在第0位数码管上显示以“”表示乘号;当按下除号键“”时,在数码管上并非显示“”,而是在第0位数码管上显示以“”表示除号;按下减号键“”时,在第0位数码管上显示“”以表示减号。(2)若除数为0,则数码管显示E1;若被减数小于减数,则数码管显示E2;若计算结果超出显示范围(由于是4位数码管,故可显示的最大数值为9999),数码管显示E3。 (3)除法运算为取整除法,不显示小数部分,即12显示结果为0,43显示结果为1等。步骤:(1)按照前面实验的7个步骤将程序下载到板子上,退出下载模式,按几下msp430LaunchPad上的复位键RESET;(2)输入第一个操作数,即任意按下代表数字09的按键(不能超过4位,因为只有4位数码管);(3)输入操作符,即按下代表加、减、乘和除法4个按键中的任一个;(4)输入第二个操作数,即任意按下代表数字09的按键(不能超过4位,因为只有4位数码管);(5)按下代表等号“=”的按键,则计算结果将显示在数码管上;(7)若要进行下一次运算,则先按下清零键,再重复步骤(2)(5)即可。四、实验原理核心芯片CH452A是数码管显示驱动和键盘扫描控制芯片。CH452A采用4线串行连接方式与单片机进行通信。矩阵键盘原理:单片机从CH452获取按键代码的过程如下图3所示:图3 获取按键代码的过程 输出一位数据,即向DIN输出读取按键代码命令的最低位数据B0,并向DCLK输出低电平脉冲; 以同样的方式,输出读取按键代码命令的位数据B1B11; 向LOAD 输出低电平脉冲,其中包括一个上升沿使CH452 加载串行数据,CH452 分析出是读取按键代码命令,立即在DOUT 输出按键代码的最高位数据K6; 读取一位数据,即从DOUT 输入按键代码的最高位数据K6,并向DCLK 输出低电平冲; 以同样的方式,输入按键代码的位数据K5K0。上述获取按键代码的过程转化为软件程序如下:/输入按键代码子程序,从CH452读取unsigned char Key_Read( void ) unsigned char i; unsigned char keycode;/定义命令字,和数据存储器 Send_Command(CH452_GET_KEY); keycode=0; /清除keycode for(i=0;i!=7;i+)keycode=1; /数据移入keycode,高位在前,低位在后if (P2IN&BIT0) keycode+; /从高到低读入452的数据 DCLK_0; /产生时钟上升沿通知CH452输出下一位 DCLK_1; return(keycode); /返回键值 下面举例说明:(1)由于硬件连接方式如下所示: DCLK P2.3 DIN P2.2 LOAD P2.0所以按键中断用到的是P2口的中断且为下降沿中断,当按下某一按键(如K0)执行任务TASK时,则只需将上述接收按键代码的函数Key_Read( void );放置在P2口中断,当接收到的代码为40H时,则说明按键K0被按下,此时执行任务TASK,可参见基础程序检测程序。(2)当某一按键按下,具体返回的代码值是多少,取决于该按键的硬件连接,即看该按键与CH452A的哪两个引脚相连接,对应值参见下表1:表1 按键对应编码表说明:,CH452 所提供的实际按键代码是表中的按键编码加上40H。数码管显示原理:单片机通过4线串行接口向CH452发送12位数据的过程如下图4所示:图4 单片机向CH452发送数据 输出一位数据,即向DIN 输出最低位数据B0,并向DCLK输出低电平脉冲(从高电平变为低电平再恢复为高电平),其中包括一个上升沿使CH452 输入位数据; 以同样的方式,输出位数据B1B11; 向LOAD 输出低电平脉冲,其中包括一个上升沿使CH452 加载串行数据。上述发送数据的过程转化为软件程序如下:/发送命令void Send_Command(unsigned cmd)/MSP430单片机向CH452发送命令,Command为12位数据 unsigned char i; LOAD_0; for(i=0;i!=12;i+)/送入12位数据,低位在前if (cmd&1) DIN_1;else DIN_0; / 输出位数据 DCLK_0 ; cmd=1; DCLK_1 ; /上升沿有效 LOAD_1; Delay(1000); 数码管的显示方式可分为两种:(1)指定某位数码管显示某一具体数字,如让第0位数码管显示数字0,对应程序为Send_Command(Dis00);可参见基础程序检测程序。(2)让数码管显示某一不确定的多位数,可参见拓展程序简易计算器中的函数void Display(unsigned int data);五、实验注意事项(1)在退出下载环境,对该模块进行操作时,一定要先按一下复位键;(2)在将矩阵键盘和数码管模块及msp430LaunchPad插到主板上时,一定要确保主板电源断开;(3)在将模块旁边的拨码开关打开时确保主板电源处于断开状态。六、思考题(1)由于本模块只是实验板的一个组成部分,并非用作专门的计算器,所以只进行4位非负
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年江苏省扬州市中考语文试卷及答案
- 2025年仿制药一致性评价对药品生产设备更新的推动报告
- 元宇宙社交平台虚拟社交互动体验优化与用户粘性提升策略
- 国际教育咨询服务在中国的发展现状与竞争格局研究报告2025版
- 财富管理行业数字化转型:金融科技如何优化客户服务体验报告
- 科技与互联网融合下的互联网金融服务风险控制技术体系构建报告
- 深度解读2025年制造业数字化转型数据治理战略与实施
- 护理礼仪与人际沟通教学课件第九章护理工作中的人际沟通
- 核酸耗材运送管理制度
- 担保公司抵押物管理制度
- 2025年广西公需科目答案02
- 湖南省首届财会知识大赛现场考试题库(含各题型)
- 第五课古典芭蕾(芭蕾舞鼎盛时期)
- 中小学生肥胖调查表
- 胃癌HER2判读及评分课件
- 学校机房网络规划与设计
- 中储粮警示教育心得体会三篇
- 船用空调电气控制系统简介课件
- 2009-2022历年河北省公安厅高速交警总队招聘考试真题含答案带详解2022-2023上岸资料汇编3
- 遥控器检验作业指导书
- 建筑工人实名制管理及农名工工资支付有关事项流程图
评论
0/150
提交评论