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

📄 serial_inquiry.lst

📁 基于ARM的时钟中断程序
💻 LST
字号:
C51 COMPILER V8.08   SERIAL_INQUIRY                                                        05/28/2008 14:55:04 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE SERIAL_INQUIRY
OBJECT MODULE PLACED IN serial_inquiry.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE serial_inquiry.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          //文件名:serial_inquiry.c
   2          //说明:最简单的查询法串口通讯程序
   3          //可以使用串口调试助手测试
   4          //编写:王晓荣
   5          //日期:20080401
   6          
   7          
   8          #include <REGX51.H>
   9          
  10          void init_serial();        // 串口初始化
  11          void putch(unsigned char); //数据发送
  12          unsigned char getch(void); //数据接收
  13          
  14          main()
  15          {
  16   1              unsigned char ch;
  17   1              //unsigned int i;
  18   1              init_serial();
  19   1              ch = 0; 
  20   1              while(1)
  21   1              {
  22   2                      ch = getch();  //接收要快,会出现“漏码”现象
  23   2                      putch(ch);
  24   2                      putch(ch);
  25   2                      //for(i = 0; i < 1000; i++) ;  //出现“漏码”现象
  26   2                      //“漏码”原因:未及时取SBUF中数据,被覆盖
  27   2                      //一组数据的发送是连续进行的                            
  28   2              }
  29   1      }
  30          
  31          void init_serial()              // 晶振:11.0592M
  32          {
  33   1              TMOD = 0x20;            //定时器1用于串行通讯   
  34   1              TH1 = 256 - 12;         //1.5: 波特率19200; 3: 波特率9600; 6:波特率4800; 12:波特率2400   
  35   1              TL1 = 256 - 12; 
  36   1              SCON = 0x50;        //工作方式1          
  37   1              PCON &= 0xef;       // 波特率不倍增                                     
  38   1              TR1 = 1;
  39   1              RI = 0;                         
  40   1      }
  41          
  42          void putch(unsigned char ch)
  43          {
  44   1              SBUF = ch;
  45   1              TI = 0;
  46   1              while(!TI);
  47   1      }
  48          
  49          unsigned char getch(void)
  50          {
  51   1              while(!RI);
  52   1              RI = 0;
  53   1              return(SBUF); 
  54   1      }
  55          
C51 COMPILER V8.08   SERIAL_INQUIRY                                                        05/28/2008 14:55:04 PAGE 2   

  56          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     57    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       1
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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