最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

分享到微博請遵守國家法律
鱼台县| 乌审旗| 大安市| 莒南县| 伽师县| 成武县| 大理市| 西贡区| 介休市| 郎溪县| 桐柏县| 丹棱县| 宝鸡市| 城市| 黄浦区| 巨野县| 浪卡子县| 北川| 邮箱| 股票| 邯郸市| 西丰县| 天峻县| 岫岩| 高淳县| 准格尔旗| 建平县| 肃宁县| 克什克腾旗| 宁津县| 郴州市| 庆云县| 鹿邑县| 将乐县| 新民市| 和静县| 彩票| 石柱| 沙雅县| 银川市| 竹山县|