51单片机学习

1.1控制一个灯亮

void main()

{

P2=0xFE;

}

1.2控制一个灯闪烁

void Delay500ms() //@12.000MHz

{

unsigned char i, j, k;

nop();

i = 4;

j = 205;

k = 187;

do

{

do

{

while (--k);

} while (--j);

} while (--i);

}

void main()

{

while(1)

{

P2=0xFE;

Delay500ms();

P2=0xFF;

Delay500ms();

}

}

1.3流水灯

void Delay500ms() //@12.000MHz

{

unsigned char i, j, k;

nop();

i = 4;

j = 205;

k = 187;

do

{

do

{

while (--k);

} while (--j);

} while (--i);

}

void main()

{

while(1)

{

P2=0xFE;

Delay500ms();

P2=0xFD;

Delay500ms();

P2=0xFB;

Delay500ms();

P2=0xF7;

Delay500ms();

P2=0xEF;

Delay500ms();

P2=0xDF;

Delay500ms();

P2=0xBF;

Delay500ms();

P2=0x7F;

Delay500ms();

}

}

2.1独立按键控制亮灭

void main()

{

while(1)

{

if(P3_1 == 0)

{

P2_0=0;

}

else

{

P2_0=1;

}

}

}

2.2独立按键控制LED状态

void Delay(unsigned int xms) //@12.000MHz

{

unsigned char i, j;

while(xms)

{

i = 2;

j = 239;

do

{

while (--j);

}

while (--i);

xms--;

}

}

void main()

{

while(1)

{

if(P3_1==0)

{

Delay(20);

while(P3_1==0);

Delay(20);

P2_0=~P2_0;

}

}

}

2.3独立按键控制LED显示二进制

void Delay(unsigned int xms) //@12.000MHz

{

while(xms)

{

unsigned char i, j;

i = 2;

j = 239;

do

{

while (--j);

}

while (--i);

xms--;

}

}

void main()

{

unsigned char LED_Num=0;//表示寄存器

while(1)

{

if(P3_1 == 0)

{

Delay(20);

while(P3_1 == 0);

Delay(20);

//默认P2后为高电平 1111 1111

LED_Num++;//0000 0001

P2=~LED_Num;//1111 1110

}

}

}

2.4独立按键控制LED移位

void Delay(unsigned int xms) //@12.000MHz

{

while(xms)

{

unsigned char i, j;

i = 2;

j = 239;

do

{

while (--j);

}

while (--i);

xms--;

}

}

unsigned char LED_Num = 0;

void main()

{

P2=~0x01;//初始化

while(1)

{

if(P3_1 == 0)

{

Delay(20);

while(P3_1 == 0);

Delay(20);

LED_Num++;

if(LED_Num>=8)

LED_Num=0;

P2=~(0x01<<LED_Num);//注意取反与括号的先后顺序

}

if(P3_0 == 0)

{

Delay(20);

while(P3_0 == 0);

Delay(20);

if(LED_Num==0)

LED_Num=7;

else

LED_Num--;

P2=~(0x01<<LED_Num);

}

}

}

相关推荐
通信小呆呆8 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick8 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee8 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
Alsn868 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e8 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统
小雨下雨的雨8 天前
HarmonyOS ArkUI训练营入门-组件掌握系列-Animation 动画效果实现-PC版本
学习·华为·harmonyos·鸿蒙
u152109648498 天前
S.S.Audio PRO A2音频隔离器
嵌入式硬件·音视频·实时音视频·视频编解码·视频
zd8451015008 天前
RS485 总线详解
单片机·嵌入式硬件
cqbzcsq8 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
半条-咸鱼8 天前
【STM32】I2C协议原理、HAL读写与OLED显示操作
嵌入式硬件·c·信息与通信