㈠ 求ads8344驅動程序·················
你好,ADS8344是一個ADC轉換器,8路輸入,8位串列控制輸入,16位串列數據輸出。
下面是寫的程序,粘到記事本里看,網路上顯得亂。
 
/* ADS8344 */
#define  uchar unsigned char
#define  uword unsigned int
sbit ADS_SHDN = ; 
sbit ADS_CS   = ;
sbit ADS_DCLK = ;
sbit ADS_DIN  = ;
sbit ADS_BUSY = ;
sbit ADS_DOUT = ; 
// (MSB)                                  (LSB)  
// BIT7 BIT6 BIT5 BIT4 BIT3   BIT2   BIT1 BIT0
//  S    A2   A1   A0   —    SGL/DIF  PD1  PD0
void ads_com(uchar ads_comchar)
{
    uchar i=0;
    for (i=8; i>0; i--)
    {
        ADS_DIN  = ads_comchar&0x80;//取最高位
        ADS_DCLK = 0;
        ADS_DCLK = 1;
        ads_comchar<<=1;//左移數據
    }
} 
// (MSB)        (LSB)  
// BIT15 ...... BIT0
uword ads_dat(void)
{
    uword ads_datword = 0;
    uchar i=0;
    for (i=16; i>0; i--)
    {
        ads_datword<<=1;//左移數據
        ADS_DCLK = 0;
        if(DOUT==1) ads_datword = ads_datword|0x01;//最低位或
        ADS_DCLK = 1;
    }
    return(ads_datword);
} 
void main() 
{
    uword ADS_DataWord = 0;
    
    ADS_SHDN = 1;
    ADS_CS   = 1;
    ADS_DCLK = 0;
    
    ADS_CS   = 0;
    //  S    A2   A1   A0   —    SGL/DIF  PD1  PD0
    //  1    0    0    0    —       1      1    1
    ads_com(0x87);//10000111
    ADS_DCLK = 0;
    ADS_DCLK = 1;
    while(ADS_BUSY == 1);
    ADS_DataWord = ads_dat();
    
    ADS_CS   = 1;
    while(1);
}
㈡ ADS8364在電子模擬元件protel中怎麼沒有啊
換一片類似的吧  
Multisim 10部支持cpld的 
protel也只能做暫態模擬