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

📄 main.lst

📁 CH452 PDF 中文资料 在kei环境下开发
💻 LST
字号:
C51 COMPILER V7.06   MAIN                                                                  01/17/2009 09:53:34 PAGE 1   


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

stmt level    source

   1          #include        "CH452_PIN_DEFINE.H"    // 修改该文件以适应硬件环境/单片机型号等
   2          #include        "CH452_COM_DEFIND.H"    // CH452常量定义   
   3          
   4          /* 4线接口的连接 */
   5          /*
   6          sbit   CH452_DCLK=P1^7;                     // 串行数据时钟上升延激活
   7          sbit   CH452_DIN=P1^6;                          // 串行数据输出,接CH452的数据输入
   8          sbit   CH452_DOUT=P1^5;                     // INT1,键盘中断和键值数据输入,接CH452的数据输出
   9          sbit   CH452_LOAD=P1^4;                     // 串行命令加载,上升延激活
  10          */
  11          //函数名:void UART_PORT_Init()
  12          //功能:初始化串口
  13          //输入参数:无
  14          //输出参数;无
  15          //注意事项;传输速率的选择
  16          void UART_PORT_Init()
  17          {       
  18   1          TMOD=0x21;         //0010 0001定时器设置,方式2,自动重装
  19   1          PCON=0x80;        //1000 0000电源管理
  20   1          SCON=0x50;       //0101 0000 8位可变速率,无奇偶效验位,工作方式1
  21   1          TH1=0xFD;          //波特率 19200
  22   1              RI=0;         //关接收中断
  23   1              TI=0;        //关发送中断
  24   1              ES=1;       //允许串口中断
  25   1              TR1=1;    //启动定时器1
  26   1              EA=1;     //允许总中断
  27   1      }
  28          //函数名:void send_UART(int senddata)
  29          //功能:向上位机发送数据
  30          //输入参数:senddata(发送的数据)
  31          //输出参数;无
  32          //注意事项;清除中断标志
  33          void send_UART(int senddata)
  34          {
  35   1          TI=0;               //清除中断标志位
  36   1          ES=0;              //不允许串口中断
  37   1          SBUF=senddata;    //把数据发送给串口
  38   1          while(TI==0);    //等待发送完毕
  39   1          TI=0;           //清除中断标志位
  40   1          ES=1;          //允许总中断
  41   1      }
  42          //函数名:int GetKeyValve()
  43          //功能:取按键的值
  44          //输入参数:无
  45          //输出参数;按键的值
  46          //注意事项;
  47          int GetKeyValve()
  48          {
  49   1         int keycode;
  50   1         switch(CH452_Read())
  51   1                 {
  52   2              case 0x5B: keycode='0';break;
  53   2                      case 0x5A: keycode='0'+1;break;
  54   2                      case 0x52: keycode='0'+2;break;
  55   2                      case 0x4A: keycode='0'+3;break;
C51 COMPILER V7.06   MAIN                                                                  01/17/2009 09:53:34 PAGE 2   

  56   2                      case 0x58: keycode='0'+4;break;
  57   2                      case 0x50: keycode='0'+5;break;
  58   2                      case 0x48: keycode='0'+6;break;
  59   2                      case 0x59: keycode='0'+7;break;
  60   2                      case 0x51: keycode='0'+8;break;
  61   2                      case 0x49: keycode='0'+9;break;
  62   2                      case 0x53: keycode='.';break;
  63   2                      case 0x4B: keycode='Q';break;
  64   2                      case 0x43: keycode='S';break;
  65   2                      case 0x42: keycode='+';break;
  66   2                      case 0x40: keycode='-';break;
  67   2                      case 0x41: keycode='F';break;
  68   2                      default:break;
  69   2                 }
  70   1           return keycode;
  71   1      }
  72          //函数名:void main()
  73          //功能:扫描键盘值
  74          //输入参数:无

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -