📄 ds18b20.h
字号:
//-----------------------------------------------------------------
// 名称: DS18B20头文件
//-----------------------------------------------------------------
#define INT8 signed char
#define INT8U unsigned char
#define INT16U unsigned int
#define DQ RD1 //DS18B20数据线
#define DQ_DIR TRISD1 //DS18B20数据线方向
#define DQ_HIGH() DQ_DIR = 1 //设置DQ线为输入
#define DQ_LOW() DQ = 0; DQ_DIR = 0 //设置DQ线为输出
#define VPU() TRISD0 = 0; RD0 = 0 //强上拉开关(寄生供电)
//DS18B20 ROM命令集
#define SERACH_ROM 0xF0 //ROMCODE搜索命令
//#define READ_ROM 0x33 //读单ROMCODE命令
#define MATCH_ROM 0x55 //搜索共用1-Wire总线的多片DS18B20的ROMCODE
//#define SKIP_ROM 0xCC //跳过ROM命令
//#define ALARM_SERACH 0xEC //查找报警ROM命令
//DS18B20功能命令集
#define CONVERT 0x44 //温度转换
#define WRITE_SCRATCHPAD 0x4E //写DS18B20RAM
#define READ_SCRATCHPAD 0xBE //读DS18B20RAM
#define COPY_SCRATCHPAD 0x48 //复制RAM数据到EEPROM
#define RECALL_EE 0xB8 //从EEPROM恢复数据到RAM
#define READ_POWER_SUPPLY 0xB4 //读器件供电方式
//-----------------------------------------------------------------
// 函数声明
//-----------------------------------------------------------------
void RESET();
void ROMCODE_Match(INT8U *);
void Write_Byte(INT8U);
INT8U Read_Byte();
float Get_Temperature(INT8U *);
INT8U READ_ID_BIT();
INT8U Search_ALL_ROM();
INT8U Search_ROM1();
INT8U Read_ROMCODE_Bit(INT8U [],INT8U);
void Save_ROMCODE_Bit(INT8U [],INT8U ,INT8U);
void Show_Romcode(INT8U, INT8U,INT8U *);
void Read_Slot();
void Write_DQ_bit(INT8U);
void CRC8(INT8U d);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -