我是靠谱客的博主 拼搏钢笔,最近开发中收集的这篇文章主要介绍单片机IO口应用-独立按键控制LED以及控制LED灯闪烁P1=0xdf;sbit LED=P1^5;延时函数控制LED灯闪烁,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

P1=0xdf;

sbit LED=P1^5;

输出控制 

P1并行口第5位引脚IO置为1

P1并行口第5位引脚IO置为0

输入检测

延时函数

控制LED灯闪烁

方法一

方法二

方法三


P1=0xdf;


一次赋值即可一次性控制并行口P1共8个IO口 

sbit LED=P1^5;


输出控制 

 

P1并行口第5位引脚IO置为1


P1 |= (1<<5)      <<   左移五位

 |   或运算符

P1并行口第5位引脚IO置为0


P1 &=~ (1<<5)      <<   左移五位

 ~       取反

&        

输入检测


if(LED==1)    输入高电平        if(Px &(~(1<<x)))

if(LED==0)    输入低电平

延时函数


void Delay_xms(unsigned char ms)
//延时xms
{
unsigned int i,j;
for(i=0;i<ms;i++){
for(j=0;j<333;j++);
//空指令
}
}

控制LED灯闪烁

方法一

void delay_xms(unsigned char ms)
//延时xms
{
unsigned int i,j;
for(i=0;i<ms;i++){
for(j=0;j<333;j++);
//空指令
}
}
sbit LED1=P0^0;
sbit LED2=P0^1;
sbit LED3=P0^2;
sbit LED4=P0^3;
sbit LED5=P0^4;
sbit LED6=P0^5;
sbit LED7=P0^6;
sbit LED8=P0^7;
void main()
{
while(1){
LED1=0;delay(500);LED1=1;
LED2=0;delay(500);LED2=1;
LED3=0;delay(500);LED3=1;
LED4=0;delay(500);LED4=1;
LED5=0;delay(500);LED5=1;
LED6=0;delay(500);LED6=1;
LED7=0;delay(500);LED7=1;
LED8=0;delay(500);LED8=1;
}
}

方法二

void delay_xms(unsigned char ms)
//延时xms
{
unsigned int i,j;
for(i=0;i<ms;i++){
for(j=0;j<333;j++);
//空指令
}
}
unsigned char LED_DAT[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
void main(){
while(1){
unsigned char i;
for(i=0;i<8;i++){
P0=LED_DAT[i];
delay_xms(500);
}
}
}

方法三

void delay_xms(unsigned char ms)
//延时xms
{
unsigned int i,j;
for(i=0;i<ms;i++){
for(j=0;j<333;j++);
//空指令
}
}
void main(){
while(1){
unsigned char temp=0xfe,i;
temp=0xfe;
//1111 1110
-> 1111 1101
-> 1111 1011
for(i=0;i<8;i++){
P0=temp;
temp=(temp<<1)+1;
delay_xms(500);
}
}
}

最后

以上就是拼搏钢笔为你收集整理的单片机IO口应用-独立按键控制LED以及控制LED灯闪烁P1=0xdf;sbit LED=P1^5;延时函数控制LED灯闪烁的全部内容,希望文章能够帮你解决单片机IO口应用-独立按键控制LED以及控制LED灯闪烁P1=0xdf;sbit LED=P1^5;延时函数控制LED灯闪烁所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部