我是靠谱客的博主 拼搏钢笔,最近开发中收集的这篇文章主要介绍单片机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灯闪烁所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复