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

📄 ch452l.lst

📁 利用单片机实现的控制电梯系统
💻 LST
字号:
C51 COMPILER V7.50   CH452L                                                                05/15/2008 15:59:16 PAGE 1   


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

line level    source

   1          /* ***************************
   2           Website:  http://wch.cn
   3           Email:    tech@wch.cn
   4           Author:   W.ch 2005.4
   5           CH452的4线接口子程序
   6          ****************************
   7           CH45X的4线接口,不含按键中断为3个I/O引脚,含按键中断为4个I/O,类似SPI时序,
   8           四线制方式也可以参照CH451,其中对CH451的选择4线串行接口初始化子函数可以省去
   9          *************************************************************************** */
  10          #include        "PIN.H"                 // 修改该文件以适应硬件环境/单片机型号等
  11          #include        "CH452CMD.H"    // CH452常量定义
  12          #include    "definition.h"
  13          #define uchar unsigned char
  14          #define uint unsigned int
  15          extern uchar storey;
  16          extern uchar inside_request;
  17          extern uchar outside_request;
  18          bit stop=0;
  19          
  20          void CH452_Write(unsigned short cmd)
  21          {
  22   1              unsigned char i;
  23   1              DISABLE_KEY_INTERRUPT;            //禁止键盘中断,防止传输过程中被CH452中断而进入中断服务程序中再次传输
  24   1              CH452_LOAD_CLR;                 //命令开始,LOAD=0
  25   1              CH452_LOAD_D_OUT;               // 设置LOAD为输出方向
  26   1              CH452_DOUT_D_IN;                // 设置DOUT为输入方向
  27   1              CH452_DIN_D_OUT;                // 设置DIN为输出方向
  28   1              CH452_DCLK_D_OUT;               // 设置DCLK为输出方向
  29   1              for(i=0;i!=12;i++)                              //送入12位数据,低位在前
  30   1              {
  31   2                      if (cmd&1) {CH452_DIN_SET;}
  32   2                      else {CH452_DIN_CLR;}  // 输出位数据
  33   2      //              CH452_DIN=cmd&1;
  34   2              CH452_DCLK_CLR;
  35   2              cmd>>=1;
  36   2              CH452_DCLK_SET;             //上升沿有效
  37   2              }
  38   1              CH452_LOAD_SET;         //加载数据,LOAD上升沿
  39   1              DELAY_1US;                              //命令数据加载周期不小于6US,CH451不需要该周期
  40   1              DELAY_1US;
  41   1              DELAY_1US;
  42   1              DELAY_1US;
  43   1              DELAY_1US;
  44   1              DELAY_1US;
  45   1              ENABLE_KEY_INTERRUPT;
  46   1      }
  47          
  48          //*************************************************
  49          //输入按键代码子程序,从CH452读取
  50          unsigned char CH452_Read( void )
  51          {
  52   1              unsigned char i;
  53   1              unsigned char cmd,keycode;              //定义命令字,和数据存储器
  54   1              DISABLE_KEY_INTERRUPT;                                 //禁止键盘中断,防止传输过程中被CH452中断而进入中断服务程序中再

⌨️ 快捷键说明

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