led动态显示函数c语言 led动态显示的原理

运用51单片机实现4位8段LED数码管的动态数字显示,写出C语言程序

动态显示的是有固定格式的,赋值,开显示,延时,关显示,假设p0口接数据显示位,p2口低4位接片选,

成都创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站建设、网站设计、宁蒗网络推广、小程序开发、宁蒗网络营销、宁蒗企业策划、宁蒗品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联公司为所有大学生创业者提供宁蒗建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

p2=tab[1];

//赋值

p3_0=0;

//开第一位显示

for(i=0;i200:i++);//延时

p3_0=1;

//关第一位显示

p2=tab[2];

p3_1=0;

//开第二位显示

for(i=0;i200:i++);

p3_1=1;

这个程序就是让两个数码管分别显示1和2,注意程序开头包含头文件regx52.h,如果是包含reg52.h编译不了的

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

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

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

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

函数功能:延时一段时间

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

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

{

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

for(i=0;i20000;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灯的源程序:

#includereg52.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;x0;x--)

for(y=110;y0;y--);

}

扩展资料:

单片机应用分类:

通用型:

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

总线型:

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

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

控制型:

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

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

参考资料来源:百度百科-单片机

单片机led显示程序C语言的

该程序的原理是动态扫描,即每一时刻,只让一个数码管亮。让数码管从第一个到地第八个依次快速地显示,给人的视觉效果就是八个数码管同时显示。

/*程序让八个数码管显示数字0-7。*/

#includereg52.h

#includeintrins.h包含对_crol_()函数的声明的头文件。

#define uchar unsigned char宏定义用以简写unsigned char

#define uint unsigned int

uchar temp,i;定义无字符型全局变量temp,i。

void delay(unsigned int z)//延时程序,大概延时1ms。

{

unsigned int x ,y;

for(x=z;x0;x--)

for(y=110;y0;y--);

}

uchar code table[]={

0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07};//数码管真值数组,分别为0到7.

void main()

{

while(1)//大循环,让显示的状态保持

{

temp=0xfe;

for(i=0;i8;i++)

{

P3=temp;让第一个数码管显示

P1=table[i];调用数组

temp=_crol_(temp,1); 每执行一条这个语句,temp的值左移一位

delay(4); 延时(4这个参数不知道管不管用,你实际操作的时候自己改一下)

}

i=0;

}

}


分享文章:led动态显示函数c语言 led动态显示的原理
文章URL:http://cdiso.cn/article/doshcsg.html

其他资讯