单片机应用及系统胡霆计

单片机应用及系统胡霆计

ID:31720266

大小:149.50 KB

页数:11页

时间:2019-01-17

单片机应用及系统胡霆计_第1页
单片机应用及系统胡霆计_第2页
单片机应用及系统胡霆计_第3页
单片机应用及系统胡霆计_第4页
单片机应用及系统胡霆计_第5页
资源描述:

《单片机应用及系统胡霆计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.单片机应用及系统计——基于MSP430的简易乘法器院系:自动化学院指导老师:吴益飞姓名:胡霆学号:0610200120同组成员:孙佳聂敏华时间:2009-4-25...基于MSP430的简易乘法器胡霆0610200120(南京理工大学自动化学院06102001班)引言:本次设计主要是利用实验箱的硬件资源实现简单的乘法器功能,由于显示的LED灯的限制,这里只能完成三位数的乘法运算。在程序运行的过程中,可以利用实验板的按键输入所需要运算的数和符号,在此之前这些数和符号已经在程序中定义了。然后MSP430经运算以后,最后按下等于号之后结果会从高到低显示到LED上。其中的键盘和LED已

2、经集成在了实验板上,用到的时候只需要做相应的端口定义即可。关键词:MSP430乘法器键盘LED问题描述:此功能主要由两大模块组成,一个是键盘输入模块,一个是个LED显示模块,必须要各个模块的功能定义程序中说明好每个键盘的功能,才能和对应的按键对应起来。此外在编程时应该注意硬件乘法器所需要的一些寄存器,比如MPY,MPYS,MAC,MACS,OP2,RESLO,RESHI,SUMEXT.然后在主程序中,集成两大模块的功能,使之协调工作,程序运行后,行列扫描键盘工作,有按键按下时按键的键值显示到LED。最后在MSP430中进行运算以后,把运算结果也送给显示电路,则完成了整个运算过程主

3、程序中要注意如下的定义:行列键盘的“#”对应键值为A,“*”对应键值为B。可以用如下的系统框图表示硬件乘法器的逻辑组成:MSP430单片机LED显示键盘输入...问题解决:●键盘输入模块:本实验采用行列式键盘的设计。键盘的硬件接线图如下;由于本次试验所需要的键盘按键不是很多,因此采用3*4的格局就可以了。列键分别由上拉电阻上拉到与VCC相连接。在行线与列线的每一个交界处都有一个按键,按键的A,B,端分别接再在行端和列端。键盘电路工作时,首先会扫描判断有没有兼按下,如果有,则与之相连的行键和列键被连通,在检测是否有键按下时,首先使三条行线输出低电平,读列线。列线输出非全1.按键抖动

4、的消除可以使用硬件和软件办法,软件方法比较容易些。即采用软件延时,在检测到一个有效信号后,延时一段时间在进行检测,如果还有信号,则这个信号就是有效信号。对键盘的编程可参见下面的源程序。...●LED显示模块如下是本实验板上所用的LED硬件原理图:由图可以看到,LED显示由74HC373锁存,然后用P3.0~P7..0分别控制LED和显示段码和位选。(1)显示代码的输出P3.0~P3.7分别对应LED的e,d,dp,c,g,b,f,a.当P4.1为高时,U5选通,P3口的数据经过U5输出到LED,当P4.1为低电平时,U5处于数据锁存状态。此时不管P3口如何变化,1Q~8Q数据保持

5、不变.(2)位选的输出LED的现实代码编号如下:0——7BH1——12H2——4FH3——7FH4——36H5——3DH6——7DH7——1BH8——7FH9——3FHP3.0~P3.5为位选信号,分别对应D0~D5.其工作原理与显示代码的原理一样。具体编程可参见源程序。●系统程序/键盘模块程序:/#ifndefMSP430F449_H#include#endif...#defineKEY_BOARD1unsignedcharkey_Pressed;//是否有键值按下key_val;//存放键值key_Flag;//是否一个按下的按键已经松开,//即是

6、按键的键值可以读取unsignedcharkey_Map[12]={//设置键盘逻辑键值与程序计算键值的映射1,2,3,10,4,5,6,0,7,8,9,11//10为=0就是011为乘号};/*********************************************************初始化键盘设备********************************************************/voidinit_Keyboard(void){P1DIR&=0x01;//P1.4~P1.7设置为输入模式P1DIR

7、=0x0E;//setp1.1

8、~p1.3设置为输出模式P1OUT

9、=0x0E;//p1.1~p1.3输出值清零key_Flag=0;//初始化key_Flagkey_Pressed=0;//初始化key_Pressed}/**********************************************Check_Key(),检查按键,确认键值*********************************************/voidcheck_Key(void){unsignedcharr

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。