⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 data.h

📁 DS2480芯片是实现1-wire协议的芯片。本驱动使用C8051F206单片机与DS2480芯片进行交互
💻 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 + -