?? ad7705 2.c
字號:
void select7705(uchar partnumber)
{
switch(partnumber)
{
case 1:PA18155=PA18155&0xfd;break;
case 2:PA18155=PA18155&0xf7;break;
default:break;
}
}
void unselect7705(void)
{
PA18155=PA18155|0x0f;
}
void write_bit7705(uchar w_bit)
{
if(w_bit==0)
DIN7705=0;
else
DIN7705=1;
SCLK7705=0;
SCLK7705=1;
}
uchar read_bit7705(void)
{
uchar r_bit;
SCLK7705=0;
SCLK7705=1;
if(DOUT7705==0)
r_bit=0x00;
else
r_bit=0x80;
return(r_bit);
}
void write_part7705(uchar w_data)
{
uchar index;
uchar param;
SCLK7705=1;
for (index = 0; index<8; index++) /* Write out data */
{
param = w_data<<index;
param &= 0x80;
write_bit7705(param);
}
}
uchar read_part7705(void)
{
uchar index;
uchar r_data=0;
SCLK7705=1;
for (index = 0; index<8; index++) /* Write out data */
{
r_data |= read_bit7705()>>index;
}
return(total_data+all_data;
}
sample_mv=(int)((total_data>>3)-32768);
unselect7705();
return(sample_mv);
}
void ad7705s(uchar mode,uchar partnumber,uchar channel)
{
uchar i;
uchar j;
dog();
select7705(partnumber);
write_part7705(channel | 0x20);
write_part7705(0x0c);
write_part7705(channel | 0x10);
write_part7705(mode);
wait7705(channel);
write_part7705(channel | 0x60);
j=(partnumber-1)*3+channel*3;
for(i=0;i<3;i++)
{
write_part7705(ad7705jzdata[j+i]);
}
unselect7705();
}
void ad7705z(uchar mode,uchar partnumber,uchar channel,uchar x,uchar y)
{
uchar i;
uchar j;
uchar m;
dog();
select7705(partnumber);
write_part7705(channel | 0x10);
write_part7705(mode);
wait7705(channel);
write_part7705(channel | 0x68);
for(i=0;i<3;i++)
{
m=read_part7705();
j=x+i*0x06;
showys(m,j,y,1);
}
unselect7705();
}
/*----------------AD7705------------------*/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -