📄 data.h
字号:
//-----------------------------------------------------------------------------
// 任务的三个状态
//-----------------------------------------------------------------------------
#define RUNNING 2 // 运行
#define READY 1 // 准备
#define SLEEPING 0 // 睡眠
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// 任务数量和各自的定义
//-----------------------------------------------------------------------------
#define NUM_OF_TASKS 4 // 3个任务
#define READROMIDTASK 0 // 读取iButton的ID号任务
#define SENDROMIDTASK 1 // 发送iButton的ID号任务
#define DETECTDS2480STASK 2 // 检查DS2480S是否连接好
#define DETECTONLINETASK 3 // 检测iButton在线通知任务
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// 外部时钟定义和T0,T1的计数参数设置
//-----------------------------------------------------------------------------
#define CRYSTAL_CLOCK 4000000L // 外部时钟4M
#define TIMER0_RELOAD_HIGH (-CRYSTAL_CLOCK/1050) >> 8 //定义两个时钟都是1ms溢出
#define TIMER0_RELOAD_LOW -CRYSTAL_CLOCK/1050
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// UART通讯
//-----------------------------------------------------------------------------
#define BAUDRATE 9600 // UART通讯率9600bps
#define UART_BUFFERSIZE 16 // 读写缓冲区的大小
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// 通讯协议
//-----------------------------------------------------------------------------
#define START_TAG 0x55 // 起始字节
#define END_TAG 0xAA // 结束字节
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// 其它
//-----------------------------------------------------------------------------
#define NUM_OF_FLOOR 2 // 楼层数目定义
#define READTIMEOUT_PER_BYTE 2 // 每字节读超时 2ms
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// nRF401使用端口定义 For 鲁千红
//-----------------------------------------------------------------------------
sbit DIN = P2^6; // Data input (15 leg)
sbit DOUT = P2^5; // Data input (16 leg)
sbit PWR_UP = P2^7; // Power on/off (18 leg)
// PWR_UP = '1' T Power up (Operating mode)
// PWR_UP = '0' T Power down (Standby mode)
sbit CS = P2^4; // Channel selection (19 leg)
// CS = '0' T 433.92MHz (Channel#1)
// CS = '1' T 434.33MHz (Channel#2)
sbit TXEN = P3^7; // Transmit enable (17 leg)
// TXEN = '1' T Transmit mode
// TXEN = '0' T Receive mode
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// 蜂鸣器与指示灯
//-----------------------------------------------------------------------------
sbit SOUND = P0^5;
sbit LED = P3^6;
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// 楼层对照表结构定义
//-----------------------------------------------------------------------------
typedef struct
{
char floornum; //楼层号
char romid[8]; //ROM ID
} TRN;
//-----------------------------------------------------------------------------
// 任务结构体定义
//-----------------------------------------------------------------------------
typedef struct
{
char *taskname;
unsigned char status; /*0-sleeping,1-ready,2-running*/
void (*entry_addr)(void);
} TCB;
//-----------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -