为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

闪烁LED灯

2018-09-06 5页 doc 92KB 25阅读

用户头像

is_963767

暂无简介

举报
闪烁LED灯闪烁LED灯 LED闪烁灯的设计 设计要求:晶振为12MHz,使用定时/计数器(T1)作为延时控制,利用I/O端口P0点亮三盏灯,三支灯交替闪烁,间隔为1S。 1系统分析:由于定时器直接延时的最大时间Tmax=65536μs=65.536ms,为延时1s,必须采用循环计数方式实现。方法为:定时器设延时50ms(初始值应为:15536μs),单片机内部寄存器加1,然后定时器重新延时,当内部寄存器计数达20次时,表示延时1s。使用定时器T0工作在方式1,延时50ms,初始值TMOD为01H,TH0为3CH,TL0为B0H。 ...
闪烁LED灯
闪烁LED灯 LED闪烁灯的设计 设计要求:晶振为12MHz,使用定时/计数器(T1)作为延时控制,利用I/O端口P0点亮三盏灯,三支灯交替闪烁,间隔为1S。 1系统分析:由于定时器直接延时的最大时间Tmax=65536μs=65.536ms,为延时1s,必须采用循环计数方式实现。方法为:定时器设延时50ms(初始值应为:15536μs),单片机内部寄存器加1,然后定时器重新延时,当内部寄存器计数达20次时,表示延时1s。使用定时器T0工作在方式1,延时50ms,初始值TMOD为01H,TH0为3CH,TL0为B0H。 15536=0011 1100 1011 0000B=3CB0H。 2系统功能框图设计 3系统硬件设计:在桌面双击图标,打开ISIS 7 Professional 窗口。执行菜单命令“File”?“New Design”,新建一个DEFAULT模板,保存文件名为“p0”。在元器件选择按钮中单击“P”按钮,添加下图中所列的元器件。放置好元器件后,布好线。双击各元器件,设置相应的元器件,完成电路图的设计。 4软件设计: 程序流图如下 开始 定时/计数器初始值设置 P0.0清0、P0.1置1、P0.2置1 启动定时/计数器1 N 定时/计数器是否延时50ms, Y 启动定时/计数器重新赋值 N 是否循环20次(延时1s)? Y P0.0=0 P0.1=1 P0.2=1 P0_1=1; N 定时/计数器是否延时50ms, P0_2=1; Y 启动定时/计数器重新赋值 N 是否循环20次(延时1s)? Y P0.0=1 P0.1=1 P0.2=0 N 定时/计数器是否延时50ms, Y 启动定时/计数器重新赋值 N 是否循环20次(延时1s)? Y P0.0=1 P0.1=0 P0.2=1 重新计循环次数 程序设计: #include"reg51.h" #define uint unsigned int #define uchar unsigned char sbit P0_0=P0^0; sbit P0_1=P0^1; sbit P0_2=P0^2; uint t=0; void time0_server_(void) interrupt 3 { TH1=0x3C; TL1=0x00; t++; } void Init_t0(void) { TMOD=0X10; TH1=0x3C; TL1=0xB0; EA=1; ET1=1; TR1=1; } void main(void) { Init_t0(); while(1) { if(t==20) { t=0; P0_0=0; P0_1=1; P0_2=1; } if(t==20) { t=0; P0_0=1; P0_1=1; P0_2=0; } if(t==20) { t=0; P0_0=1; P0_1=0; P0_2=1; } } } 5调试与仿真:运行结果如下图所示 6目前存在的问题:自己不会写程序,只会通过修改书上的程序来完成作业。 7收获与建议:通过这次作业我对C语言的相关知识的理解更加加深了。 8期望成绩:A
/
本文档为【闪烁LED灯】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索