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

📄 串行通讯_查询方式.c

📁 串行通讯_查询方式 有详细的文字说明 可用于单片机 串行通讯时查询连通性用
💻 C
字号:
// 串行通讯_查询方式.c

#include <reg52.h>
#include <stdio.h>                /* prototype declarations for I/O functions */

/* T1 定时 时间常数;波特率发生器 */
#define  baud_rate_L   0xFD  /* T1: 8位重装入; 0xFD-->9600b/s (SMOD=1,n=1/32) f=11.0592M */
                             /* T1: 8位重装入; 0xFD-->5208.333b/s (SMOD=1,n=1/32) f=6M   */
unsigned  char  receive_char=0;     /* 接收字符 */
unsigned   int  receive_conter=0;   /* 接收字符计数器 */

main()
{
     // T1 作波特率发生器,初始化
   TMOD |= 0x20;         /* timer 1 mode 2: 8-Bit reload.  T1=8位重装波特率发生器.         */
   TH1 =baud_rate_L;     /* T1 : 8位重装入; 0xFD(SMOD=0) --> 9600 b/s (f=11.0592MHz)*/
   TR1   = 1;            /* timer 1 run                           */
     // 串口初始化
   SCON  = 0x50;         /* mode 1: 8-bit UART, enable receiver. (1启、8数、1仃;可变波特率) */
   TI    = 1;            /* TI:   set TI to send first char of UART    */
   // ES    = 1;            /* enable serial port interrupt          */
	
   printf ("sio is ready\n");   /* 向PC机报告 */
 	 while (1)    // 死循环
	 {
     receive_char=getchar();  // 等待接收一字符,直到收到为止
	   receive_conter++;        /* 接收字符计数 */
     if (receive_char=='N') printf ("\nN=%d\n", receive_conter);
     else                   printf ("%c", receive_char);
	 }
}

⌨️ 快捷键说明

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