求单片机程序……

来源:百度知道 编辑:UC知道 时间:2024/06/11 17:56:27
要求:用AT89C51单片机控制广告灯空着系统,按00000001,00000011,00000111,……11111111规律递增;用按键开关切换速度,K1开关增加点亮速度,K2开关降低速度。单片机的晶振频率为6MHz。谢谢了……
用汇编程序!

你这个问题对于初学单片机的学生来说是个很好的锻炼,把答案直接告诉你反而使你处于被动。
给你几个关键词:Keil、Proteus、ACALL、DJNZ

这都求?
你退学吧

#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit k1 P2^0

void daley(uint ms)
{
uint i,j;
for(i=1;i<=ms;i++)
for(j=1;j<=12;j++)
}

void main()
{
uint i,j=1000;
uchar a;
P1=0x00;
k1=0;
while(1)
{
a=0x01;
P1=0x00
for(i=0;i<8;i++)
{
P1=P1&a;
a>>;
daley(j);
if(k1==1)
{
j=j/2;
k1=0;
}
if(j<250)
{
j=1000;
}
}
}
}

加减速度的话,用外部中断INT0和INT1比较方便,中断一次修改一次速度!!