




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式系统应用技术基础实验报告(一)基于PD78F0485单片机的流水灯音乐盒设计与实现专业: 软件工程 班级: 2009 学号: 2009242012 姓名: 霍海洋 1. 设计环境及使用工具1.1 设计环境:PC机、瑞萨EZ/EM-1仿真器、程序下载及仿真调试电缆、PC机到仿真器的USB通信线。1.2 使用工具:NEC upd78F0485单片机。2. 需求分析当前,在世界范围内,一个以微电子技术,计算机的通讯技术为先导的,一信息技术及信息产业的信息革命时期。而计算机技术怎样与实际应用更有效的结合并有效地发挥其作用是科学界最热门的话题,也是当今计算机应用中空前活跃的领域。本文主要从计算机的应用上来实现流水灯加蜂鸣器的音乐盒。3. 设计方案设计一个电路,在uPD78F0485单片机的P40/KR0P45/KR5引脚上各连接1个按键,即KEY1-KEY6;在P30-P33、P40-这43、P50-P53引脚上连接12个LED灯,即LED1-LED2.在P33/BUZ引脚上连接一个蜂鸣器。编写程序实现按键控5种不同的流水灯(LED灯亮、灭闪烁)显示方案,并且伴随蜂鸣器的声音,每次灯闪、灯灭蜂鸣器换种频率,如果在显示某种方案的过程中有按键探马下,则会中断现在的方案,进入所按下按键所设定的方案进行显示。4. 程序设计(包括程序流程图)开始声明全局变量gFlag, gModel定义软件延时函数void delay();定义与中断有关的函数void InitKey_INTKR();_interrrupt void OnKeyPress(void);定义5种模式Scheme0-Scheme5执行主函数不同的按键中断实现不同方案结束图4.1 程序流程图5. 操作说明1.按下Key1键进入第一种模式,P13.1到P13.0的12个LED灯顺时针方向依次点亮,所有灯点亮之后,12个LED灯依次熄灭,如没有按键按下,则一直循环下去。中间伴随蜂鸣器的声音。2.按下Key2键进入第二种模式,P13.1到P13.0的12个LED灯逆时针方向依次点亮,所有灯点亮之后,12个LED灯依次熄灭,如没有按键按下,则一直循环下去。中间伴随蜂鸣器的声音。3.按下Key3键进入第三种模式,12个小灯按照红,绿,黄的顺序点亮,每次亮四个灯(即同一时刻只有一种灯亮),如没有按键按下,则一直循环下去。中间伴随蜂鸣器的声音。4.按下Key4键进入第四种模式,12个小灯按照方位,由北,东,南,西的顺序依次闪烁,每次亮三个灯,如果延时过小,则有可能看起来像一条线条流动,如没有按键按下,则一直循环下去。中间伴随蜂鸣器的声音。5.按下Key5键进入第五种模式,12个小灯按照对角线,由P13.3和P15.1开始(两个灯同时点亮),顺时针方向依次点亮,并按照这种方式,逆时针依次熄灭,如没有按键按下,则一直循环下去。中间伴随蜂鸣器的声音。6.按下Key6键不管运行的哪种模式,按下KEY6键,程序立刻中止。表5.1 操作对照表6. 设计中遇到的主要问题及解决办法问题原因解决方法1.程序运行开始,还没有任何按键中断响应,已经按照某种方案执行。按键中断服务函数中的闪亮模式(变量)与按键不对应,并与主函数的switch函数的变量不统一。将两个函数中的变量值修改成对应模式。2.程序开始,第一次按下任何中断键,都能按照对应模式执行,但是一旦开始,就只能按照某种模式执行,不能响应中断。程序问题,在每种模式中,一旦执行开始之后,就进入死循环,while(1),导致模式不能响应中断。由于按下中断键之后gFlag的值由1变成0,因此可以将while中的循环变量设为gFlag,如果没有按键响应,gFlag为1,则循环执行,若有按键响应,gFlag为0,循环得以结束,执行另一种模式。 3.按键中断响应之后,只能等上次方案执行完成,才能进入下一种模式。由于gFlag中的值在while循环变量中,即使有按键中断,gFlag的值变为0,也需程序执行室外一次,才能判断循环。暂末解决。表6.1 问题及对应解决方案7. 总结及展望随着微控技术的日益完善和发展,单片机的应用在不断走向深入。它的应用比定导致传统的控制技术从根本上发生变革。也就是说单片机应用的出现是对传统控制技术的革命。它在工业控制、数据采集、智能化仪表、机电一体化、家用电器等领路得到了广泛应用,极大的提高了这些领域的技术水平和自动化控制。因此单片机的开发应用已成为高技术工程领域的一项重大课题。因此了解单片机知识,掌握单片机的应用技术具有重大的意义。8. 程序清单8.1 引入、函数声明和初始化变量:#pragma sfr#pragma NOP#pragma DI#pragma EI#pragma interrupt INTKR OnKeyPressvoid delay();void InitKey_INTKR(void);unsigned char gModel = 0;unsigned char gFlag = 1;8.2 软件延时函数:void delay(int k)int i,j;for(i = 0; i k; i+)for(j = 0;j k; j+ );8.3 蜂鸣器调用:void a(int m)switch(m)case 1:CKS=0x80; case 2:CKS=0xA0;case 3:CKS=0xC0;case 4:CKS=0xE0;void b()BZOE=0; 8.4按键中断初始化函数:void InitKey_INTKR(void)PM4 = 0x3F;PU4 = 0x3F;KRM = 0x3F;KRMK = 0;8.4 按键中断服务函数:_interrupt void OnKeyPress(void)DI();gFlag = 0;switch(P4&0x3F)case 0x3E: gModel = 1; break;case 0x3D: gModel = 2; break;case 0x3B: gModel = 3; break;case 0x37: gModel = 4; break;case 0x2F: gModel = 5; break;case 0x1F: gModel = 6; break;default:break;EI();8.5 模式1-5:8.5.1 第一种模式:void Scheme_0(void) while(gFlag)P13.1=1;a(1);delay(70);b();P13.2=1;a(3);delay(70);b();P13.3=1;a(2);delay(70);b();P14.0 = 1;a(2);delay(70);b(); P14.1=1;a(4)delay(70);b();P14.2=1a(3);delay(70);b();P14.3 =1;a(3);delay(70);b();P15.0 =1;a(2);delay(70);b();P15.1=1;a(2);delay(70);b();P15.2 = 1;a(4);delay(70);b();P15.3 =1;a(3);delay(70);b(); P13.0=1;a(4);delay(70);b();P13.1 =0;a(3);delay(70);b();P13.2=0;a(1);delay(70);b();P13.3=0;a(2);delay(70);b();P14.0=0;a(2);delay(70);b();P14.1=0;a(4);delay(70);b();P14.2=0;a(3);delay(70);b();P14.3=0;a(1);delay(70);b();P15.0=0;a(2);delay(70);b();P15.1=0;a(1);delay(70);b();P15.2=0;a(4);delay(70);b();P15.3=0;a(1);delay(70);b();P13.0=0;a(3);delay(70);b(); 8.5.2第二种模式:void Scheme_1(void) while(gFlag) P13.1=1;a(1);delay(70);b();P13.0=1;a(2);delay(70);b();P15.3=1;a(4);delay(70);b();P15.2=1;a(3);delay(70);b();P15.1=1;a(1);delay(70);b();P15.0=1;a(3)delay(70);b();P14.3=1;a(1);delay(70);b();P14.2=1;a(3);delay(70);b();P14.1=1;a(4);delay(70);b();P14.0=1;a(3);delay(70);b();P13.3=1;a(1);delay(70);b();P13.2=1;a(3);delay(70);b();P13.1=0;a(1);delay(70);b();P13.0=0;a(3);delay(70);b();P15.3=0;a(2);delay(70);b();P15.2=0;a(1);delay(70);b();P15.1=0;a(2);delay(70);b();P15.0=0;a(3);delay(70);b();P14.3=0;a(3);delay(70);b();P14.2=0;a(1);delay(70);b();P14.1=0;a(2)delay(70);b();P14.0=0;a(2);delay(70);b();P13.3=0;a(2);delay(70);b();P13.2=0;a(3);delay(50);b();8.5.3第三种模式:void Scheme_2(void) while(gFlag) P13.0=1;P13.3=1;P14.2=1;P15.1=1;a(2);delay(70); b();P13.0=0;P13.3=0;P14.2=0;P15.1=0;a(3);delay(70); b();P13.1=1;P14.0=1;P14.3=1;P15.2=1;a(1)delay(70); b();P13.1=0;P14.0=0;P14.3=0;P15.2=0;a(4);delay(70); b();P13.2=1;P14.1=1;P15.0=1;P15.3=1;a(2);delay(70); b();P13.2=0;P14.1=0;P15.0=0;P15.3=0;a(1);delay(70); b();8.5.4第四种模式:void Scheme_3(void) while(gFlag) P13.0=1;P13.1=1;P13.2=1;a(2);delay(50);b();P13.0=0;P13.1=0;P13.2=0;a(3);delay(50);b();P13.3=1;P14.0=1;P14.1=1;a(1);delay(50);b();P13.3=0;P14.0=0;P14.1=0;a(4);delay(50);b();P14.2=1;P14.3=1;P15.0=1;a(2);delay(50);b();P14.2=0;P14.3=0;P15.0=0;a(3);delay(50);b();P15.1=1;P15.2=1;P15.3=1;a(2);delay(50);b();P15.1=0;P15.2=0;P15.3=0;a(1);delay(50);b();8.5.5第五种模式:void Scheme_4(void) while(gFlag)P13.0=1;P14.2=1;a(2);delay(70);b();P13.1=1;P14.3=1;a(4)delay(70);b(); P13.2=1;P15.0=1;a(3);delay(70);b();P13.3=1;P15.1=1;a(1);delay(70);b(); P14.0=1;P15.2=1;a(4);delay(70);b();P14.1=1;P15.3=1;a(3);delay(70);b(); P13.0=1;P14.2=1;a(2);delay(70);b();P13.1=1;P14.3=1;a(1);delay(70);b(); P13.2=1;P15.0=1;a(3);delay(70);b();P13.3=1;P15.1=1;a(2);delay(70);b(); P14.0=1;P15.2=1;a(4);delay(70);b();P14.1=1;P15.3=1;a(2);delay(70);b();8.6 主函数:void main()P13 = 0; PM13 = 0x00; P14 = 0; PM14 = 0x00;P15 = 0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【地理】吉林省吉林市2023-2024学年高一下学期期末考试题(解析版)
- 油乳制备工招聘考核试卷及答案
- 知识产权运营模式分析报告
- 无人机装调检修工协作考核试卷及答案
- 蛋糕装饰师工艺考核试卷及答案
- 茶园管理员专项考核试卷及答案
- 音响组合音效提升策略分析报告
- 非金属船舶疲劳试验数据分析报告
- 高中物理知识体系及能力提升方案
- 手机资费套餐选择教学设计方案
- 2025至2030中国方竹笋市场经营方向与竞争格局分析报告
- 2025年人教版三年级数学上册《混合运算》教案
- 2025医用眼科器械消毒处理标准流程
- 胸部穿刺教学课件
- 2025-2026学年苏教版(2024)小学科学三年级上册(全册)课时练习及答案(附目录P102)
- 食材配送培训计划
- 2025-2026学年人教版小学数学六年级上册教学计划及进度表
- 2025年公共卫生检验员考试试卷及答案
- 员工培训课件心脑血管
- 2025年专武干部面试题目及答案
- 弱猪护理培训课件
评论
0/150
提交评论