藍橋杯 官方驅動 DS18B20 onewire

2021-09-12 20:52:11 字數 955 閱讀 4197

#ifndef _onewire_h

#define _onewire_h

#include "stc15f2k60s2.h"

#include "intrins.h"

#define ow_skip_rom 0xcc

#define ds18b20_convert 0x44

#define ds18b20_read 0xbe

//ic引腳定義

sbit dq = p1^4;

//函式宣告

void delay_onewire(unsigned int t);

void write_ds18b20(unsigned char dat);

bit init_ds18b20(void);

unsigned char read_ds18b20(void);

#endif

/*

程式說明: 單匯流排驅動程式

軟體環境: keil uvision 4.10

硬體環境: ct107微控制器綜合實訓平台

日 期: 2011-8-9

*/#include "onewire.h"

//單匯流排延時函式

void delay_onewire(unsigned int t)

//ds18b20晶元初始化

bit init_ds18b20(void)

//通過單匯流排向ds18b20寫乙個位元組

void write_ds18b20(unsigned char dat)

delay_onewire(5);

}//從ds18b20讀取乙個位元組

unsigned char read_ds18b20(void)

delay_onewire(5);

} return dat;

}

藍橋杯DS18B20官方驅動的修改

雖然我還沒有參加藍橋杯的比賽,但是聽很多人說比賽的時候官方會給出一些晶元的驅動程式,有ds18b20 ds1302 iic。藍橋杯官方給出的驅動可以用是可以但是並不是那麼完善,還是需要我們稍加修改的。下面我們看一下官方給的ds18b20的驅動程式 程式說明 單匯流排驅動程式 軟體環境 keil uv...

藍橋杯溫度DS18b20的驅動直觀理解

對於藍橋杯比賽,很多人對於比賽官方給出的三個驅動不知道怎麼具體使用。其實官方給出的驅動是在原有的晶元基礎上做出的驅動,但是後來比賽官方對比賽專用版ct107d上使用了iap1f2k61s2轉接板,驅動的一些位置都相應的做出了該變。首先對於驅動,我們的看法是去建立乙個存在主函式的c 檔案去呼叫這個驅動...

ds18b20驅動配置

初始化時序 void ds18b20 rst void 返回1 沒有檢測到ds18b20的存在返回0 存在 u8 ds18b20 check void if retry 200 return1 else retry 0 while ds18b20 dq in retry 240 if retry 2...