📄 ch452_2407_pin.h.bak
字号:
//#define ENABLE_2_CH452 1 // 在2线接口下支持两个CH452芯片并联
/* 延时1uS子程序,主要用于2线接口,与单片机速度有关 */
//#define DELAY_1US {} // MCS51<=10MHz
//#define DELAY_1US {_nop_();} // MCS51<=20MHz
#define DELAY(N) {ASM("RPT N");
ASM("NOP"); } // MCS51<=30MHz
/* 2线接口的连接,与实际电路有关 */
//sbit CH452_SCL=P1^7;
//sbit CH452_SDA=P1^6; // 如果使用真正的2线接口,那么SDA接中断引脚P3^3/INT1,用SDA直接做中断输出
//sbit CH452_ADDR=P1^5; // 实际电路应该硬件接GND或者VCC
//sbit CH452_INT=P3^3; // 标准的2线接口使用该引脚输出中断
/* 4线接口的连接,与实际电路有关 */
//sbit CH452_DCLK=P1^7; // 串行数据时钟上升延激活
//sbit CH452_DIN=P1^6; // 串行数据输出,接CH452的数据输入
//sbit CH452_LOAD=P1^5; // 串行命令加载,上升延激活
//sbit CH452_DOUT=P3^3; // INT1,键盘中断和键值数据输入,接CH452的数据输出
/* 2线接口的位操作,与单片机有关 */
//#define CH452_SCL_SET {CH452_SCL=1;}
//#define CH452_SCL_CLR {CH452_SCL=0;}
//#define CH452_SDA_SET {CH452_SDA=1;}
//#define CH452_SDA_CLR {CH452_SDA=0;}
//#define CH452_SDA_IN (CH452_SDA)
/* 4线接口的位操作,与单片机有关 */
#define bit_0 (0x01<<0);
#define bit_1 (0x01<<1);
#define bit_2 (0x01<<2);
#define bit_3 (0x01<<3);
#define bit_4 (0x01<<4);
#define bit_5 (0x01<<5);
#define bit_6 (0x01<<6);
#define bit_7 (0x01<<7);
#define CH452_DCLK_SET {*PFDATDIR|=bit_3;}
#define CH452_DCLK_CLR {*PFDATDIR&=bit_3;}
#define CH452_DIN_SET {*PFDATDIR|=bit_4;}
#define CH452_DIN_CLR {*PFDATDIR|=bit_4;}
#define CH452_LOAD_SET {*PFDATDIR|=bit_5;}
#define CH452_LOAD_CLR {*PFDATDIR|=bit_5;}
/* 与单片机有关,与中断连接方式有关 */
//#define DISABLE_INTERRUPT {EX1=0;}
///#define ENABLE_INTERRUPT {EX1=1;}
//#define CLEAR_INTER_FLAG {IE1=0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -