⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mf.c

📁 IO口模仿串口,,,,c语言编程.........
💻 C
字号:
//用31来模拟串口,向PC发送数据
//波特率4800 bit/s 每一位208us
#include<reg51.h>
#define uchar unsigned char

uchar c1;//分别用来存储K1-K4
sbit led=P1^0;

sbit k1=P2^4;//按钮K1
sbit k2=P2^5;//按钮K2

sbit tx=P3^1;//模拟串口的数据发送引脚

void yanshi()//208us延时子函数
  {
  uchar x=29;//207us
  while(x--);
  }

void longyanshi(uchar x)//长延时
{
  uchar y;
    for(;x>0;x--)
     for(y=100;y>0;y--);

}

void fasong(uchar d)//发送数据子函数
{
 uchar i,temp;


 tx=0;//起始信号开始
 yanshi();//起始信号结束

  for(i=0;i<8;i++)//发送8位数据
  {
    temp=d&0x01;
    if(temp==1)
    {
      tx=1;
       }
     else//否则要发送的位是0
       {
         tx=0;
     }
    yanshi();

    d=d>>1;//移除所发送的位
   }

	tx=1;//停止信号开始
    yanshi();//停止信号结束

}

void key()//按钮
{
  if(k1!=1)//k1按下了
  {
    longyanshi(200);
    if(k1==0)//再次确认k1的状态
     {
      
      
       while(k1==0);//等待放手
         
       longyanshi(200);//放手去抖动
     }
   }
}
void key()//
{
   if(k2==0)//
   longyanshi(200);
   if(k2==0)
   fasong('B');
   {
   c1++;
      
   }
}

 led=0;
 while(c1<2)
  {
   if(k1==0)
    {
    c1++;
    }
  }
   led=1;

while(1)

       {
        key()2;
        
        }
}  

 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -