📄 system.h
字号:
#ifndef _SYSTEM_H_
#define _SYSTEM_H_
#include <ABSACC.H>
#include <w77C32.h>
#include <stdio.h>
#pragma SAVE
#pragma REGPARMS
typedef union
{
unsigned int vd;
struct
{
unsigned char vh;
unsigned char vl;
}vol;
}Vtouch;
#define vEnterInterrupt() EA = 1 //开中断
#define vExitInterrupt() EA = 0 //关中断
#define Twc 20 //Flash擦写周期
#define Sp756P 1
#if Sp756P==1
sbit v_Io = P1^7;
sbit v_Fr = P3^4;
sbit v_Tc = P1^6;
sbit v_A16 = P1^4;
sbit v_A17 = P1^5;
#define vEnterIo() {v_Io = 1;}
#define vEnterRam() {v_Fr=1;v_Io = 0;}
#define vEnterFlash() {v_Fr=0;v_Io = 0;}
#define vKeyScan(V1) {ACC = V1; vEnterIo(); XBYTE[0x8209] = ACC; vEnterRam();}//键盘扫描输出
#define vDeuteriumDrv(V1) {ACC = V1; vEnterIo(); XBYTE[0x820c] = ACC; vEnterRam();}//氘灯控制
#define vBeepDrv(V1) {ACC = V1; vEnterIo(); XBYTE[0x820d] = ACC; vEnterRam();}//蜂鸣器控制
#define vLcdCmdPort(V1) {ACC = V1; vEnterIo(); XBYTE[0x8601] = ACC; vEnterRam();}//LCD代码输出
#define vLcdDataPort(V1) {ACC = V1; vEnterIo(); XBYTE[0x8600] = ACC; vEnterRam();}//LCD数据输出
#define vLcdRdataPort(V1) {vEnterIo(); V1 = XBYTE[0x8601]; vEnterRam();}//读LCD数据
#define vLcdStatusPort(V1) {vEnterIo(); V1 = XBYTE[0x8600]; vEnterRam();}//读LCD状态
#define vKeyInput(V1) {vEnterIo(); V1 = XBYTE[0x8210]; vEnterRam();}//键盘扫描输入
#define Toach_Com(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF0C] = ACC; vEnterRam(); v_Tc=1;} //触摸屏命令输出
#define Toach_Pos(V1) {vEnterIo(); ACC = XBYTE[0xFF0D]; vEnterRam(); V1 = ACC; v_Tc=0;} //触摸屏位置输入
#else
sbit v_Io = P1^7;
sbit v_Fr = P3^4;
sbit v_Tc = P1^6;
#define vEnterIo() {v_Io = 1;}
#define vEnterRam() {v_Fr=1;v_Io = 0;}
#define vEnterFlash() {v_Fr=0;v_Io = 0;}
#define UsbReadData(V1) {inio; ACC = XBYTE[0xFF00]; inram; V1 = ACC;} //读USB数据
#define UsbWriteData(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF00] = ACC; vEnterRam();} //写USB数据
#define UsbWriteCom(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF01] = ACC; vEnterRam();} //写USB命令
#define UsbIdl(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF02] = ACC; vEnterRam();} //休眠USB
#define vKeyInput(V1) {inio; ACC = XBYTE[0xFF03]; inram; V1 = ACC;} //键盘扫描输入
#define vKeyScan(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF04] = ACC; vEnterRam();} //键盘扫描输出
#define beep_driver(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF08] = ACC; vEnterRam();} //蜂鸣器控制
#define vLcdCmdPort(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF09] = ACC; vEnterRam();} //LCD代码输出
#define vLcdDataPort(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF0A] = ACC; vEnterRam();} //LCD数据输出
#define LcmRstPort(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF0B] = ACC; vEnterRam();} //LCD复位输出
#define Toach_Com(V1) {ACC = V1; vEnterIo(); XBYTE[0xFF0C] = ACC; vEnterRam(); v_Tc=1;} //触摸屏命令输出
#define Toach_Pos(V1) {vEnterIo(); ACC = XBYTE[0xFF0D]; vEnterRam(); V1 = ACC; v_Tc=0;} //触摸屏位置输入
#define vBankValue(V1) {vEnterRam(); XBYTE[0xFFFF] = V1;}
#endif
void wait_ms(unsigned int click);
#pragma RESTORE
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -