嵌入式uPD78F0485单片机试验报告流水灯音乐盒

上传人:m**** 文档编号:561972153 上传时间:2023-05-03 格式:DOC 页数:7 大小:90.50KB
返回 下载 相关 举报
嵌入式uPD78F0485单片机试验报告流水灯音乐盒_第1页
第1页 / 共7页
嵌入式uPD78F0485单片机试验报告流水灯音乐盒_第2页
第2页 / 共7页
嵌入式uPD78F0485单片机试验报告流水灯音乐盒_第3页
第3页 / 共7页
嵌入式uPD78F0485单片机试验报告流水灯音乐盒_第4页
第4页 / 共7页
嵌入式uPD78F0485单片机试验报告流水灯音乐盒_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《嵌入式uPD78F0485单片机试验报告流水灯音乐盒》由会员分享,可在线阅读,更多相关《嵌入式uPD78F0485单片机试验报告流水灯音乐盒(7页珍藏版)》请在金锄头文库上搜索。

1、嵌入式系统应用技术基础实验报告(一)基于疔D78F0485单片机的流水灯音乐盒设计与实现专业:软件工程班级:2009学号:2009242012姓名:霍海洋1. 设计环境及使用工具1.1设计环境:PC机、瑞萨EZ/EM-1仿真器、程序下载及仿真调试电缆、PC机到仿真器的USB!信线。1.2使用工具:NEC upd78F0485单片机。2. 需求分析当前,在世界范围内,一个以微电子技术,计算机的通讯技术为先导的,一信息技术及信息产业的信息革命时期。而计算机技术怎样与实际应用更有效的结合并有效地发挥其作用是 科学界最热门的话题,也是当今计算机应用中空前活跃的领域。本文主要从计算机的应用上 来实现流水

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, gMode

3、li r定义软件延时函数void delay();1 !定义与中断有关的函数void InitKey INTKR();in terrrupt void On KeyPress(void);1定义5种模式SchTieme0Schemed执行主函数1不冋的按键中断实现不冋方案1 r 结束图4.1程序流程图5. 操作说明1.按下Keyl键进入第一种模式,P13.1到P13.0的12个LED灯顺时针方向 依次点亮,所有灯点亮之后,12个LED灯依次熄灭,如没有按键按下,则一直循环下去。中间伴随蜂鸣器的声音。2.按下Key2键进入第二种模式,P13.1到P13.0的12个LED灯逆时针方向 依次点亮,所

4、有灯点亮之后,12个LED灯依次熄灭,如没有按键按下,则一直循环下去。中间伴随蜂鸣器的声音。3.按下Key3键进入第三种模式,12个小灯按照红,绿,黄的顺序点亮,每 次亮四个灯(即冋一时刻只有一种灯亮),如没有按键按下,则一直循环下去。中间伴随蜂鸣器的声音。4.按下Key4键进入第四种模式,12个小灯按照方位,由北,东,南,西的 顺序依次闪烁,每次亮三个灯,如果延时过小,则有可能看起来 像一条线条流动,如没有按键按下,则一直循环下去。中间伴随 蜂鸣器的声音。5.按下Key5键进入第五种模式,12个小灯按照对角线,由P13.3和P15.1开始(两个灯冋时点亮),顺时针方向依次点亮,并按照这种方式

5、,逆时针依次熄火,如没有按键按下,则一直循环下去。中间伴随 蜂鸣器的声音。6.按下Key6键不管运行的哪种模式,按下KEY6键,程序立刻中止。表5.1 操作对照表6. 设计中遇到的主要问题及解决办法问题原因解决方法1.程序运行开始,还没 有任何按键中断响应,已经 按照某种方案执行。按键中断服务函数中的 闪亮模式(变量)与按键不 对应,并与主函数的switch 函数的变量不统一。将两个函数中的变量 值修改成对应模式。2.程序开始,第一次按 下任何中断键,都能按照对 应模式执行,但是一旦开 始,就只能按照某种模式执 行,不能响应中断。程序问题,在每种模式 中,一旦执行开始之后,就 进入死循环,wh

6、ile(1),导致 模式不能响应中断。由于按下中断键之后 gFlag的值由1变成0,因 此可以将while中的循环变 量设为gFlag,如果没有按 键响应,gFlag为1,则循 环执行,若有按键响应, gFlag为0,循环得以结束, 执行另一种模式。3. 按键中断响应之后, 只能等上次方案执仃元成, 才能进入下一种模式。由于gFlag中的值在 while循环变量中,即使有 按键中断,gFlag的值变为 0,也需程序执行室外一次, 才能判断循环。暂末解决。表6.1冋题及对应解决方案7. 总结及展望 随着微控技术的日益完善和发展,单片机的应用在不断走向深入。它的应用比定导 致传统的控制技术从根本上

7、发生变革。 也就是说单片机应用的出现是对传统控制技术的 革命。它在工业控制、数据采集、智能化仪表、机电一体化、家用电器等领路得到了广 泛应用,极大的提高了这些领域的技术水平和自动化控制。因此单片机的开发应用已成 为高技术工程领域的一项重大课题。因此了解单片机知识,掌握单片机的应用技术具有 重大的意义。8. 程序清单8.1 引入、函数声明和初始化变量:#pragma sfr#pragma NOP#pragma DI#pragma EI#pragma interrupt INTKR OnKeyPressvoid delay();void InitKey_INTKR(void);unsigned c

8、har 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;KRM

9、K = 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

10、(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

11、=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=

12、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(

13、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)

14、;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);

15、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.仁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

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号