板子样式
SDK软件开发套件的下载
下载网址:CC3200 SDK工具包下载
在TI注册了用户之后进行下载,前两个都要下载。运行installer文件,把SDK软件开发套件安装到系统默认路径,或者自己选择的【ti】文件夹路径。我怕C盘太多东西很卡,把软件都安装在了D盘。ServicePack文件同理,也是安装在同一位置。
Uniflash下载
CC3200可以使用Uniflash进行程序的烧录。网上自行下载软件完毕后,进行安装,安装后在开始菜单下出现如下所示图标,请将其打开。
打开后出现如下所示的欢迎界面:
主界面如下所示:
点击软件右上角【File】→【New Configuration】。
出现如下界面:
用USB线将CC3200和PC电脑进行连接,在设备管理器找到对应的COM port,填入对应位置,准备工作结束。
服务包更新
Net Work Protocol是独自运行在CC3200里面协议栈,简称为NWP,主要支持的软件功能比如TCP/IP协议栈、加密驱动、HDNS服务、Soft AP程序驱动等等和网络相关的软件驱动。如下面的列表所示:
如果你的模块中SFlash中包含有早版本的NWP程序,需要先进行Format(格式化)操作。打开如上所示的界面,并选择Format,如下所示:
出现如下所示的界面,可以选择Sflash的容量大小1M、2M等,如下所示,我们使用的模块为1M。
点击OK,出现如下所示的界面,当【Console】窗口出现“please restart the device ”,按下复位按键。
直到显示如下所示的信息,表示下载成功。注意一定要插上绿色短路帽(后面有讲解);
接下来返回到Uniflash的主界面,如下图所示,并选择Service Pack Update,如下所示:
将目录选择到刚才下载的【CC3100_CC3200_ServicePack_1.0.1.15-2.13.0.2】,如下所示的界面:
出现如下所示的界面,表示NWP下载成功:
这是第一次烧录板子需要完成的步骤,此后烧录程序不用重复此步骤。
下载程序到Flash
1.确保上图所示黄色和绿色部分的跳帽插入,蓝色圆圈是复位键。我们是通过USB串口下载程序到Flash,所以SOP2=1,SOP1=0,SOP0=0,如上图绿色框框所示,将SOP2用短路帽接成高电平。
在左边的边框选择/sys/mcuimg.bin,出现如下所示的界面:
MaxSize:是指文件在Flash占据空间的大小。我们烧录bin文件,其实就是把这个文件放到flash中,如果不设置这个值,CC3200内置的bootloader就会选择一个最小的空间去存放这个文件,假设bin文件是会变大,那么这个最小的空间肯定就是不行,所以我们需要设置成一个更大的值。
点击Browse,选择程序下载的地址:(本软件下载.bin文件)
选择Erase、Update、Verify,如下所示:
重新点击CC31x Flash Setup and Control,回到主界面,并点击Program,如下所示:
出现如下所示的界面:
按下复位按键,出现如下所示的界面:
表示程序下载成功。如果出现错误的信息,请重复的点击program和复位按键。将SOP2处的跳线帽拔掉,然后重新上电,程序就可以运行。以后程序都是上电直接运行的,不需要按复位键。
解释一下绿色短路帽为什么插了又拔
CC3200提供外部存储器(也称为外部串行闪存)SFlash、内部存储器SRAM和ROM。ROM中包含BootLoader(引导程序)和DriverLib(外设驱动库)。外设驱动库主要是完成外设的初始化和提供控制功能,是外设程序接口的结合。在ROM中提供驱动库,可以减少用户应用程序对RAM的占用,应用程序可以直接调用ROM中保存的驱动库函数。
当设备上电、复位或者冬眠中唤醒时,先执行初始化程序,然后BootLoader开始执行,将我们烧录的程序代码从SFlash复制到内部RAM,然后执行我们的代码。
启动引导模式。CC3200有3个上电感知(SOP)引脚,可以设置三种操作模式。
1.SOP[2:0]=000:4线JTAG功能开发模式,4个JTAG引脚TDI、TDO、TMS和TCK用于调试器连接,启动时将应用程序映像从串行闪存加载到RAM中运行。
2.SOP[2:0]=001:2线SWD功能开发模式,2个SWD引脚TMS和TCK用于调试器连接,启动时将应用程序映像从串行闪存加载到RAM中运行。
3.SOP[2:0]=100:UART下载模式,在开发和OEM装配时通过UART将应用程序映像下载到串行闪存中。
从引导程序流程图可以看出,芯片完成初始化后,会进行判断SOP此时的状态。
- 设置SOP]2:0]=100,即SOP=UARTLOAD,BootLoader进入下载模式,可以将应用程序文件烧写到外部串行FLASH中。这就是为什么烧录的时候需要将绿色短路帽插上的原因。
- 设置SOP[2:0]=000,BootLoader进入引导程序,加载应用程序到MCU内部RAM。这就是为什么烧录完成后想要运行,得将绿色短路帽取下的原因。
我们可以看到芯片的RAM的地址是0x2000 0000-0x2003 FFFF,空间大小为2的16次方,就是256KB。在下载模式下,芯片第一个运行的程序是BootLoader(我们称之为一级BOOT)。BootLoader需要占用MCU内部RAM的16K空间,它使用的内存地址是0x2000 0000—0x2000 4000。这意味着,对于最大256K内部RAM的CC3200来说,留给应用程序的RAM空间最大为240K。
参考文献:
《ARM Cortex-M4+Wi-Fi MCU应用指南-CC3200 CCS基础篇》郭书军编著 电子工业出版社
《CC3200 WiFi微控制器原理和实践》
《TI CC3200 uniflash下载代码到FLASH的操作流程》
《CC3200学习笔记》