
#include<reg51h>
//设CPU是时钟12MHz的8051系列
data unsigned char ms;
sbit K1=P0^0;
void SetupTimer0()
{
TMOD &= 0XF0; //仅保留T1信息
TMOD |= 0X02; //设置T0: 定时功能,方式2,自动重载8位定时器/计数器
TH0 = 256-250;//定时每025ms中断一次
TL0 = 256-250;
TR0 = 1; //开启定时器
ET0 = 1; //定时器0中断打开
}
void Timer0_ISR() interrupt 1 //中断服务程序
{
static data unsigned char us250;
if (++us250>=4) {++ms; us250=0;}
}
void main()
{
data unsigned char p1,p2;
ms=0;
SetupTimer0();
EA = 1; //全局中断打开
K1 = 1;
while(1)
{
if (K1) {P1=p1=0XFF; P2=p2=0x00; ms=0; continue;}
if (ms<150) continue;
ms=0;
p1<<=1; P1=p1;
p2<<=1; p2|=1; P2=p2;
}
}
proteus仿真,判断led发光情况:手动输入电平,检测输出情况,即可判断是否发光。
proteus仿真简介:
Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MATLAB等多种编译器。
以51单片机为例 LED接到P10端口的 #include “reg51h” sbit LED=P1^0; mail() { LED=0; //初始化LED为关闭状态 while(1) { LED=1; //点亮LED } } 完 最主要还要看看你的硬件
以上就是关于如何用C语言编写一个LED灯渐变的程序全部的内容,包括:如何用C语言编写一个LED灯渐变的程序、proteus仿真,如何知道led发光没有、怎样编写程序点亮led灯等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)