大家好:
我们购买了BT-MSPAUDSOURCE Tools Bluetooth and MSP430 Audio开发板(MSP430F5229),请教系统初始化代码的编写:
例如:厡代码如下:
WDTCTL = WDTPW + WDTHOLD;
SCFI0 |= FN_2;
FLL_CTL0 |= XCAP18PF;
SCFQCTL = 127; // 32768*128=4194304*/
我们希望使用DDS芯片AD9954模块!
辛苦了
user5274273:
大家好:我们的接线对应表如下:数据到寄存 寄存器设定 幅度斜率 幅度斜率 外同步 CPU控制信号系统时针
控制点
名称1-UPDATE 48-PS1 47-PS0 46-OSK 45-CLK 42-IN 41-SDIO 40-SCLK 39-CS
AD9954 DEMOP1-1P1-3 P1-5 P1-7 P2-1 P2-2 P1-9 P1-11 P1-13
MSP430F5229 DEMOP7.5P1.2 P1.1 P6.4 P5.2 P2.6 P2.5 P2.4 P7.1
Susan Yang:
您现在是想使用AD9954开发板?为何需要两个板子联调呢?
您可以用SPI连接MSP430 和AD9954,具体的AD9954配置参数建议您去模拟版块问一下相关的工程师
user5274273:
回复 Susan Yang:
您好:
我们希望借用MSP430驱动AD9954的成熟代码, MSP430上运行的C代码下:
WDTCTL = WDTPW + WDTHOLD; //stop watchdog timer
SCFI0 |= FN_2; //系统时钟频率积分器
FLL_CTL0 |= XCAP18PF; //配置内部晶振
SCFQCTL = 127; // 32768*128=4194304, 系统时钟频率控制寄存器 4.19M
您看能帮在MSP430F5229开发板上改写这段初始化程序吗?
user5274273:
回复 user5274273:
大家早晨好:
我们移植了“蓝牙和MSP430音频参考设计”里的A3DPDemo_SNK里的参考代码,并且连线正常;AD9954仍然不工作, 为什么?
代码如下:
int main(void) {
/* Turn off the watchdog timer */
WDTCTL = WDTPW | WDTHOLD;
/* Configure the hardware for its intended use. */
HAL_ConfigureHardware();
/* Enable interrupts and call the main application thread. */
__enable_interrupt();
#if 0
MainThread(); /* MainThread should run continously, if it exits an error occured. */
while(1) {
HAL_LedToggle(0);
BTPS_Delay(100);
}
#else
msec_s(1);
AD9954_Initial();
msec_s(1);
while(1)
{
#if 0
AD9954_SETFRE(10000.0); //
SET_AD9954_PS0; //
LINEARSWEEP(1.0,100000.0);
msec_s(1); //
CLR_AD9954_PS0;
#else
AD9954_SETFRE(1931.0);
SET_AD9954_PS0;
LINEARSWEEP(1.0,1931.0);
msec_s(1);
CLR_AD9954_PS0;
#endif
}
#endif
}
灰小子:
回复 user5274273:
但看代码看不出来的。
建议用逻辑分析仪抓取一下时序,然后和AD9954的时序要求做下对比。就能找出原因了。
user5274273:
回复 灰小子:
大家好:
为了提高AD9954的使用效率, 我们连线如下:
40 -SCLK 连 MSP430的P4.0-UCA1CLK
41-SDIO连 MSP430的P4.1-UCB1SDA
38-SDO连 MSP430的P4.2-USB1SCL
请问:如果我们希望进行串口的调试(打印输出),该怎么处理?