首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

求助 AD5316实用程序例子

求助 AD5316实用程序例子

本人使用的是P89LPC938 单片机,通过I2C与AD5316 通信,请大侠看看是哪里有错误,为什么没有写入数据,请帮忙修改下
AD5316芯片说明在附件中,AD5316与单片机的链接在图片中
其中 &nbspD连接电阻接地,LDAC与单片机的一个管脚 P2.4相连接
ISendStr函数第一个参数是AD5316在I2C上的地址,
                    第二个参数是从地址
                    第三个参数是写入的数据地址
                    第四个参数是要写入的个数
int AD5316_Write(unsigned char ADC_Flags,unsigned int Data)
{
         ADC_Address = 0x1C;        //AD5316在I2C上的地址
       //选择ADC通道
        switch (ADC_Flags){
            case 'A':ADC_Pointer = 0x01;break;
            case 'B':ADC_Pointer = 0x02;break;
            case 'C':ADC_Pointer = 0x04;break;
            case 'D':ADC_Pointer = 0x08;break;
            default:Uart_Send("ADC not in AD5316!");return -1;
        };
        LDAC = 0;
        ADC_Data[1] = 0x7f;               //Vout = (10*255 )/1024
        ADC_Data[2] = 0xfc;
        if (ISendStr(ADC_Address, ADC_Pointer, ADC_Data, 2)){
                Uart_Send("AD5316 is writing now!");
        }else{
                Uart_Send("AD5316 write failed!");
                return -1;
        }
        return 0;
}



程序
返回列表