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

📄 uart.lst

📁 stc15单片机测试程序V1.0版
💻 LST
字号:
C51 COMPILER V9.01   UART                                                                  07/28/2012 10:12:00 PAGE 1   


C51 COMPILER V9.01, COMPILATION OF MODULE UART
OBJECT MODULE PLACED IN UART.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE UART.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*-------------------------------------
   2                  UART1测试:使用波特率9600发送到单片机上
   3                                     单片机将收到的程序发回PC。
   4          ---------------------------------------*/
   5          
   6          #include "STC15F2K.h"
   7          #include <intrins.H>
   8          
   9          typedef unsigned char uchar;
  10          typedef unsigned int  uint;
  11          
  12          
  13          bit busy;
  14          uchar GetC;
  15          
  16          void InitUART(void);
  17          void SendData(uchar dat);
  18          void SendString(uchar *s);
  19          
  20          /*----------------------------
  21              UART1初始化
  22          -----------------------------*/
  23          void InitUART(void)
  24          {
  25   1          SCON = 0x50;                //8位可变波特率 
  26   1              AUXR1= AUXR1 & 0x3F; 
  27   1          AUXR = 0x40;                //定时器1为1T模式
  28   1          TMOD = 0x20;                //定时器1为模式2(8位自动重载)
  29   1          TL1 = 0xDC;   //设置波特率重装值
  30   1          TH1 = 0xDC;
  31   1          TR1 = 1;                    //定时器1开始工作
  32   1          ES = 1;                     //使能串口中断
  33   1          EA = 1;
  34   1      
  35   1      }
  36          
  37          
  38          /*----------------------------
  39          UART 中断服务程序
  40          -----------------------------*/
  41          void Uart() interrupt 4 using 1
  42          {
  43   1          if (RI)
  44   1          {
  45   2              RI = 0;                 //清除RI位
  46   2              GetC = SBUF;              //P0显示串口数据
  47   2          }
  48   1          if (TI)
  49   1          {
  50   2              TI = 0;                 //清除TI位
  51   2              busy = 0;               //清忙标志
  52   2          }
  53   1      }
  54          
  55          /*----------------------------
C51 COMPILER V9.01   UART                                                                  07/28/2012 10:12:00 PAGE 2   

  56          发送串口数据
  57          ----------------------------*/
  58          void SendData(uchar dat)
  59          {
  60   1          while (busy);               //等待前面的数据发送完成
  61   1          busy = 1;
  62   1          SBUF = dat;                 //写数据到UART数据寄存器
  63   1      }
  64          
  65          /*----------------------------
  66          发送字符串
  67          ----------------------------*/
  68          void SendString(uchar *s)
  69          {
  70   1          while (*s)                  //检测字符串结束标志
  71   1          {
  72   2              SendData(*s++);         //发送当前字符
  73   2          }
  74   1      }
  75          


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


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

⌨️ 快捷键说明

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