当前位置:首页 » 编程语言 » led灯闪烁的c语言程序

led灯闪烁的c语言程序

发布时间: 2024-06-04 04:54:32

Ⅰ 用c语言编写一个单片机控制LED灯闪烁变化的编程 急用!!!!!!!!!

C语言实现LED灯闪烁控制配套51单片机开发板。

#include //包含单片机寄存器的头文件

/****************************************
函数功能:延时一段时间

*****************************************/

void delay(void) //两个void意思分别为无需返回值,没有参数传递。

{

unsigned int i; //定义无符号整数,最大取值范围65535。

for(i=0;i<20000;i++) //做20000次空循环。

; //什么也不做,等待一个机器周期。

}

/*******************************************************

函数功能:主函数 (C语言规定必须有也只能有1个主函数)。

********************************************************/
void main(void)

{

while(1) //无限循环。

{

P0=0xfe; //P1=1111 1110B, P0.0输出低电平。

delay(); //延时一段时间。

P0=0xff; //P1=1111 1111B, P0.0输出高电平。

delay(); //延时一段时间。

}

}

单片机驱动LED灯的源程序:

#include<reg52.h> //头文件。

#define uint unsigned int

#define uchar unsigned char

sbit LED1=P1^7; //位定义。

void delay_ms(uint);//mS级带参数延时函数。

void main()

{

while(1)

{

LED1=0;

delay_ms(1000);

LED1=1;

delay_ms(1000);

}

}

void delay_ms(uint z) //延时子程序

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

(1)led灯闪烁的c语言程序扩展阅读:

单片机应用分类:

通用型:

这是按单片机(Microcontrollers)适用范围来区分的。例如,80C51式亮敏扒通用型单片机,它不是为某种专门用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。

总线型:

这是按单片机(Microcontrollers)是否提供并行总线来区分的。总线型单片机普遍设置有并行地址总线、 数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接。

另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,敬昌大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。

控制型:

这是按照单片机(Microcontrollers)大致应用的领域拿乱进行区分的。一般而言,工控型寻址范围大,运算能力强;用于家电的单片机多为专用型。

通常是小封装、低价格,外围器件和外设接口集成度高。 显然,上述分类并不是惟一的和严格的。例如,80C51类单片机既是通用型又是总线型,还可以作工控用。

参考资料来源:网络-单片机



Ⅱ c璇瑷 LED𨱔闂鐑佺▼搴忓疄鐜癙1銆丳2鍙i棯鐑佷笁娆$唲𨱔锛屽埌P3銆丳4鍙i棯鐑佷笁娆″湪镡勭伃 锲炲埌寮濮嫔湪寰鐜锛 璋㈣阿钖勪綅锛佹

sbit P10=P1^0;//鎺у埗LED闂鐑
unsigned char count=0;//璁℃暟鍙橀噺
void main()
{
TMOD = 0x01; //璁惧畾镞跺櫒0涓烘ā寮1锛16浣嶆ā寮
TH0=0xdc;
TL0=0x00; //璁惧畾镞跺间负10ms,姝ゆ椂鏅舵尟棰戠巼鏄11.0592MHZ
//鑻ユ櫠鎸棰戠巼鏄12MHZ锛屽垯鍒濆煎簲涓 TH0=0xd8; TL0=0xf0;

ET0 = 1; //瀹氭椂鍣0涓鏂镓揿紑
EA = 1; //鍏佽窝PU涓鏂
TR0 = 1;//钖锷ㄥ畾镞跺櫒0
while(1)
{
if(count==40) //0.4绉掓椂闂存槸钖﹀埌
{
count=0; //璁℃暟鍙橀噺娓呴浂锛屼负涓嬩竴娆¤℃暟锅氩嗳澶
P10=!P10; //IO鍙e彇鍙嶏纴鍗矻ED浜𨱔鍙桦寲
}
}

}

//瀹氭椂鍣0涓鏂澶勭悊瀛愮▼搴
void Time0() interrupt 1 using 0
{
TH0=0xdc;
TL0=0x00; //璁惧畾镞跺间负10ms
count++; //璁℃暟锷犱竴
}
鍙﹀,锲IDC缃戜笂链夎稿氢骇鍝佸洟璐,渚垮疁链夊彛纰

热点内容
qq空间本地上传的音乐 发布:2024-11-27 06:14:50 浏览:920
办公室云电脑服务器 发布:2024-11-27 06:11:45 浏览:26
有趣的php 发布:2024-11-27 05:58:13 浏览:960
php网页开发 发布:2024-11-27 05:56:09 浏览:956
手机密码锁忘记怎么办 发布:2024-11-27 05:54:35 浏览:153
安卓怎么获取联系人位置 发布:2024-11-27 05:53:58 浏览:49
最新云呼服务器地址 发布:2024-11-27 05:49:35 浏览:944
我的世界服务器玩家 发布:2024-11-27 05:49:20 浏览:320
python正则compile 发布:2024-11-27 05:19:05 浏览:29
数据库系统概论第四版ppt 发布:2024-11-27 04:59:52 浏览:412