国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

解析PCF8591的IIC信號

2023-05-19 06:57 作者:e小白官方  | 我要投稿

e小白網(wǎng)址:www.e-xiaobai.com

1.PCF8591模塊原理圖及引腳定義


2.PCF8591的IIC通訊地址

模塊上A2,A1,A0都連接GND,那么PCF8591的地址/寫是0X90,地址/讀是0x91。

3.PCF8591的控制字節(jié)


由此可知,讀取1通道的AD值的控制字節(jié)為0x41or0x01;DA輸出的控制字節(jié)為0x4?(此時(shí)“?”可以表示0,1,2,3,因?yàn)槭荄A輸出與AD輸入無關(guān),一般直接寫0x40即可)

4.PCF8591的讀時(shí)序


5.PCF8591的寫時(shí)序

6.代碼

6.1讀AD

//channel可取0x00,0x01,0x02,0x03或0x40,0x41,0x42,0x43

u8 ADCconversion(u8 channel)

{

? ?u8 data;

? ?PCF8591_IIC_Start(); ? ?//發(fā)送IIC開始信號

? ?PCF8591_IIC_Send_Byte(0x90); ? ?//IIC發(fā)送一個(gè)字節(jié)

? ?PCF8591_IIC_Wait_Ack();

? ?PCF8591_IIC_Send_Byte(channel);

? ?PCF8591_IIC_Wait_Ack();

PCF8591_IIC_Start();

? ?PCF8591_IIC_Send_Byte(0x91);

? ?PCF8591_IIC_Wait_Ack();

data=PCF8591_IIC_Read_Byte(0);? ? ? //IIC讀取一個(gè)字節(jié)

? ?PCF8591_IIC_Stop(); ? ? ?//發(fā)送IIC停止信號

return(data);

}

下圖為邏輯分析儀解析的IIC讀時(shí)序(channel的值為0x03):

其中,0XB0為讀取到的AD值,轉(zhuǎn)化為10進(jìn)制為176,與OLED顯示的數(shù)字一致。

6.2寫DA

//DA?

//V的范圍是0-5

void DACconversion(float V)

{

float a;

a=(u8)(V*255/5);

? ?PCF8591_IIC_Start(); ? ?//發(fā)送IIC開始信號

? ?PCF8591_IIC_Send_Byte(0x90); ? ?//IIC發(fā)送一個(gè)字節(jié)

? ?PCF8591_IIC_Wait_Ack();

? ?PCF8591_IIC_Send_Byte(0x40);

? ?PCF8591_IIC_Wait_Ack();

? ?PCF8591_IIC_Send_Byte(a);

? ?PCF8591_IIC_Wait_Ack();

? ?PCF8591_IIC_Stop(); ? ? ?//發(fā)送IIC停止信號

}

下圖為邏輯分析儀解析的IIC寫時(shí)序(V為3.5):

其中,0XB2為輸出電壓的數(shù)字值。


解析PCF8591的IIC信號的評論 (共 條)

分享到微博請遵守國家法律
东安县| 海原县| 巩义市| 云龙县| 博乐市| 六盘水市| 衡山县| 嘉祥县| 柳林县| 屏东市| 周至县| 沅江市| 杨浦区| 台南县| 合山市| 海安县| 平远县| 兴化市| 松江区| 青川县| 富宁县| 永清县| 大名县| 太仓市| 庆云县| 崇文区| 靖边县| 柯坪县| 闽清县| 天祝| 连平县| 巴里| 布尔津县| 建湖县| 镇江市| 铁岭市| 赫章县| 岳阳县| 托克托县| 日土县| 土默特右旗|