当前位置:首页 >> 信息与通信 >>

MSP430单片机 矩阵键盘与数码管实验(附原理图)


MSP430单片机 矩阵键盘与数码管实验(附原理图) 单片机 矩阵键盘与数码管实验(附原理图)
/************************************************************* *MSP430单片机矩阵键盘与数码管实验 *功能:用共阳极数码管显示按键的键值 *适用:MSP430各系列单片机 *by:duyunfu1987 *************************************************************/ #include "msp430x44x.h" #define ROW P2OUT //矩阵键盘的行宏定义 #define COL P2IN //矩阵键盘的列宏定义 #define DPYOUT P3OUT //数码管输出口宏定义 unsigned char keyval; //键值 //共“阳”极数码管的码表 unsigned char LED7CA[] ={~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~0x7D, ~0x07,~0x7F,~0x6F,~0x77,~0x7C,~0x39,~0x5E,~0x79,~0x71,0xff}; /******************************************************* *函数名称:keyscan() 能:扫描4*3矩阵键盘,并返回键值 *功 *出口参数:若有按键则返回键值,若无按键返回15 *4*3矩阵键盘: 0 1 2 3 * 4 5 6 7 * 8 9 A b *******************************************************/ unsigned char keyscan() { int i=0; unsigned char key=0; ROW = 0x8f; //先置三行输出低电平 if((COL & 0x0f)!= 0x0f) //是否有按键 { do i++; while(i<3000); //消抖动延时 ROW = 0xbf; //扫描第一行 if((COL & 0x0f)== 0x0f) { ROW = 0xdf; //扫描第二行 if((COL & 0x0f)== 0x0f) { ROW = 0xef; //扫描第三行 if((COL & 0x0f)== 0x0f) key = 15; else key = ~((ROW & 0XF0)|(COL & 0X0F)); } else key = ~((ROW & 0XF0)|(COL & 0X0F));

} else key = ~((ROW & 0XF0)|(COL & 0X0F)); if(key != 15) switch(key) //获取有效地键值 { case 0x48: key=0; break; case 0x44: key=1; break; case 0x42: key=2; break; case 0x41: key=3; break; case 0x28: key=4; break; case 0x24: key=5; break; case 0x22: key=6; break; case 0x21: key=7; break; case 0x18: key=8; break; case 0x14: key=9; break; case 0x12: key=10;break; case 0x11: key=11;break; default: key=15; } } else key = 15; keyval=key; return key; } void main( void ) { // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD; P3DIR |= 0xff; P3OUT = 0xff; //共阳极数码管输出口初始化 P2DIR |= BIT4 +BIT5+BIT6; //先配置矩阵键盘的行(输出) //P2.6 第一行,P2.5 第二行,P2.4 第三行 //P2.3 第一列,P2.2 第二列,P2.1 第三列,P2.0 第四列 keyval=16; while(1) { keyscan(); if(keyval != 15 && keyval<17) DPYOUT = LED7CA[keyval];//数码管显示键值 } }



相关文章:
430单片机实验报告
实验二 4X4 矩阵键盘和数码管显示实验 一、 实验名称 4X4 矩阵键盘和数码管...问题分析 简述信号发生器原理: 本系统采用 MSP430 单片机为控制核心,利用单片机内置...
44矩阵键盘实验培训报告
44矩阵键盘实验培训报告_电子/电路_工程科技_专业资料。基于msp430g2553的4*4矩阵键盘数码管显示电路,附原理图和PCB,暑期实验室培训报告 ...
基于msp430上的矩阵键盘
4*4 矩阵键盘采用 MSP430 单片机为核心,主要由...(仿真软件),从原理图布图、代码调试到单片机外 ...数码显示管会对应显示出 0~f 共 16 个数字 图 ...
矩阵键盘显设计报告
综上所述:由于本实验需要较快的键盘扫描速度,而 MSP430G2553 单片机的扫 描...74HC573 芯片具有延时作用,其输出接 LED 数码管的输入,其原理图见附录一。 2...
基于单片机的LED数码管实验设计程序(附电路原理图)
基于单片机的LED数码管实验设计程序(附电路原理图)_电子/电路_工程科技_专业资料。这次在以前的基础上加上了详细的注视,大家继续努力!今日...
按键控制数码管和流水灯设计报告实验报告
MSP430F149实现的数码管和流水灯1 摘要单片机自20世纪70年代以来,以其极高的...复位原理图 4、按键部分4 5 4.1 键盘的结构形式一般有独立式键盘和矩阵式键盘...
MSP430单片机-实验(任务书 )
MSP430单片机 矩阵键盘与... 3页 免费 重大光电MSP...《嵌入式系统》实验报告 IAR Embedded Workbench IDE...MSP430 单片机最小系统流水灯、键盘、数码管程序设计...
基于msp430单片机的时钟设计
基于msp430单片机的时钟设计_工学_高等教育_教育专区...14 4.4.1 LED 数码管的结构与工作原理 ... 14 ...用4*4矩阵键盘进行输入;在时间的显示上介绍了两种方法...
LCD显示
MSP430 单片机专用周 2周 陈墨 单片机实验室 指导教师 : 实验一:矩阵键盘及数码...由下图可知在数码管上可依次显示数字 0~15 电原理图: 3.代码中主要的函数...
实验五 矩阵式键盘按键值的数码管显示
实验五 矩阵式键盘按键值的数码管显示_理学_高等教育...MSP430单片机 矩阵键盘与... 3页 免费 数码管显示...4×4矩阵键盘的工作原理... 5页 免费©...
更多相关标签: