005a.c

来自「单片机演示程序共20个程序有LEDlcd等可以下来看看哈」· C语言 代码 · 共 43 行

C
43
字号
#include <reg51.h>
#define uchar unsigned char
uchar *p=0x20;		/*指针p指向内部RAM 20h单元*/
void com_init()		/*串口初始化程序*/
{
   TMOD=0x20;
   TH1=0xfa;
   TL1=0xfa;
   TR1=1;
   SCON=0x50;
}

send()
{
  uchar i;			/*i为发送数据的长度*/
  uchar j=0;		/*j为效验和*/
sendDT:	i=16;
	SBUF=i;			/*发送长度*/
  	while(TI !=1);		/*等待发送*/
 	 for(i=16; i; i--)
   	   {
      	       SBUF=*p;		/*发送数据*/
      	       j=j + *p;		/*形成累加和*/
      	       p++;
      	       while(TI !=1);		/*等待发送*/
    	    }
 	 SBUF=j;			/*发送效验码*/
  	j=0;
  	while(TI !=1);
  	while(RI !=1);		/*等待乙机回答*/
	if (SBUF==0)		/*若乙机正确接收,则返回,否则重发*/
	    return;
	else 
	   goto sendDT;
}

main()
{
  com_init();
  send();
 }
  
  

⌨️ 快捷键说明

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