📄 elite-iii.h
字号:
/*********************************************************************
*
* 文件名: ELITE-III.H
*
* 版本号: 0.1
*
* 原作者: ZeroStar < boylinxing@tom.com >
*
* 修改者: ZeroStar < boylinxing@tom.com >
*
* 创建日期: 01 / 24 / 2007
*
* 更新日期: 01 / 25 / 2007
*
* 文件功能: ELITE-III 实验板的 I/O 口资源分配说明
*
* 使用说明:
*
*********************************************************************/
#ifndef __ELITE_III_H__
#define __ELITE_III_H__
///////////////////////////////////////////////////////////////////////
/* 红外接收头 */
sbit IR_IN = P3^2; // 红外输入口为 INT0
/* EEPROM */
sbit EEPROM_SCL = P1^0; // EEPROM 的 SCL 口
sbit EEPROM_SDA = P1^1; // EEPROM 的 SDA 口
/* 液晶显示模块 LCD1602、实时时钟芯片 DS1302 */
sbit LCKLCD = P3^5;
sbit DS1302_SCLK = P1^1; // 移位时钟线 SCLK
sbit DS1302_IO = P1^2; // 串行数据输入输出端 I/O
sbit DS1302_CE = P1^4; // 片选线 CE (/RST)
sbit LCD_RS = P1^2; // LCD 使用的 RS 口
sbit LCD_RW = P1^3; // LCD 使用的 R/W口
sbit LCD_EP = P1^5; // LCD 使用的 VEE口
#define LCD_DATA P0 // LCD 使用的数据口
#define DS1302_SET_CE(ce) (LCKLCD = 0, DS1302_CE = ce, LCKLCD = 1)
#define LCD_SET_RS(rs) (LCKLCD = 0, LCD_RS = rs, LCKLCD = 1)
#define LCD_SET_RW(rw) (LCKLCD = 0, LCD_RW = rw, LCKLCD = 1)
#define LCD_SET_EP(ep) (LCKLCD = 0, LCD_EP = ep, LCKLCD = 1)
/* 其它:继电器、蜂鸣器、LED 8 x 8 点阵 */
sbit CS138 = P1^7;
sbit RELAY1 = P0^4;
sbit RELAY2 = P0^5;
sbit BUZZER = P0^6;
#define LED8X8_ROW P0
#define LED8X8_COL P0
static bit _RELAY1, _RELAY2, _BUZZER;
#define LCKR1 (0x8f)
#define LCKC1 (0x9f)
#define LCKDISP (0xaf)
#define CSad (0xbf)
#define RDkey (0xcf)
#define LCKMOTOR (0xdf)
#define LOCK_DATA(x) \
( \
P1 |= 0x70, \
P1 &= x, \
CS138 = 0, \
CS138 = 1, \
CS138 = 0 \
)
#define OTHERS_UPDATE() \
( \
RELAY1 = _RELAY1, \
RELAY2 = _RELAY2, \
BUZZER = _BUZZER, \
LOCK_DATA(LCKMOTOR) \
)
#define OTHERS_INIT() \
( \
_RELAY1 = 0, \
_RELAY2 = 0, \
_BUZZER = 0, \
OTHERS_UPDATE() \
)
#define RELAY1_ON() (_RELAY1 = 1, OTHERS_UPDATE())
#define RELAY1_OFF() (_RELAY1 = 0, OTHERS_UPDATE())
#define RELAY2_ON() (_RELAY2 = 1, OTHERS_UPDATE())
#define RELAY2_OFF() (_RELAY2 = 0, OTHERS_UPDATE())
#define BUZZER_ON() (_BUZZER = 1, OTHERS_UPDATE())
#define BUZZER_OFF() (_BUZZER = 0, OTHERS_UPDATE())
#define LED8X8_SET_ROW(x) (LED8X8_ROW = x, LOCK_DATA(LCKR1))
#define LED8X8_SET_COL(x) (LED8X8_COL = x, LOCK_DATA(LCKC1))
///////////////////////////////////////////////////////////////////////
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -