单片机 C语言闪烁灯
1ms循环115次
1ms循环115次
分小组分别用for和while实现115次 循环空语句的程序
1s=1000ms
分小组分别用for和while实现1000 次循环“1ms程序”语句的程序
1ms程序
For循环 While循环
void delay() int i; for(i=0; i<115; i++) { ; }
闪烁灯
电源 内部有 程序存 储器
复位 电路
EA接高 电平选择 内部程序 存储器
时钟电 路
创设情境
有同学说:就开一个灯嘛,我用开关就行了。
思考问题:要控制灯光,仅仅使用开关就足 够吗?还需要什么?
提出任务
编写C语言程序实现一个发 光二极管以1s的时间间隔闪 烁。
解决任务
指令周期 cpu 处理一条指令的时间 1s的时间
3
仿真得到实验结果
课堂评价
基本操作
Fod delay() int i=115; while (i--) { ; }
1ms*1000程序
For循环 While循环
void delay() int i,j; for(j=0; j<1000; j++) { for(i=0; i<115; i++) {;} }
void delay() int i=115,j=1000; while (j--) { while(i--) {;}; }
Void delay() { Unsigned int i,j;
for(i=0;i<1000;i++) for(j=0;j<115;j++); }
总结
For、while循环使用
1s的延时程序
仿真实验
程序的完整性
作业
1
编写C语言程序实 现一个发光二极管 以600ms的时间间 隔闪烁。
2
编写C语言程序实 现一个发光二极管 以1s亮,500ms灭 循环闪烁。
指令周期 While循环 1ms循环115次
For循环 1ms循环115次
控制
1s=1000ms
C语言两种循环句式常见用法
For循环
int i; for(i=0; i<5; i++) { 任意语句; }
任 意 语 句 循 环 5 次
While循环
int i=5; While (i--) { 任意语句; }
把程序补充完整仿真得到实验结果
#include<reg52.h> void delay( ); sbit led1=P1^0; void main( ) { while(1) { led1=0; Delay( ); led1=1; Delay( ); }