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

📄 tck.c

📁 51单片机同步串口发送数据的程序
💻 C
字号:
#include<regX51.h>       //同步串口发射数据程序//
unsigned char a[16];     //发射数据缓存数组//

void chai(unsigned int n)//将要发射的数据拆成位的函数,n为被拆的数//
{
 unsigned char k;        //数组的第几个数变量//
 unsigned int t;         //判断数组中每一位是0还是1变量//
 unsigned int j=0x1;       
 for(k=0;k<=15;k++)      //循环判断数组中的每一位//
 {     
  t=n&j;
  if(t!=0)
  a[k]=1;
  else
  a[k]=0;
  j=j<<1;                //移位比较//
 }
}

void delay(void)         //延时函数,在1200波特率时每一位的时间长度//
{
 unsigned char u=0x43;
 while(u--);
}

void main()              //主函数//
{
 char i;
 while(1)                //死循环//
 {
  chai(0xA0A0);          //拆数//
  P3_2=0;                //先将发射的分隔信号付成0//
  for(i=31;i>=0;i--)     //循环将时钟信号发射出去发射31个,16个上升沿//
  {
   if(i==31)
   P3_0=0;
   else
   P3_0=!P3_0;
   P3_1=a[(i/2)];        //发射16位的数据,先发射高位,再发射低位//
   delay();
  }
   P3_2=1;               //将分隔信号付1,产生分隔信号上升沿// 
   P3_0=0;               //时钟信号置0//
 }
}

⌨️ 快捷键说明

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