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

📄 uart.lst

📁 基于80C52的USB转串口程序
💻 LST
字号:
C51 COMPILER V8.09   UART                                                                  06/18/2008 16:40:38 PAGE 1   


C51 COMPILER V8.09, 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          #include <reg52.h>
   2          #include "D12Config.h"
   3          #include "UART.h"
   4          #include "D12Driver.h"
   5          
   6          
   7          INT8U Sending;
   8          
   9          
  10          
  11          
  12          /********************************************************************
  13          函数功能:串口初始化。
  14          入口参数:无。
  15          返    回:无。
  16          备    注:无。
  17          ********************************************************************/
  18          void InitUART(void)
  19          {
  20   1       EA=0;
  21   1      SCON = 0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr  
  22   1      TMOD |= 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload  
  23   1      PCON |= 0x80 ; //SMOD=1;  
  24   1      TH1 = 0xF4 ; //Baud:4800 fosc=11.0592MHz  
  25   1      ES = 1; //Enable Serial Interrupt  
  26   1      PS = 1; //设置外部中断0中断优先级
  27   1      TR1 = 1 ; // timer 1 run  
  28   1      Sending=0;    //允许发送
  29   1      }
  30          ////////////////////////End of function//////////////////////////////
  31          
  32            
  33          /********************************************************************
  34          函数功能:串口中断处理。
  35          入口参数:无。
  36          返    回:无。
  37          备    注:无。
  38          ********************************************************************/
  39          void UartISR(void) interrupt 4
  40          {
  41   1       if(RI)    //收到数据
  42   1        {
  43   2         RI=0;   //清中断请求
  44   2         UartBuf[(InCount)&0x3F]=SBUF;
  45   2         UartBuf[InCount]=UartBuf[InCount]+1;
  46   2         InCount++;
  47   2        }
  48   1       else      //发送完一字节数据
  49   1        {
  50   2         TI=0;
  51   2         Sending=0;  //清正在发送标志
  52   2        }
  53   1      }
  54          ////////////////////////End of function//////////////////////////////
  55          
C51 COMPILER V8.09   UART                                                                  06/18/2008 16:40:38 PAGE 2   

  56          /********************************************************************
  57          函数功能:往串口发送一字节数据。
  58          入口参数:d: 要发送的字节数据。
  59          返    回:无。
  60          备    注:无。
  61          ********************************************************************/
  62          void UartPutChar(INT8U d)
  63          {
  64   1       while(Sending);
  65   1       Sending=1;
  66   1       SBUF=d;
  67   1      }
  68          ////////////////////////End of function//////////////////////////////


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     85    ----
   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 + -