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

📄 串口测温.lst

📁 一个串口很好的测温程序
💻 LST
字号:
C51 COMPILER V7.06   __口测温                                                              11/24/2008 15:54:58 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE __口测温
OBJECT MODULE PLACED IN 串口测温.OBJ
COMPILER INVOKED BY: d:\Keil2\C51\BIN\C51.EXE 串口测温.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1           
   2          /*打开串口调试程序,将波特率设置为9600,无奇偶校验
   3          晶振11.0592MHz,发送和接收使用的格式相同,如都使用
   4          字符型格式,在发送框输入 hello,I Love MCU ,在接
   5          收框中同样可以看到相同字符,说明设置和通信正确
   6          www。doflye。cn 上海浩豚电子科技
   7          */
   8          #include <REG52.H>                           
   9          #include <stdio.h>     
  10          
  11          sbit KEY = P3^3;        
  12           
  13          unsigned char Flag;
  14          unsigned char Temp[5]="25.32";              
  15          /*主程序*/
  16          void Delay(unsigned char i)
  17           {
  18   1       while(--i);
  19   1       }
  20          void main (void)
  21          {
  22   1          unsigned char i;          //定义临时变量
  23   1          unsigned int j;
  24   1          SCON  = 0x50;                       /* SCON: 模式 1, 8-bit UART, 使能接收         */
  25   1          TMOD |= 0x20;               /* TMOD: timer 1, mode 2, 8-bit reload        */
  26   1          TH1   = 0xFD;               /* TH1:  reload value for 9600 baud @ 11.0592MHz   */
  27   1          TR1   = 1;                  /* TR1:  timer 1 run                          */
  28   1          EA    = 1;                  /*打开总中断*/
  29   1          ES    = 1;                  /*打开串口中断*/
  30   1          TI = 1;
  31   1      while (1)                       /*主循环不做任何动作*/
  32   1          {
  33   2              if(Flag == 's')
  34   2            {
  35   3                Flag=0;
  36   3                for(i=0;i<5;i++){
  37   4                while(!TI);
  38   4                TI=0;
  39   4                SBUF =  Temp[i];
  40   4          }
  41   3         }
  42   2         Delay(250);
  43   2         j++;
  44   2         //sprintf(Temp,"5%s",j);
  45   2      
  46   2        }
  47   1      }
  48          
  49          void UART_SER (void) interrupt 4 //串行中断服务程序
  50          {
  51   1          
  52   1         
  53   1         if(RI)                        //判断是接收中断产生
  54   1           {
  55   2                RI=0;                      //标志位清零
C51 COMPILER V7.06   __口测温                                                              11/24/2008 15:54:58 PAGE 2   

  56   2                Flag=SBUF;                 //读入缓冲区的值
  57   2                P1=Flag;                   //把值输出到P1口,用于观察
  58   2               }
  59   1      
  60   1      } 


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