📄 24led.c
字号:
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit LEDdata=P1^0;
sbit LEDclk=P1^1;
sbit LEDmr=P1^2;
/*延时*/
void delay(uint time){
uchar k;
while(time--){
for(k=0;k<125;k++);
}
}
/*传送LED数据*/
void display(uchar num){
// uchar i;
// for (i=8;i>0;i--) {
if (num&0x80) {
LEDdata=1;
}
else{
LEDdata=0;
}
num=_crol_(num,1);//左移一位
// num=_cror_(num,1);
LEDclk=0;//写入数据
_nop_();
_nop_();
LEDclk=1;
// }
}
void main(){
uchar n,temp;
P1=0xff;
LEDclk=0;
LEDmr=0;
delay(1);
LEDmr=1;
while(1) {
temp=0xfe; //显示的初值
for (n=23;n>0;n--){
display(temp);//写入数据,并显示
delay(200);
temp=_crol_(temp,1);
// temp=_cror_(temp,1) ;
temp=temp|0x01;
}
display(0xff); //关闭显示
delay(400);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -