藍橋杯微控制器CT107D ADC

2021-09-11 04:11:34 字數 904 閱讀 3202

adc轉換需要寫入pcf8591三個位元組:

(1)0x90,器件位址及寫控制位;

(2)0x01光敏電阻(0x03電位器),選擇輸入控制位;

(3)0x91,器件位址及讀控制位;

固定位址部分為 『1001』,

可程式設計位址部分為a2、a1、a0為『000』;

位址+讀= 1001 0001 即『0x91』;

位址+寫= 1001 0000 即『0x90』;

光敏電阻接ain1 0x01

rb2電位器接ain3 0x03

主要分兩步

第一步:adc初始化 adc_init()

void adc_init(uint8 ch)  //ch為0x01時光敏電阻,ch為0x03時rb2電位器

第二步:讀取adc轉換值 uint8 get_adc()

uint8 get_adc()

最後可以加乙個dac轉換 void adc_set(uint8 dat)

dac轉換需要寫入pcf8591三個位元組:

(1)0x90,器件位址及寫控制位;

(2)0x40,dac輸出模式;

(3)dat,輸入要轉換的資料(0~255);

模擬輸出量vout= vref/255*dat; (vref為參考電壓mv)

void adc_set(uint8 dat)

工程模板:

藍橋杯微控制器CT107D ds1302驅動

藍橋杯微控制器ctd107 ds13020 比賽時官方提供用驅動函式,但是不能直接使用,需要修改相應的.c和.件,第一步 修改包含的標頭檔案 將.c檔案包含的標頭檔案 include 和 include 改為 include ds1302.h 在.件新增 include common.h 第二步 新...

藍橋杯微控制器CT107D 底層驅動基礎

這兩個 檔案是其他底層驅動 的基礎 包含了控制138573 間接控制數碼管led和蜂鳴器等 delay延時函式 ct107開發板上點初始化 基礎 ct107.h 標頭檔案 ifndef ct107 h define ct107 h include define uint unsigned int d...

藍橋杯微控制器CT107D ds18b20驅動

藍橋杯微控制器ctd107 ds18b20 比賽時官方提供用驅動函式,但是不完整,需要修改相應的.c和.件,第一步 修改單匯流排延時函式,只需要在延時函式中新增一行即可 void delay onewire unsigned int t 第二步 修改.件,將 include reg52.h 改為 i...