ADI 技术
直播中

莫联雪

7年用户 1116经验值
私信 关注
[问答]

AD9957串口编程CFR1是4个字节是对的吗?

各位好!
我用TMS320F2812 芯片控制AD9957,现在要向AD9957写控制字,使用F2812的SPI外设。我的问题是:
比如向AD9957的控制寄存器1写控制字,程序如下:
/***********************/
/ / CFR1
    write(0x00);    //指令字节
    // 传输第1个字节
    write(0x00);
    // 传输第2个字节
    write(0x40);
    // 传输第3个字节
    write(0x00);
    // 传输第4个字节
    write(0x02);
/***********************/
其中,write()是SPI的发送函数,
void write(unsigned int data)
{
    GpioDataRegs.GPFDAT.bit.GPIOF3 = 0;    //选中AD9957
     if (Spi_TxReady() == 1)    // 当检测到SPI发送准备信号置1时,开始发送数据
    {
        SpiaRegs.SPITXBUF = data;    //把数据写入SPI发送缓冲区
    }   
    while((SpiaRegs.SPISTS.all & 0x0040) != 0x0040) {};    // 一直等到数据发送完成
    GpioDataRegs.GPFDAT.bit.GPIOF3 = 1;    //退出时关片选
     mDelay(40);//延时
}
   
    CFR1是4个字节,这样编程对吗?我用示波器检查PLL_LOCK和PDCLK,都是错误的。

谢谢!

回帖(1)

云静京

2018-11-13 09:59:44
您好,请参考这里讨论:http://ezchina.analog.com/message/8035#8035
举报

更多回帖

发帖
×
20
完善资料,
赚取积分