本帖最后由 novakon 于 2014-2-18 21:57 编辑 最后讲解一下,如何在IAR环境下,用快捷键(例如我用Ctrl+Alt+D)将编译好的程序烧录到本开发板中。
首先,STM8S105/S005系列单片机内含bootloader(启动器,即是一段能够与电脑通信并联机烧写程序的程序),这和刷好固件的Arduino是一样的,单片机启动时会延时一秒钟,此时可以以串口烧录程序。您需要先到ST官网下载一个flash loader demonstrator(直接google搜索既得),安装后,找到里面的stmflashloader.exe,记下所在路径。
然后打开IAR,选择菜单tools -> configure tools,按NEW增加一个新工具,起名叫 FLASH STM8 THRU UART.
command填stmflashloader.exe的全路径,如图。
argument填:
-c --to 1000 --pn 21 --br 230400 --pr EVEN --ec ECHO --co ON -Dtr --Lo -Dtr --Lo -i STM8_32K -d --fn \"$TARGET_DIR$\kcstm8.hex\" --o -Dtr --Hi
--pn 21代表串口COM21,请照实填(参考设备管理器)。
--br 230400代表波特率,高于此值不是很稳定
-Dtr --Lo和-Dtr --Hi代表对串口的#DTR信号电平进行操作,实际上就是通过拉低抬高单片机NRST脚实现复位(这样烧写程序时就不用手动复位了,全自动一次过)。
后面的kcstm8.hex,需要在项目属性中选择生成映像文件,格式选hex,文件名为kcstm8,这样每次编译文件时都会生成这个hex文件,随后用stmflashloader烧进单片机去。
如图
设置好后,在连接开发板时,可以通过此菜单项下载程序。
在tools -> options可以给该项设置快捷键,具体如图。
---------------------------
目前我使用此开发板开发,下载程序步骤如下:
1 按F7编译。
2 按Ctrl+Alt+D下载,随后程序即开始运行。