This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
使用msp430g2553做了音频DAC的主控,调试的时候发现有问题。系统中暂时只使用了SPI,电路如下:
我将程序写进去之后不能正常运行,表现为不能正常出声。程序中目前只使用了SPI与一个数据接收芯片通信,SPI程序使用的官方例程,在调试的时候发现SPI读写次数不多的时候读到的数据正常,但是次数变多后就会出现收到的数据全为0xFF的现象,而且在每次spi操作之间添加延时超过200us的时候读到的数据就会有0xFF出现,当设置延时1ms的时候就全是0xFF了。然后我测量了SBW接口的电压,SBWTCK(2.8V)比SBWTDIO(3.2V)低0.4V,于是去掉了SBWTCK的上拉电阻R242,然后在没有接仿真器的情况下运行正常(出声)了,此时我又测量了SBWTCK的电压为0.2V。
然后我接上仿真器进行仿真发现又无法正常运行了,于是测量了仿真器的TCK引脚为3.3V,拆开看电路发现果然被上拉了,然后我拆掉了这个上拉电阻,仿真还是不能正常运行,此时在没有进行仿真的时候电压为0V,当进行仿真时又变为3.3V。我查看了msp430g2553 lunchpad的电路图,发现1612输出的SBWTCK有个下拉电阻,于是我在仿真器中添加了下拉电阻,问题依旧,然后我将仿真器电路恢复了(恢复为上拉)。
仿真器使用的是MSP-FET430UIF仿真器,开发环境为IAR5.5。
请问这是什么原因造成的,正确的SBW接口电路(系统板和仿真器)应该是怎样的。
SBW是2 线制Spy-Bi-Wire ,仍然是基于JTAG接口。
或许楼主可以参考下《通过JTAG接口进行MSP430™ 编程的用户指南》:http://www.ti.com.cn/cn/lit/ug/zhcu029g/zhcu029g.pdf
里面有对SBW仿真的电路、时序等介绍
dirtwillfly 说:SBW是2 线制Spy-Bi-Wire ,仍然是基于JTAG接口。
或许楼主可以参考下《通过JTAG接口进行MSP430™ 编程的用户指南》:http://www.ti.com.cn/cn/lit/ug/zhcu029g/zhcu029g.pdf
里面有对SBW仿真的电路、时序等介绍
哎真是蛋疼 早知道就设计成jtag了 是不是SBWTCK引脚跟内部的SPI有联系啊
SBW 和 SPI没有一点关系。除了两个单词都有一个S之外。
http://wenku.baidu.com/link?url=WfYuJiJ920n7SEGan01p8YRUigmHNchXHa1t7iKdeGLrHvGNShAuVTKps-LEZXiU60gtbNZNdl_Xcx0xUuGqGCpoPtgnR6Drg5gMMVbzE_m
对照这里的图仔细检查。。
你好,
你描述的现象和SWB下载接口没有关系,程序有没有download成功可以通过驱动一个GPIO显示就可以判断出来。
您的问题很可能出在spi通信上。
建议排除spi 采样是否和dac的采样同步,及,都为上升沿采样。
kqian0327 说:你好,
你描述的现象和SWB下载接口没有关系,程序有没有download成功可以通过驱动一个GPIO显��就可以判断出来。
您的问题很可能出在spi通信上。
建议排除spi 采样是否和dac的采样同步,及,都为上升沿采样。
程序是确定下载进去了,因为拔下仿真器的时候工作是正常的;spi通信也没有问题,因为在拔下仿真器后通过spi对DAC的控制可以表现出来。
难道是因为我使用的是内部DCO的原因?始终初始化应该也没有问题啊
void initClock()
{
BCSCTL3 |= LFXT1S_2; // LFXT1 = VLO
if (CALBC1_8MHZ==0xFF) // If calibration constant erased
{
while(1); // do not load, trap CPU!!
}
DCOCTL = 0; // Select lowest DCOx and MODx settings
BCSCTL1 = CALBC1_8MHZ; // Set range
DCOCTL = CALDCO_8MHZ; // Set DCO step + modulation
}