五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(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信號的評論 (共 條)

分享到微博請遵守國家法律
马公市| 革吉县| 瓦房店市| 奈曼旗| 兴宁市| 石泉县| 沁水县| 台州市| 历史| 榆社县| 兴化市| 孝感市| 都江堰市| 彝良县| 平塘县| 腾冲县| 都匀市| 习水县| 稻城县| 陆良县| 雅江县| 宣恩县| 邓州市| 涡阳县| 襄垣县| 陇西县| 惠来县| 微山县| 桐庐县| 澜沧| 合江县| 樟树市| 宝山区| 新营市| 自贡市| 光泽县| 乡宁县| 弥勒县| 元朗区| 铜鼓县| 博湖县|