用C语言编程,求程序的方法:
#include//包含单片机寄存器的头文件
/****************************************函数功能:延迟一段时间
*****************************************/
Voiddelay(Void)//Void表示没有返回值,也没有传递参数。
{
Unsignedint我;定义一个最大值为65535的无符号整数。
For (I = 0;我< 20000;i++) //执行20000个空循环。
;//什么也不做,等待一个机器周期。
}
/*******************************************************
函数函数:主函数(C语言规则必须有且只能有一个主函数)。
********************************************************/空白主要(空白)
{
而(1)//无限循环。
{
P0=0xfe;//P1=11111110B,P0.0输出低电平。
延迟();//推迟一段时间。
P0=0XFF;//P1=11111111B,P0.0输出高电平。
延迟();//推迟一段时间。
}
}
单片机驱动LED光源程序:
#include//头文件。
定义uint无符号int
#定义uchar无符号字符
SbitLED1=P1^7;//定义。
空白delay_ms(单位);//带参数的ms级延时函数。
Voidmain()
{
而(1)
{
LED1=0;
Delay_ms(1000);
LED1=1;
Delay_ms(1000);
}
}
Voiddelay_ms(uintz)//delay子例程
{
使用Uintx,y;
For (x = z;X > 0;X -)
For (y = 110;Y > 0;Y -);
}
扩展资料:
单片机应用分类:
一般类型:
这是关于微控制器的。例如80C51通用型单片机,它并不是为特定的目的而设计的;专用单片机是为某一类产品甚至某一种产品而设计生产的。例如,为了满足电子体温计的要求,芯片中集成了具有ADC接口的温度测量控制电路等功能。
主线:
这是由微控制器是否提供并行总线来区分的。总线微控制器一般安装有并行地址总线、数据总线、控制总线,这些引脚扩展并行外围设备可以通过串口与单片机连接。
另外,很多单片机都需要将外围设备和外围设备的接口集成在一块,所以在很多情况下不能并行扩展总线,大大降低了封装成本和芯片体积,这种单片机被称为非总线单片机。
控制类型:
这是关于微控制器的一般应用。一般来说,工业控制寻址范围大,计算能力强。家用电器的单片机大多是专用的。
它通常是小包装、低价格、高集成的外围设备和外围接口。显然,上述分类并不独特和严格。例如,80C51类单片机既是通用的,又是总线的,还可以用于工业控制。
用c51单片机控制一个闪光灯循环闪光5次以后熄灭不再闪光,用C语言编程...
For (I = 0;我< 20000;i++) \/\/执行20000个空循环。;//什么也不做,等待一个机器周期。} /*** 函数函数:主函数(C语言规则必须有且只能有一个主函数)。***/空白主要(空白){ 而(1)//无限循环。{ P0=0xfe;//P1=11111110B,P0.0输出低电平。延迟();//推迟...
请教c51单片机,c语言编程,关于控制LED灯闪烁频率?
在无限循环中,不断检测K1和K2按键状态,以改变全局变量“freq”并控制LED灯的闪烁频率;然后使用一个计时器中断服务程序来控制LED灯的闪烁,具体实现方式请参考代码注释。最后,为了保证每个周期的闪烁持续时间与频率相符,应该在循环内部加入一个延时操作,等待一定时间再进入下一次循环。
单片机控制单个LED闪烁五下的c程序,希望能加讲解,谢谢啦
void main()\/\/主程序 { unsigned char i;\/\/声明一个变量 for(i=0;i<5;i++)\/循环5次 { LED=0;\/\/亮 delayms(500);\/\/延时 LED=1;\/\/灭 delayms(500);\/\/延时 } while(1);\/\/停止不动 } 延时子程序随便搜一个,如果时间差别太大,可调某些参数 ...
51单片机怎么用c语言写一个按钮控制一个led的闪烁,按一下开始闪烁,再按...
flash=~flash;\/\/按键按下后执行动作 } } } void ledflash(){ if(flash){ led=1;\/\/点亮 delay(100);\/\/延时100MS led=0;\/\/熄灭 } else led=0;} void delay(unsigned int i){自己根据单片机频率写个1MS带形参的演示程序} 这个程序是现写的。。应该能执行,有些细节没有写,自己修改下,...
单片机用c语言,按钮控制一个LED灯,要求按下松开,LED亮,按下松开,LED...
1、首先打开桌面上的keil软件,在进行对51单片机进行编程时最常用的就是keil软件。2、编写相应的代码:#include<reg52.h> \/\/定义单片机的头文件sbit led=P2^0; \/\/定义单片机的管脚,void main(void) \/\/主函数{ while(1) \/\/无限循环 {led=0x1f; \/\/点亮前面三个灯。这里...
用C语言编写一个单片机控制LED灯闪烁变化的编程 急用!!!
; \/\/什么也不做,等待一个机器周期。} \/ 函数功能:主函数 (C语言规定必须有也只能有1个主函数)。\/void main(void){ while(1) \/\/无限循环。{ P0=0xfe; \/\/P1=1111 1110B, P0.0输出低电平。delay(); \/\/延时一段时间。P0=0xff; \/\/P1=1111 1111B, P0.0输出高电...
求用C语言编程实现51单片机的LED灯移动
include<reg51.h> define uchar unsigned char sbit c10=P1^0;sbit c11=P1^1;sbit c12=P1^2;sbit c13=P1^3;uchar led1,led3;void delay(uchar a){ uchar i,j;for(i=0;i<a;i++)for(j=0;j<120;j++);} main(){ uchar keyval=0xff;led1=0xfe;led3=0xf8;while(1){ if(c10...
请问单片机C51用C语言怎么编这个例子
delay(1);if(K2==0){NUM1--;if(NUM1==0);{NUM1=0;} } switch(NUM1){case 1:{delay(40);P1=~P1;}break;case 2:{delay(20);P1=~P1;}break;} } } void main(){ P1=0X00;while(1){delay(20);P1=~P1;keyscan();} } 参考资料:自己写的,不确定,自己调试下看看 ...
c51单片机c语言交通灯的程序
EX1=1;logo();P2=0Xc3;\/\/ 开始默认状态,东西绿灯,南北黄灯 sec_nb=sec_dx+5;while(1){ key(); \/\/调用按键扫描程序 display(); \/\/调用显示程序 Buzzer();} } \/\/函数的定义部分 void key() \/\/按键扫描子程序 { if(k1!=1){ delay(10);if(k1!=1){ while(k1!=1){ key_t...
求用C语言编写的交通灯程序,C51单片机控制,无左转右转
1.当为黄灯时南北、东西两道同时为黄灯;以提示行人或车辆下一个灯色即将到来时间 3秒。2.当南北为红灯,南北道车辆禁止通行,时间30秒;南北道为绿灯,南北道车辆通过时间38秒 。3.当东西道绿灯,东西道车辆通行,时间为28秒;东西道为红灯,东西道车辆禁止通过时间为40秒。4.这样如上表的...