单片机课程实训报告.doc
《单片机课程实训报告.doc》由会员分享,可在线阅读,更多相关《单片机课程实训报告.doc(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、山 东 工 商 学 院SHANDONG INSTITUTE OF BUSINESS AND TECHNOLOGY单片机课程实训SCM PRACTICAL TRAINING实训设计题目Title Of Training 学校学生生活时间提示系统 分院(系别)Department 信息与电子工程学院 专业Speciality 电科 班 级Class2010级1班设计作者Author 钱书元 胡双完成日期Date2013年 6月25日组 别Team 1 指导教师Advisor 张 岩目 录第一部分 课程设计任务书1一、课程设计题目1二、课程设计时间1三、课程设计提交方式1四、设计要求1第二部分 课程
2、设计报告2一、单片机发展简史2二、MCS-51单片机系统简介2三、设计思路2四、硬件设计电路2五、软件设计流程2六、程序源代码2七、结束语2八、参考文献2第一部分 课程设计任务书一、课程设计题目学校学生生活时间提示系统二、课程设计时间一周三、课程设计提交方式提交打印课程设计报告四、设计要求第二部分 课程设计报告一、单片机发展概况第一阶段19741978初级单片机阶段典型的产品有Intel公司的MCS48系列。这个系列的单片机在片内集成了8位CPU、并行I/O端口、8位定时/计数器、64B或128B的RAM、1KB或2KB的ROM等,无串行接口,寻址范围4K。第二阶段19781983高性能单片机
3、阶段这个阶段以MCS51为代表,这个阶段的单片机均带有串行I/O口,具有多处中断处理系统,定时/计数器为16位,片内RAM和ROM容量相对增大,且寻址范围可达64K.这类单片机的应用领域极其广泛,由于其优良的性价比,在我国得到广泛的使用。第三阶段1983年至今8位单片机巩固完善及16位发展阶段16位单片机工艺先进,集成度高,内部功能强,运算速度快,而且允许用户采用面向工业控制的专用语言。片内包括了16位的CPU,8KB的ROM、256B的RAM、具有串并行接口、4个16位的定时器/计数器、8个中断原、还有看门狗、还增加了D/A 和A/D转换电路,片外寻址范围可达64KB。二、MCS-51单片机
4、系统简介 单片微型计算机,简称单片机,就是将微处理器,存储ROM和RAM、定时器/计数器、中断系统输入输出接口、总线和其他多功能器件集成在一片芯片上的微型计算机。又成为嵌入式微处理器。主要特点如下。(1)可靠性高(2)便于扩展(3)控制功能强(4)低电压、低功耗(5)片内存储容量较小MCS51单片机是世界上用量最大的单片机之一。目前,MCS51单片机主要由Philips、三星。华邦等公司生产。这些公司都在保持与MCS51单片机兼容的基础上改善了许多特性,提高了速度,降低了时钟频率,放宽了电源电压的动态范围,降低了产品价格。MCS51系列单片机目前仍是应用的主流之一,主要包括8031、8051、
5、8751、89C51和89S51等通用产品。三、设计思想(1)计时和显示功能(24 小时制),包括时、分、秒的显示。 (2)通过按键设置当前时间(时、分)。 (3)实现基本学生生活时间提示,规定如下: 06:00 起床:声音提示 5 秒、停 2 秒、再提示 5 秒。 22:30 熄灯:声音提示 5 秒、停 2 秒、再提示 5 秒。四、硬件电路设计五、软件设计框图飒沓开始Lcd初始化时间初始化显示欢迎界面判断是否有按键按下Yes修改什么修改时间修改闹时开关闹钟调用时间修改时间函数NO调用时间修改函数修改ri_con调用功能函数闹钟,作息提示整点报时再按控制键结束六、程序源代码#include #
6、include #include typedef unsigned char BYTE;typedef bit BOOL; /=50 秒 全局时间 = unsigned char time50 ; BYTE second=0,minute=0,hour=6; BYTE CON_STA=0; /当前状态/=使用引脚定义=sbit led_work = P23 ;sbit led_button = P24 ;sbit led_clock = P25 ;sbit button_CON = P26 ;sbit button_ADD = P27 ;sbit button_DEC = P30 ;sbit
7、button_COLCK =P31 ;/=lcd=引脚定义sbit LCD_RS = P20; sbit LCD_RW = P21;sbit LCD_EP = P22;BYTE code welcome = WELCOME;BYTE code designer = =qian & hu=;BYTE code time = change time ;delay(int ms) / 延时子程序int i;while(ms-) for(i = 0; i=30)return 5;else return 1; /长按键,进入时钟修改模式 else if(button_ADD=0) while(butto
8、n_ADD=0)button_ADD=1;_nop_(); /等待按键松开 return 2; else if(button_DEC=0) while(button_DEC=0)button_DEC=1;_nop_(); /等待按键松开 return 3; else if(button_COLCK=0) while(button_COLCK=0)button_COLCK=1;delay(10);i+; /等待按键松开 if(i=30)return 6;else return 4; /长按键,进入时钟修改模式 else return 0;return 0;/=时间设置/*void modify(
9、 BYTE *minute ,BYTE *hour,BYTE *ri_minute,BYTE *ri_hour,BYTE *ri_con) BYTE key=0,con=1, who_temp8=M_ho,command=0; /键值 控制键的按下次数 控制变量 操作 str_display(who_temp ,0,1); /跳过上一次的按键dokey=push_buttom(); while(key=1); while(1) str_display(who_temp ,0,1);dokey=push_buttom(); while(key=0); /等待获取按键 switch(key) ca
10、se 1: con+;break; /修改分钟 case 2 : if(con=1)hour+;else if(con=2)minute+;else if(con=3) ri_hour+;else ri_minute+;break; case 3: if(con=1)hour-;else if(con=2)minute-;else if(con=3) ri_hour-;else ri_minute-;break; case 4: lcd_wcmd(0x01); ri_con=ri_con; if(ri_con)str_display(ring is work ,0,1);else str_di
11、splay(ring is work ,0,1); /取反未解决 default : break; switch(con) /得到控制对象 case 2 : who_temp2=m;who_temp3=i;break; case 3: who_temp2=r;who_temp3=h;break; case 4: who_temp2=r;who_temp3=m;break; default : str_display(end,0,1); break; if(con=5) break; /1 hour 2 minute 3 ri_hour 4 ri_minute 5 break */ /=时间设置
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程 报告
限制150内