新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > PCF8591A/D D/A之間轉(zhuǎn)換

PCF8591A/D D/A之間轉(zhuǎn)換

作者: 時(shí)間:2016-12-01 來(lái)源:網(wǎng)絡(luò) 收藏

void write_address(uchar address,uchar date)
{
start();
write_byte(0x90);
respons();
write_byte(address);
respons();
write_byte(date);
respons();
stop();
}
uchar read_address(uchar address)
{
uchar date;
start();
write_byte(0x90); //10010000 前四位固定 接下來(lái)三位全部被接地了 所以都是0 最后一位是寫(xiě) 所以為低電平
respons();
write_byte(address);
respons();
start();
write_byte(0x91);
respons();
date=read_byte();
stop();
return date;
}
void display()
{
uchar i;
Ledout[0]=table[num0%10000/1000];
Ledout[1]=table[num0%1000/100];
Ledout[2]=table[num0%100/10];
Ledout[3]=table[num0%10];
Ledout[4]=table[num1%10000/1000];
Ledout[5]=table[num1%1000/100];
Ledout[6]=table[num1%100/10];
Ledout[7]=table[num1%10];
for(i=0;i<8;i++)
{
P0=Ledout[i];
switch(i)
{
case 0:LS138A=0; LS138B=0; LS138C=0; break;
case 1:LS138A=1; LS138B=0; LS138C=0; break;
case 2:LS138A=0; LS138B=1; LS138C=0; break;
case 3:LS138A=1; LS138B=1; LS138C=0; break;
case 4:LS138A=0; LS138B=0; LS138C=1; break;
case 5:LS138A=1; LS138B=0; LS138C=1; break;
case 6:LS138A=0; LS138B=1; LS138C=1; break;
case 7:LS138A=1; LS138B=1; LS138C=1; break;
}
delay1ms(2);
}
P0=0x00;
}
void main()
{
init();
AD_change=0;
while(1)
{
switch(AD_change)
{
case 0:num0=read_address(0x41);
break;
case 1:num1=read_address(0x42);
break;
case 2:num2=read_address(0x43);
break;
case 3:num3=read_address(0x40);
break;
case 4:write_address(0x40,num1);
break;
}
if(++AD_change>4)
{
AD_change=0;
}
display();
}
}

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: PCF8591ADD

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉