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

📄 uart.lst

📁 p89lpc915程序
💻 LST
字号:
C51 COMPILER V8.08   UART                                                                  07/26/2007 15:52:32 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE UART
OBJECT MODULE PLACED IN .\obj\UART.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE SRC\UART.C BROWSE DEBUG OBJECTEXTEND PRINT(.\lst\UART.lst) OBJECT(.\obj\UAR
                    -T.obj)

line level    source

   1          #ifdef PH_932
              #include <reg915.h>
              #include "comm.h"
              
              
              
              #include "message.h"
              #include "uart.h"
              
              char sbuf_value = 0;
              char rs232_command[6] = {0,0,0,0,0,0};
              char rs232_state = UART_IDLE;
              char rs232_cnt = 0;
              
              uchar last_sbuf_value = 0;
              bit rs232_flag = 0;
              void uart_isr() interrupt 4 using 2
              {
              
                      if(RI)
                              {
                              sbuf_value = SBUF;
                              RI = 0;
                              if(rs232_state == UART_IDLE)
                                      {
                                      if(sbuf_value == STX)   /*start*/
                                              {
                                              rs232_state = UART_RECEIVE;
                                              }
                                      rs232_cnt = 0;
                                      last_sbuf_value = 0xFF;
                                      }
                              else if(rs232_state == UART_RECEIVE)
                                      {
                                      if(rs232_cnt >= 6)
                                              {
                                              rs232_state = UART_IDLE;
                                              }
                                      else
                                              {
                                              if(last_sbuf_value == DLE)
                                                      {
                                                      if(sbuf_value == DLE)
                                                              {
                                                              rs232_command[rs232_cnt ++] = sbuf_value;
                                                              last_sbuf_value = 0xFF;
                                                              }
                                                      else if(sbuf_value == ETX)
                                                              {
                                                              rs232_state = UART_RECEIVE_OK;
                                                              last_sbuf_value = 0xFF;
                                                              rs232_cnt = 0;
                                                              }
                                                      else
C51 COMPILER V8.08   UART                                                                  07/26/2007 15:52:32 PAGE 2   

                                                              {
                                                              rs232_state = UART_IDLE;
                                                              }
                                                      }
                                              else
                                                      {
                                                      if(sbuf_value != DLE)
                                                              rs232_command[rs232_cnt++] = sbuf_value;
                                                      last_sbuf_value = sbuf_value;
                                                      }
                                              }
                                      }
                              }
              }
              #endif


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