MSP430x14x系列单片机程序实例(10)
delay_ms(5); LCD_write_com(0x01); delay_ms(5);
LCD_write_com(0x06); delay_ms(5);
//显示清屏 //显示光标移动设置
LCD_write_com(0x0C); //显示开及光标设置 delay_ms(5); }
//*********************************************************************** // 主函数
//*********************************************************************** void main(void) {
unsigned char temp;
WDT_Init(); //看门狗初始化 Clock_Init(); //时钟初始化
Port_Init(); //端口初始化,用于控制IO口输入或输出
Close_LED(); //关闭LED数码管,避免显示乱码 delay_ms(200);
LCD_init(); //1602液晶初始化 DS1302_init(); //DS1302初始化 delay_ms(10);
DS1302_write_time(); //向DS1302写初始数据,如年月和时间等
while (1) {
delay_ms(200);
DS1302_read_time(); //读DS1302数据 temp = (time_buf[0] >> 4) + '0'; //在LCD上写要显示的数据 LCD_write_char(0, 0, temp);/*年*/ temp = (time_buf[0] & 0x0F) + '0'; LCD_write_char(1, 0, temp); temp = (time_buf[1] >> 4) + '0'; LCD_write_char(2, 0, temp); temp = (time_buf[1] & 0x0F) + '0'; LCD_write_char(3, 0, temp); LCD_write_char(4, 0, '-');
temp = (time_buf[2] >> 4) + '0';
LCD_write_char(5, 0, temp);/*月*/ temp = (time_buf[2] & 0x0F) + '0'; LCD_write_char(6, 0, temp);
LCD_write_char(7, 0, '-');
temp = (time_buf[3] >> 4) + '0';
LCD_write_char(8, 0, temp);/*日*/ temp = (time_buf[3] & 0x0F) + '0'; LCD_write_char(9, 0, temp);
temp = (time_buf[4] >> 4) + '0'; LCD_write_char(8, 1, temp);/*时*/ temp = (time_buf[4] & 0x0F) + '0'; LCD_write_char(9, 1, temp); LCD_write_char(10, 1, ':');
temp = (time_buf[5] >> 4) + '0';
LCD_write_char(11, 1, temp);/*分*/ temp = (time_buf[5] & 0x0F) + '0'; LCD_write_char(12, 1, temp); LCD_write_char(13, 1, ':');
temp = (time_buf[6] >> 4) + '0';
LCD_write_char(14, 1, temp);/*秒*/ temp = (time_buf[6] & 0x0F) + '0'; LCD_write_char(15, 1, temp); } }
12、INFRARED-遥控器红外一体化解码测试程序
/********************************************************************
//DM430-A型开发板红外遥控器解码程序,对遥控器按键进行识别,然后将键值显示到数码管上
//红外遥控器为NEC编码格式,38K调制,解码时直接读取键值,用户码00FF
//由于采取的是IO电平直接判断方式读取,会有不稳定的现象,按键时频率不要过快 ********************************************************************/
#include
#include \ //开发板配置头文件,主要配置IO端口信息
//*********************************************************************** // 遥控器键码
//***********************************************************************
#define KEY_0 0x16 //键0 #define KEY_1 0x0C //键1
#define KEY_2 0x18 //键2 #define KEY_3 0x5E //键3 #define KEY_4 0x08 //键4 #define KEY_5 0x1C //键5 #define KEY_6 0x5A //键6 #define KEY_7 0x42 //键7 #define KEY_8 0x52 //键8 #define KEY_9 0x4A //键9 #define KEY_POWER 0x45 //电源 #define KEY_MODE 0x46 //模式 #define KEY_SOUND 0x47 //静音
#define RED_IN P1DIR &= ~BIT3 //设置输入,红外接收头接单片机PE3口 #define RED_OUT P1DIR |= BIT3 //设置输出 #define RED_L P1OUT &= ~BIT3 //置低电平 #define RED_H P1OUT |= BIT3 //置高电平 #define RED_R (P1IN & BIT3) //读电平
uchar KEY_VAL=0; uchar code_value=0; uchar key_code[4];
//*********************************************************************** // MSP430IO口初始化
//*********************************************************************** void Port_Init() {
LED8SEL = 0x00; //设置IO口为普通I/O模式,此句可省 LED8DIR = 0xFF; //设置IO口方向为输出 LED8PORT = 0xFF; //P2口初始设置为FF
DATASEL = 0x00; //设置IO口为普通I/O模式,此句可省 DATADIR = 0xFF; //设置IO口方向为输出 DATAPORT = 0xFF; //P4口初始设置为FF
CTRSEL = 0x00; //设置IO口为普通I/O模式,此句可省 CTRDIR |= BIT3 + BIT4; //设置IO口方向为输出,控制口在P63,P64 CTRPORT = 0xFF; //P6口初始设置为FF
P6SEL = 0x00; //设置IO口为普通I/O模式,此句可省 P6DIR |= BIT2; //设置P62方向为输出 P6OUT = 0xFF; //P6口初始设置为FF
RED_L; RED_IN; }
//************************************************************************* // 遥控器键值赋功能值子程序
//************************************************************************* void Key_Icode(void) {
switch(key_code[2]) //第3个字节是数据,第4个字节是反码 { //为了更稳定,可以加上第4个字节数据的判断
case KEY_0:KEY_VAL=0;break; case KEY_1:KEY_VAL=1;break; case KEY_2:KEY_VAL=2;break; case KEY_3:KEY_VAL=3;break; case KEY_4:KEY_VAL=4;break; case KEY_5:KEY_VAL=5;break; case KEY_6:KEY_VAL=6;break; case KEY_7:KEY_VAL=7;break; case KEY_8:KEY_VAL=8;break; case KEY_9:KEY_VAL=9;break; default:KEY_VAL=10;break; } }
//************************************************************************* // 74HC573控制数码管动态扫描键值显示 …… 此处隐藏:2982字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [法律文档]苏教版七年级语文下册第五单元教学设计
- [法律文档]向市委巡视组进点汇报材料
- [法律文档]绵阳市2018年高三物理上学期第二次月考
- [法律文档]浅析如何解决当代中国“新三座大山”的
- [法律文档]延安北过境线大桥工程防洪评价报告 -
- [法律文档]激活生成元素让数学课堂充满生机
- [法律文档]2014年春学期九年级5月教学质量检测语
- [法律文档]放射科标准及各项计1
- [法律文档]2012年广州化学中考试题和答案(原版)
- [法律文档]地球物理勘查规范
- [法律文档]《12系列建筑标准设计图集》目录
- [法律文档]2018年宁波市专技人员继续教育公需课-
- [法律文档]工会委员会工作职责
- [法律文档]2014新版外研社九年级英语上册课文(完
- [法律文档]《阅微草堂笔记》部分篇目赏析
- [法律文档]尔雅军事理论2018课后答案(南开版)
- [法律文档]储竣-13827 黑娃山沟大开挖穿越说明书
- [法律文档]《产品设计》教学大纲及课程简介
- [法律文档]电动吊篮专项施工方案 - 图文
- [法律文档]实木地板和复合地板的比较
- 探析如何提高电力系统中PLC的可靠性
- 用Excel函数快速实现体能测试成绩统计
- 教师招聘考试重点分析:班主任工作常识
- 高三历史选修一《历史上重大改革回眸》
- 2013年中山市部分职位(工种)人力资源视
- 2015年中国水溶性蛋白市场年度调研报告
- 原地踏步走与立定教学设计
- 何家弘法律英语课件_第十二课
- 海信冰箱经销商大会——齐俊强副总经理
- 犯罪心理学讲座
- 初中英语作文病句和错句修改范例
- 虚拟化群集部署计划及操作流程
- 焊接板式塔顶冷凝器设计
- 浅析语文教学中
- 结构力学——6位移法
- 天正建筑CAD制图技巧
- 中华人民共和国财政部令第57号——注册
- 赢在企业文化展厅设计的起跑线上
- 2013版物理一轮精品复习学案:实验6
- 直隶总督署简介




