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

📄 keyp_232.lst

📁 外国人写的调度器
💻 LST
字号:
C51 COMPILER V6.10  KEYP_232                                                               04/18/2001 16:17:13 PAGE 1   


C51 COMPILER V6.10, COMPILATION OF MODULE KEYP_232
OBJECT MODULE PLACED IN .\KEYP_232.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE .\KEYP_232.C OPTIMIZE(6,SPEED) BROWSE DEBUG OBJECTEXTEND SYMBOLS

stmt level    source

   1          /*------------------------------------------------------------------*-
   2          
   3             Keyp_232.C (v1.00)
   4          
   5            ------------------------------------------------------------------
   6          
   7             Simple demonstration function for transferring keypad inputs to
   8             PC via serial (RS232) link. 
   9          
  10          
  11             COPYRIGHT
  12             ---------
  13          
  14             This code is from the book:
  15          
  16             PATTERNS FOR TIME-TRIGGERED EMBEDDED SYSTEMS by Michael J. Pont 
  17             [Pearson Education, 2001; ISBN: 0-201-33138-1].
  18          
  19             This code is copyright (c) 2001 by Michael J. Pont.
  20           
  21             See book for copyright details and other information.
  22          
  23          -*------------------------------------------------------------------*/
  24          
  25          #include "Main.h"
  26          #include "Keypad.h"
  27          #include "Keyp_232.h"
  28          #include "PC_O.h"
  29          
  30          // ------ Private variables ----------------------------------------
  31          
  32          tByte Count_G;
  33          
  34          /*------------------------------------------------------------------*-
  35          
  36            Keypad_RS232_Init()
  37          
  38            Init function for simple library displaying keypad inputs
  39            over serial link.
  40          
  41          -*------------------------------------------------------------------*/
  42          void Keypad_RS232_Init(void)
  43             {
  44   1         PC_LINK_O_Write_String_To_Buffer("Keypad test code - READY\n");
  45   1      
  46   1         Count_G = 0;
  47   1         
  48   1         KEYPAD_Clear_Buffer();
  49   1         }
  50          
  51          
  52          /*------------------------------------------------------------------*-
  53          
  54            Keypad_RS232_Update()
  55          
C51 COMPILER V6.10  KEYP_232                                                               04/18/2001 16:17:13 PAGE 2   

  56            Function for displaying keypad inputs over serial link.
  57          
  58          -*------------------------------------------------------------------*/
  59          void Keypad_RS232_Update(void)     
  60             {
  61   1         char Key, FnKey;
  62   1      
  63   1         // Update the keypad buffer
  64   1         KEYPAD_Update();
  65   1         
  66   1         // Is there any new data in the keypad buffer?
  67   1         if (KEYPAD_Get_Data_From_Buffer(&Key, &FnKey) == 0)
  68   1            {
  69   2            // No new data.
  70   2            return;
  71   2            }
  72   1      
  73   1         // Function key has been pressed (with another key)
  74   1         if (FnKey)
  75   1            {
  76   2            PC_LINK_O_Write_Char_To_Buffer('\n');
  77   2            PC_LINK_O_Write_Char_To_Buffer(FnKey);
  78   2            PC_LINK_O_Write_Char_To_Buffer(Key);
  79   2            PC_LINK_O_Write_Char_To_Buffer('\n');
  80   2      
  81   2            Count_G = 0;
  82   2            }
  83   1         else
  84   1            {
  85   2            // An ordinary key (no function key) has been pressed
  86   2            PC_LINK_O_Write_Char_To_Buffer(Key);
  87   2            
  88   2            if (++Count_G == 10) 
  89   2               {
  90   3               PC_LINK_O_Write_Char_To_Buffer('\n');
  91   3               Count_G = 0;
  92   3               }
  93   2            }
  94   1         }
  95          
  96          /*------------------------------------------------------------------*-
  97            ---- END OF FILE -------------------------------------------------
  98          -*------------------------------------------------------------------*/ 
C51 COMPILER V6.10  KEYP_232                                                               04/18/2001 16:17:13 PAGE 3   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


T2I0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C8H  1
T2I1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C9H  1
P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
P3 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
T0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B4H  1
AC . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D6H  1
P4 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00E8H  1
T1 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B5H  1
T2 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0097H  1
BD . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00DFH  1
tLong. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_LONG   -----  4
KEYPAD_Update. . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
T2R0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CBH  1
T2R1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CCH  1
tByte. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
IEN0 . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A8H  1
EADC . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B8H  1
IEN1 . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B8H  1
IADC . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C0H  1
tWord. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
I2FR . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CDH  1
I3FR . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CEH  1
EXF2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C7H  1
RD . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B7H  1
T2CM . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CAH  1
ADCON0 . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D8H  1
ES . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ACH  1
IEX2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C1H  1
IEX3 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C2H  1
IEX4 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C3H  1
RI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0098H  1
IEX5 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C4H  1
INT0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B2H  1
CY . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D7H  1
IEX6 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C5H  1
TI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0099H  1
INT1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B3H  1
INT2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0094H  1
INT3 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0090H  1
INT4 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
INT5 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0092H  1
INT6 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0093H  1
ADEX . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00DDH  1
INT8 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00EDH  1
T2EX . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0095H  1
OV . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D2H  1
WR . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
T2PS . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CFH  1
ADST . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00E8H  1
SCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00E9H  1
RXDC . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00EFH  1
Count_G. . . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0000H  1
_KEYPAD_Get_Data_From_Buffer . . . . .  EXTERN   CODE   PROC     -----  -----
TXDC . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00EEH  1
SCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0098H  1
TCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0088H  1
IE0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0089H  1
C51 COMPILER V6.10  KEYP_232                                                               04/18/2001 16:17:13 PAGE 4   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


IE1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008BH  1
SWDT . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BEH  1
Keypad_RS232_Update. . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  Key. . . . . . . . . . . . . . . . .  AUTO     DATA   CHAR     0000H  1
  FnKey. . . . . . . . . . . . . . . .  AUTO     DATA   CHAR     0001H  1
KEYPAD_Clear_Buffer. . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
ET0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A9H  1
ET1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ABH  1
TF0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008DH  1
ET2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ADH  1
TF1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008FH  1
TF2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C6H  1
RB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009AH  1
EX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A8H  1
IT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0088H  1
TB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009BH  1
EX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AAH  1
IT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008AH  1
EX2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B9H  1
P. . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D0H  1
SM0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009FH  1
EX3. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BAH  1
SM1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009EH  1
EX4. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BBH  1
ADM. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00DBH  1
SM2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009DH  1
EX5. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BCH  1
EAL. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AFH  1
EX6. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BDH  1
CLKOUT . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0096H  1
MX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D8H  1
RS0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D3H  1
MX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D9H  1
TR0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008CH  1
RS1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D4H  1
MX2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00DAH  1
TR1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008EH  1
CLK. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00DEH  1
_PC_LINK_O_Write_String_To_Buffer. . .  EXTERN   CODE   PROC     -----  -----
EXEN2. . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BFH  1
_PC_LINK_O_Write_Char_To_Buffer. . . .  EXTERN   CODE   PROC     -----  -----
REN. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009CH  1
T2CON. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00C8H  1
SRI. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00EAH  1
BSY. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00DCH  1
RXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B0H  1
WDT. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AEH  1
TXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B1H  1
SLS. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ECH  1
F0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D5H  1
Keypad_RS232_Init. . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
STO. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00EBH  1
F1 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D1H  1
PSW. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D0H  1
IRCON. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00C0H  1


MODULE INFORMATION:   STATIC OVERLAYABLE
C51 COMPILER V6.10  KEYP_232                                                               04/18/2001 16:17:13 PAGE 5   

   CODE SIZE        =     88    ----
   CONSTANT SIZE    =     26    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1       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 + -