serial.lst

来自「含有大量的单片机代码」· LST 代码 · 共 86 行

LST
86
字号
C51 COMPILER V7.06   SERIAL                                                                12/01/2006 19:38:54 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE SERIAL
OBJECT MODULE PLACED IN Serial.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Serial.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /*单片机与MAX232之间的通信程序*/
   2          
   3           #include "reg51.h"
   4           #include <absacc.h>
   5           #define uchar  unsigned char
   6           #define uint   unsigned int 
   7           #define COM81551 XBYTE[0xfd00]
   8           #define PA81551  XBYTE[0xfd01]
   9           #define PB81551  XBYTE[0xfd02]
  10           #define PC81551  XBYTE[0xfd03]
  11          
  12           #define COM81552 XBYTE[0xfe00]
  13           #define PA81552  XBYTE[0xfe01]
  14           #define PB81552  XBYTE[0xfe02]
  15           #define PC81552  XBYTE[0xfe03]
  16           volatile uchar  asting;//全局变量声明,以后就用这个全局变量进行命令字的接受和传送
  17           void interupt(void) interrupt 4  using 0 
  18           {  
  19   1         if(RI)
  20   1         {
  21   2          RI=0;
  22   2          asting=SBUF;
  23   2         } 
  24   1         if(TI)
  25   1         {
  26   2          TI=0;
  27   2          //这里也可以添加发送后的简单操作,不可以存在死循环
  28   2         }
  29   1       }
  30           void McuTx(void)
  31           {
  32   1        SBUF=asting;
  33   1        while(TI==0);//发生中断
  34   1        //下面的内容就是发送后的处理程序
  35   1       }
  36           void McuRx(void)
  37           {
  38   1        while(RI==0);//发生中断
  39   1        //下面的内容就是接收后的处理程序
  40   1       }
  41           void _44B0_MCU(void)
  42           {  
  43   1         TMOD =0x20;
  44   1         //TL1=0xf3;TH1=0xf3;
  45   1         //TL1=0xCC;TH1=0xCC;
  46   1         TL1=0xd0;TH1=0xd0;
  47   1         SCON =0xd8;
  48   1         PCON=0x00;     //串口接受字符RI复位,允许串口接收
  49   1         IE=0x90;   
  50   1         TR1=1;
  51   1         COM81551=0x0f;//写8155的命令字
  52   1         PB81551=0;
  53   1         McuRx();//跟44B0的发送程序联系起来
  54   1         McuTx();//跟44B0的接受程序联系起来
  55   1         PB81551=asting;//送8155的指示灯显示
C51 COMPILER V7.06   SERIAL                                                                12/01/2006 19:38:54 PAGE 2   

  56   1      }
  57          void main()
  58          {
  59   1       _44B0_MCU();
  60   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     69    ----
   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 + =
减小字号Ctrl + -
显示快捷键?