单片机-LED实验

1、51工程模版

#include "reg52.h"

void main(){

while(1){

}

}

2、LED灯亮

#include "reg52.h"

sbit LED1=P2^0;

void main(){

while(1){

LED1=0;

}

}

3、LED闪烁

#include "reg52.h"

sbit LED1=P2^0; //P2大写,默认是高电平

typedef unsigned int u16; //0~65535

typedef unsigned char u8; //0~255

void delay_10us(u16 ten_us){

while(ten_us--); //当传入ten_su=1,大约延时10us

}

void main(){

while(1){

LED1=0; //灯亮

delay_10us(50000); //延时 //500ms 450-500

LED1=1; //灯灭

delay_10us(50000);

}

}

4、LED流水灯

4.1从左向右依次亮

方法一

#include "reg52.h"

#define LED_PORT P2

typedef unsigned int u16;

typedef unsigned char u8;

void delay_10us(u16 ten_us){

while(ten_us--);

}

void main(){

u16 i=0;

while(1){

for (i=0;i<8;i++){

LED_PORT=~(0X01<<i);

delay_10us(50000);

}

}

}

方法二 左移函数 corl

#include "reg52.h"
#include "intrins.h"

typedef unsigned int u16;

typedef unsigned char u8;

#define LED_PORT P2//宏定义

void delay_10us(u16 ten_us){

while(ten_us--);

}

void main(){

u16 i=0;

LED_PORT=0XFE; //LED_PORT=~0X01; //1111 1110

delay_10us(50000);

while(1){

for(i=0;i<7;i++){

LED_PORT=crol(LED_PORT,1);

delay_10us(50000);

}

}

}

4.2从右向左依次亮

#include "reg52.h"
#include "intrins.h"

typedef unsigned int u16;

typedef unsigned char u8;

#define LED_PORT P2//宏定义

void delay_10us(u16 ten_us){

while(ten_us--);

}

void main(){

u16 i=0;

LED_PORT=0X7F; //0111 1111

delay_10us(50000);

while(1){

for(i=0;i<7;i++){

LED_PORT=cror(LED_PORT,1);

delay_10us(50000);

}

}

}

相关推荐
Groundwork Explorer4 小时前
W5500 网卡编程初始化与使用指南
python·单片机
智闲电子设计6 小时前
STM32 SD 卡 + FatFS 实战:掉电丢数据?f_sync 和簇对齐写救你
stm32·单片机·嵌入式硬件
ヾChen7 小时前
ESP32 OTA 踩坑实录
stm32·单片机·嵌入式硬件·物联网·学习
DevHub8 小时前
probe-rs 教程:一行命令替代 OpenOCD 烧写调试 Cortex-M
arm开发·嵌入式硬件·mcu·rust
小僧景贤8 小时前
嵌入式ADC高阶深度解析:基于STM32底层原理、误差溯源、硬件调校与工业级落地
单片机·嵌入式硬件·stm32 adc·工业级高精度采集·adc 误差校准·量产固件开发
黑猫学长呀8 小时前
【驱动开发常见问题】编译出现rm: cannot remove `asm/arch‘: Is a directory
驱动开发·单片机·嵌入式硬件·bug·编译报错·kernrl
雨田言炎8 小时前
STM32专题之内部FLASH详解
笔记·stm32·单片机
Be for thing10 小时前
【嵌入式成长10】STC89C51蜂鸣器|有源/无源蜂鸣器区分、三极管驱动、定时器播放音乐实战
单片机·嵌入式硬件·学习
郎哥编程课堂11 小时前
单片机零基础训练营第2天:嵌入式开发常用的三种进制
单片机·嵌入式硬件
LCG元11 小时前
STM32 DAC+DMA+定时器触发生成任意波形:数据对齐陷阱、输出缓冲器选型与频率精度实测
stm32·单片机·嵌入式硬件