📄 ds18b20.h
字号:
/*********************************************************************
*
* ds18b20.h
*
*********************************************************************
* 文件名: ds18b20.h
* 描述:
* 公司: 爱晶电子
*
* 作者 日期 注释
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* 王伟民 07/11/28 原始文件
********************************************************************/
#ifndef __ds18b20_h
#define __ds18b20_h
/*单片机与18BS20连接数据线定义*/
#define DQ_DIR DDRAbits.RA0 /*定义18B20D口方向寄存器*/
#define DQ PORTAbits.RA0/*定义18B20数据端口*/
#define DQ_HIGH() DQ_DIR =1 /*释放总线*/
#define DQ_LOW() DQ = 0; DQ_DIR = 0 /*下拉总线*/
//#define DQ_dir DDRAbits.RA4 /*定义18B20D口方向寄存器*/
/* 函数原型*/
void reset_ds18b20(void) ;//DS18B20复位
unsigned char ack_ds18b20(void); //DS18B20应答
unsigned int read_ds18b20(void) ; //读DS18B20
void write_ds18b20(unsigned int ku); //向DS18B20写指令
unsigned int get_temp(void) ;//获取温度函数
void delay_us(unsigned int us);
void delay_ms(unsigned int ms);
//unsigned int read_tp(void);
/*代码命令名称说明*/
//18B20中使用的是逆序的CRC8 G(x)=8X+5X+4X+1
//#define v_CRC8 0B00110001 //G(x)=X8+X5+X4+1
//#define v_revCRC8 0B10001100
/*----ROM命令----*/
#define SkipROM 0xCC/*忽略ROM匹配*/
#define MatchROM 0x55/*符合ROM*/
#define ReadROM 0x33/*读ROM*/
#define SearchROM 0xF0/*搜索ROM*/
#define AlarmSearch 0xEC/*告警搜索*/
/*----存储器操作命令----*/
#define B20Convert 0x44/*Convert T 开始温度转换*/
#define B20WriteScr 0x4E/*Wirte Scratchpad 向RAM中写数据*/
#define B20ReadScr 0xBE/*Read Scratchpad 从RAM中读数据*/
#define B20CopyScr 0x48/*Copy Scratchpad 将RAM中数据复制到EEPROM中*/
#define B20RecallEE 0xB8/*Recall EEPROM 与“Copy Scratchpad 命令“功能正好相反*/
#define B20ReadPower 0xB4/*Read Power Supply 判断使用的电源模式*/
//设置重复检测次次数,超出次数则超时
//#define ReDetectTime 10
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -