?? main.h
字號:
//*************************************************************************
//**軟 件 名:滅火控制盤(XMP4-2)
//**模 塊 名:main.h
//**說 明:頭文件
//** 定義關鍵字
//** IO口定義
//** 全局變量外部定義
//** 全局函數外部定義
//*************************************************************************
#include <absacc.h>
//簡化變量定義
#define uchar unsigned char
#define uint unsigned int
//定義鍵值常量
#define RESET 1
#define MUTE 2
#define TEST 4
#define SETUP 8
#define OK 16
#define UP 32
#define DOWN 64
#define QUERY 96
//定義初始化密碼
#define PASSWORD 0x0F
//定義液晶命令代碼
//液晶開
#define Disp_On 0x3f
//液晶關
#define Disp_Off 0x3e
//液晶列地址
#define Col_Add 0x40
//液晶頁地址
#define Page_Add 0xb8
//液晶起始行
#define Start_Line 0xc0
//液晶數據說明
//液晶開 0x3f
//液晶關 0x3e
//液晶Y地址(列) 0x40+(0-63
//液晶X地址(頁) 0xb8+(0-7
//液晶Z地址(起始行) 0xc0+(0-63
//液晶狀態格式 BUSY,0,ON/OFF,RESET,0,0,0,0
//定時器初值定義
#define TH0INIT 0xDC //定時器0 方式1 定時時間為 10ms 晶振為 11.0592MHz
#define TL0INIT 0x32
//地址定義
//EEPROM29C040地址
//集成電路:D15(AT29C040)
//網 絡 表:AZK
#define EEPROM29040 XBYTE[0x8000]
//讀取賽福德的YD8000傳來的啟動和停止命令
//集成電路:D25(74HC245)
//網 絡 表:YML
#define READYD8000COMMAND XBYTE[0x9000]
//一區檢測信號輸入地址
//集成電路:D10(74HC245)
//網 絡 表:YB2
#define ONEPORTDETECT XBYTE[0x9800]
//二區檢測信號輸入地址
//集成電路:D10(74HC245)
//網 絡 表:YB3
#define TWOPORTDETECT XBYTE[0xA000]
//三區檢測信號輸入地址
//集成電路:D10(74HC245)
//網 絡 表:YB4
#define THREEPORTDETECT XBYTE[0xA800]
//四區檢測信號輸入地址
//集成電路:D10(74HC245)
//網 絡 表:YB5
#define FOURPORTDETECT XBYTE[0xB000]
//一區故障檢測地址
//集成電路:D12(74HC245)
//網 絡 表:YC2
#define ONEPORTFAULTEST XBYTE[0xB800]
//二區故障檢測地址
//集成電路:D12(74HC245)
//網 絡 表:YC3
#define TWOPORTFAULTEST XBYTE[0xC000]
//三區故障檢測地址
//集成電路:D12(74HC245)
//網 絡 表:YC4
#define THREEPORTFAULTEST XBYTE[0xC800]
//四區故障檢測地址
//集成電路:D12(74HC245)
//網 絡 表:YC5
#define FOURPORTFAULTEST XBYTE[0xD000]
//AD轉換ADC0809地址(在此處列出了八個通道的地址)
//集成電路:D8(ADC0809)
//網 絡 表:A/D
#define CHANNLE1 XBYTE[0xD800]
#define CHANNLE2 XBYTE[0xD801]
#define CHANNLE3 XBYTE[0xD802]
#define CHANNLE4 XBYTE[0xD803]
#define CHANNLE5 XBYTE[0xD804]
#define CHANNLE6 XBYTE[0xD805]
#define CHANNLE7 XBYTE[0xD806]
#define CHANNLE8 XBYTE[0xD807]
//12864A液晶顯示器的地址
//集成電路:L12864A(X4)
//網 絡 表:ALCD
#define DISPLAY_ADDRESS XBYTE[0xE000]
//向右屏寫命令地址
#define WR_CMD2 XBYTE[0xE002]
//向左屏寫命令地址
#define WR_CMD1 XBYTE[0xE004]
//向右屏寫數據地址
#define WR_DAT2 XBYTE[0xE003]
//向左屏寫數據地址
#define WR_DAT1 XBYTE[0xE005]
//讀右屏命令地址
#define RD_CMD2 XBYTE[0xE00A]
//讀左屏命令地址
#define RD_CMD1 XBYTE[0xE00C]
//讀右屏數據地址
#define RD_DAT2 XBYTE[0xE00B]
//讀左屏數據地址
#define RD_DAT1 XBYTE[0xE00D]
//鍵盤列掃描地址
//集成電路:D12(74HC245)
//網 絡 表:JPCS
#define KEY_PORT XBYTE[0xE800]
//時鐘DS12887各個地址
//集成電路:D7(DS12887)
//網 絡 表:SZCS
//DS12887秒地址(0-59)
#define P128870 XBYTE[0xF000]
//DS12887秒報警地址(0-59)
#define P128871 XBYTE[0xF001]
//DS12887分地址(0-59)
#define P128872 XBYTE[0xF002]
//DS12887分報警地址(0-59)
#define P128873 XBYTE[0xF003]
//DS12887小時地址(1-12或0-23)
#define P128874 XBYTE[0xF004]
//DS12887小時報警地址(1-12或0-23)
#define P128875 XBYTE[0xF005]
//DS12887星期的地址(星期日為1)
#define P128876 XBYTE[0xF006]
//DS12887天的地址
#define P128877 XBYTE[0xF007]
//DS12887月的地址
#define P128878 XBYTE[0xF008]
//DS12887年的地址
#define P128879 XBYTE[0xF009]
//DS12887的A寄存器
#define P12887a XBYTE[0xF00A]
//DS12887的B寄存器
#define P12887b XBYTE[0xF00B]
//DS12887的C寄存器
#define P12887c XBYTE[0xF00C]
//DS12887的D寄存器
#define P12887d XBYTE[0xF00D]
//四個區的開關
#define Qu_onoff XBYTE[0xF011]
//手動啟動延時時間
#define SD_time XBYTE[0xF012]
//自動啟動延時時間
#define ZD_time XBYTE[0xF013]
//一區LED顯示地址
//集成電路:D3(74HC273)
//網 絡 表:YB2
#define ONEPORTLEDDISP XBYTE[0xF800]
//二區LED顯示地址
//集成電路:D3(74HC273)
//網 絡 表:YB3
#define TWOPORTLEDDISP XBYTE[0xF900]
//三區LED顯示地址
//集成電路:D3(74HC273)
//網 絡 表:YB4
#define THREEPORTLEDDISP XBYTE[0xFA00]
//四區LED顯示地址
//集成電路:D3(74HC273)
//網 絡 表:YB5
#define FOURPORTLEDDISP XBYTE[0xFB00]
//向賽福德的YD8000傳送四個區的狀態
//集成電路:D11(74HC273)
//網 絡 表:YA6
#define SENDSTATUS XBYTE[0xFC00]
//選擇AT29C040高七位地址的地址
//集成電路:D21(74HC273)
//網 絡 表:YA7
#define HIGH040ADDRESS XBYTE[0xFD00]
//鍵盤行掃描地址(包括狀態燈顯示,485狀態轉換)
//集成電路:D13(74HC273)
//網 絡 表:YA8
#define KEYCOL_SCAN XBYTE[0xFE00]
//打印機地址
//集成電路:X5
//網 絡 表:PRINT
#define PRINTPORT XBYTE[0xFF00]
//***********************IO口定義***********************
sfr P4 = 0xe8;
sbit P43 = P4^3; //IN_S2
sbit P42 = P4^2; //IN_O2
sbit P41 = P4^1; //IN_S1
sbit P40 = P4^0; //IN_O1
sbit HJLED = P1^0; //火警燈
sbit GZLED = P1^1; //故障燈
sbit ZQDLED = P1^2; //總啟動燈
sbit YSLED = P1^3; //延時燈
sbit YSQD = P1^4; //對繼電器延時上電位
sbit CHCNTL = P1^5; //備電充電控制
sbit ACOK = P1^6; //主電故障檢測
sbit CDOK = P1^7; //充電故障檢測
sbit IKEY = P3^2; //鍵盤中斷
sbit DCOK = P3^3; //備電故障檢測
sbit P_BUSY = P3^5; //打印機忙標志
sbit BUZZ = P3^4; //蜂鳴器控制端
//*******代碼段的數組定義******************************
extern uchar code asc_num[];
extern uchar code asc_xiexian[];
extern uchar code asc_maohao[];
extern uchar code asc_s[];
extern uchar code hz_ying[];
extern uchar code hz_kou[];
extern uchar code hz_huan[];
extern uchar code hz_ying1[];
extern uchar code hz_shi1[];
extern uchar code hz_yong[];
extern uchar code hz_qi1[];
extern uchar code hz_ti[];
extern uchar code hz_zi[];
extern uchar code hz_dong[];
extern uchar code hz_mie[];
extern uchar code hz_kong[];
extern uchar code hz_zhi[];
extern uchar code hz_pan[];
extern uchar code hz_xi[];
extern uchar code hz_tong[];
extern uchar code hz_yun[];
extern uchar code hz_xing[];
extern uchar code hz_cu[];
extern uchar code hz_shi4[];
extern uchar code hz_hua[];
extern uchar code hz_zhong[];
extern uchar code hz_jian[];
extern uchar code hz_gong[];
extern uchar code hz_zuo[];
extern uchar code hz_zheng[];
extern uchar code hz_chang[];
extern uchar code hz_gu[];
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -