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

📄 ds18b20.h

📁 温度传感器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 + -