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

📄 uart.lst

📁 本人收集的一些C语言程序
💻 LST
字号:
C51 COMPILER V7.50   UART                                                                  02/21/2006 22:05:21 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE UART
OBJECT MODULE PLACED IN uart.OBJ
COMPILER INVOKED BY: e:\Keil\C51\BIN\C51.EXE uart.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <reg51.h>
   2          
   3          #define _TH0_TL0_       (65536 - 50000)  
   4          #define HI                      (_TH0_TL0_ / 256) //给高8位赋值
   5          #define LO                      (_TH0_TL0_ % 256) //给低8位赋值
   6          #define M                       20                //(1000/50)1秒要50个中断的累计
   7          
   8          sbit P2_4 = P2 ^ 4;
   9          sbit P2_6 = P2 ^ 6;
  10          
  11          unsigned char Seg_tab[] = {0x41, 0xf5, 0x29, 0x31, 0x95, 0x13, 0x03, 0x75, 0x01, 0x11,0x05,0x83,0x4b,0xa1,
             -0x0b,0x0f};//0-f数字
  12          unsigned char a;
  13          
  14          /***********************************************************************************************/
  15          void Delay(unsigned char a)
  16          {
  17   1              unsigned char i;
  18   1              while( --a != 0)
  19   1              {
  20   2                      for(i = 0; i < 125; i++);
  21   2              }
  22   1      }
  23          
  24          void IsrTimer0(void) interrupt 1 using 1    //定时器0中断服务程序
  25          {
  26   1              TR0 = 0;               //以下调整出栈入栈的时间误差
  27   1          TL0 += (_TH0_TL0_ + 9) % 256;
  28   1              TH0 += (_TH0_TL0_ + 9) / 256 + (char)CY;
  29   1          TR0 = 1;
  30   1      
  31   1              P2_4 = 0x00;
  32   1              P0 = Seg_tab[a/10];   //将得到的A值赋值给P1口。
  33   1              Delay(10);
  34   1              P2_4 = 0x01;
  35   1      
  36   1              P2_6 = 0x00;
  37   1              P0 = Seg_tab[a%10];
  38   1              Delay(10);
  39   1              P2_6 = 0x01;
  40   1      }
  41              
  42          /******************************************************************************************/
  43          void Timer0Init(void)  //初始化定时器0程序
  44          {
  45   1              TMOD = 0x01; //设置模式1 定时器0 工作方式0
  46   1      
  47   1              TH0 = HI; //给TH0,TL0赋初始值
  48   1              TL0 = LO;
  49   1      
  50   1              TR0 = 1;  //启动定时器0
  51   1              ET0 = 1;  //定时器中断开
  52   1              EA = 1; //总中断开
  53   1      }
  54          
C51 COMPILER V7.50   UART                                                                  02/21/2006 22:05:21 PAGE 2   

  55          /***********************************************************************************************/
  56          void main (void)
  57          {
  58   1              Timer0Init();
  59   1      
  60   1              P1   = 0xff;//关闭P1口的LED
  61   1              P2   = 0xff;
  62   1      
  63   1              TMOD = 0x20;  //在11.0592M下,设置波特率9600,方式1
  64   1              TL1 = 0xfd;
  65   1              TH1 = 0xfd;
  66   1              SCON = 0Xd8;
  67   1              PCON = 0X00;
  68   1              TR1 = 1;
  69   1      
  70   1              while(1)
  71   1              {
  72   2                      while(RI == 0);//等待接受完毕
  73   2                      RI  = 0;
  74   2                      a   = SBUF;//
  75   2                      P1  = a;
  76   2      
  77   2                      SBUF = a;//将A中的值发到PC上去
  78   2                      while(TI == 0);
  79   2                      TI = 0;
  80   2              }
  81   1      }
  82           
  83          
  84                  


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    151    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     17    ----
   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 + -