关于自己公司制作的demo板在初始化NWP模块时候出现程序崩溃,复位的问题
ti的各位员工:
大概出现的问题就如上所述,下面我详细叙述一下产生问题的背景。
我们正在用CC3200开发一款开关产品,现在正在做一个CC3200的模块,编译环境是IAR,demo板上的最小系统,连线还有元器件参数基本和 Ti 的 Launch板一样。
uniflash也能正常的给Flash打补丁,在M4内核运行与有sl_Start以外的代码时,基本上没问题(运行外部中断,定时器,IO操作时不会出现错误,但在在调用out_of_box,历程后一定会出现错误)如下
经一步步的调试之后发现程序在
sl_Start() 这个函数的 sl_DeviceEnable();这个函数这里停止了,
在进一步查询出错的地方发现,在下面函数标注红色的语句地方复位了
#define sl_DeviceEnable() NwpPowerOn()
void NwpPowerOn(void)
{
#ifdef CC3200_ES_1_2_1
//SPI CLK GATING
HWREG(0x440250C8) = 0;
//WLAN PD ON
HWREG(OCP_SHARED_MAC_RESET_REG) &= ~(0xC00);
//Remove NWP Reset
HWREG(APPS_SOFT_RESET_REG) &= ~4;
#else
//bring the 1.32 eco out of reset
HWREG(0x4402E16C) &= 0xFFFFFFFD;
#endif
//NWP Wakeup
HWREG(0x44025118) = 1;
UtilsDelay(8000000);
//UnMask Host Interrupt
NwpUnMaskInterrupt();
}
我把程序烧写到 flash 里卖弄,然后复位运行,还是发现程序每次运行到此处,然后就一直循环复位,像这样。
我测试了 自己的板子 和 ti的launch板,关于网络部分相关的引脚点位基本上都相同,而且原理图也几乎一模一样
我现在能想到的问题就是干扰了,想起之前来我们公司的Ti员工建议我们用四层板,是不是现在的CC3200的抗干扰性方面对板子布局要求还是非常高的?
请问有人能解决这一问题不,到底是什么原因造成的额。
非常感谢您的回答!
TI的工程师们:
你好,我也遇到这样的问题,我的硬件电路图也是参考launch3.2的原理图的,
调试到了这一行 HWREG(0x44025118) = 1; 就会出错。
我查阅了CC3200 SimpleLink TM Wi-Fi and Internet-of-Things Solution,a Single-Chip Wireless MCU 中有说明
应该是设置了MCU reset clock manager 中的某个状态。 但是更详细的寄存器说明就没办法查看了。
请问在哪里能了解到更详细的信息。
为什么没有人回复这个帖子,难道是那批芯片存在问题,不想让我们知道?
请问:
有没有人能解答啊!
请问有没有能解答啊
请问,有没有人帮忙分析解答啊?
你用的是什么版本的芯片?能否检查一下供电是不是有问题?
也可以联系一下当地的TI FAE支持一下。
我也碰到同样问题,请问您解决没?
是电源的问题
电磁干扰没处理好
必须四层板
布线很严格,建议之间把官方提供的电路核心部分抠出来,在外围添加电源以及你的外设
确实,在用TI的CC3X00做开发是,硬件电路的设计,建议用四层板,layout部分也建议完全按照TI的参考设计。
不然板子会出现很多问题。
谢谢
用TI的CC3200 Launchpad 没有问题就说明是硬件设计问题。 只是参考原理图是远远不够的,在布板过程中也需要非常仔细的参考 Launchpad的设计,特别是电源部分要格外小心。