干货 | 教你在CC3200-LAUNCHXL上运行MicroPython
行业资讯 犀利解读
技术干货 每日更新
经过几天的实验,终于在CC3200-LAUNCHXL开发板上成功运行了MicroPython,下面将具体方法分享给大家。
首先,需要做一些准备工作。需要下载几个软件:
CCS Uniflash:闪存编程工具
CC3200SDK-SERVICEPACK:系统服务包
MicroPython源码 或 github上同步
GNU ARM Embedded Toolchain
然后安装CCS Uniflash和CC3200SDK-SERVICEPACK,CC3200-LAUNCHXL开发板的驱动是FTDI驱动,如果安装过其它FTDI的驱动就不需要在安装了,如果没有安装那么在CCS Uniflash安装目录中带有这个驱动。不需要安装CCS6和其它软件。
另外需要注意CC3200-LAUNCHXL开发板硬件版本必须是4.1或以上,如果低于4.1就不用尝试了。
下面就开始具体的操作,因为步骤比较多,如果是第一次尝试,可能需要非常小心,避免操作错误。
编译源码,得到固件
编译源码和编译STM32的源码差不多,不同在于需要编译application和bootloader两个源码。
在micropython/cc3200目录下,输入下面的目录进行编译:
make BTARGET=application BTYPE=release BOARD=LAUNCHXL
make BTARGET=bootloader BTYPE=release BOARD=LAUNCHXL
分别得到cc3200\build\LAUNCHXL\mcuimg.bin和cc3200\bootmgr\build\LAUNCHXL\bootloader.bin两个固件。
和STM32一样,在Linux下编译速度会快很多,在Windows下可以加上-j8加快编译,但比Linux下还是慢不少。
下载固件
先将开发板的SOP2用短路块连接(如图黄色框所示),然后连接USB
运行CCS Uniflash软件
新建一个配置,选择最下面的CC3X系列
在第一个配置页面中(CC31xx/CC32xx Flash Setup and Control),输入实际的串口号,如下图所示。
格式化Flash。在第一个页面按下Format,在弹出选择框选择1M容量,然后确定就开始格式化。
在System Files下,选择/cert/ca.pem,只选中Erase框。然后对后面两个文件进行同样的操作。
选择sys/mcuimg.bin文件,选中Erase和Update两个勾。然后在下面的Url中,用Browse选择我们前面编译出的mcuimg.bin文件。特别注意文件不要带有中文路径和中文文件名,否则后面的下载会出错。
回到第一个页面,按下Program,下载固件。
下载Service Pack
按下Service Pack Programming按钮,下载系统服务包,这个文件在前面安装的CC3200SDK-SERVICEPACK文件夹中,通常是一个servicepack_XXXX.bin这样的文件,后面的XXXX与版本有关。
运行MicroPython
完成前面的操作后,如果没有错误(如果出现错误可以重新再次操作,出错通常与USB线有关),就可以取下SOP2的短路块,拔下USB线,然后重新上电(只按复位键是不行的)。等几秒后查看Wifi,如果出现一个wipy-wlan-XXXX的热点,就说明MicroPython已经成功运行了。
出现wipy-wlan热点后,就可以进行连接了。连接的密码是wipy公司的网址:www.wipy.io
然后就可以通过一个支持telnet的终端进行连接,比如putty,将连接方式设置为Telnet,主机设置为192.168.1.1,端口是23。
在出现登录提示时,用户名是:micro,密码是:python。登录成功就会出现我们熟悉的>>>提示符。
在提示符后就可以输入各种命令,值得注意的是CC3200没有浮点单元,不支持浮点计算。就连普通的除法计算也会出错,只能用整数除法//代替一般除法/。
出了putty,还可以使用很多其它软件,如超级终端、MobaXterm、XShell等。
CC3200目前只支持热点(AP)方式,不支持终端方式。因此连接上wipy-wlan热点后,计算机就不能上网了,会带来很多不便。一个解决方法是使用有线网络,或者使用两个无线网卡,一个连接外网,一个连接wipy-wlan。注意需要用第一个网卡连接wipy-wlan。