赞
踩
当然,首先你得确保你自己的电脑上有arduino,如果没有,请下载一个:Arduino
国外有个大神Roger Clark开源了一套基于arduino的STM32的库及相关的BootLoader,链接:GitHub,需要下载的是其中的Arduino_STM32和STM32duino-bootloader以及stm32烧写工具stm32flash.exe
蓝奏云直通车:
stm32flash.exe;
Arduino_STM32-master.rar;
STM32duino-bootloader-master.zip
将上面下载的STM32duino-bootloader-master.zip解压,进入bootloader_only_binaries,找到相应的bootloader,以核心板板载LED所在引脚为准。我的是PB12,所以我选了generic_boot20_pb12.bin。
stm32flash.exe -w generic_boot20_pb12.bin -v -g 0x0 COM14
后面的COM14记得换成自己的串口号,出现以下内容即下载成功。
7. 将BOOT0置0,然后按一下板子上的reset按钮,会看见板载LED快速闪烁,这就是烧写完成了。
void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(PB12, OUTPUT); Serial.begin(115200); Serial1.begin(115200); Serial.print("This is begin......\r\n"); Serial1.print("This is begin......\r\n"); } // the loop function runs over and over again forever void loop() { Serial.print("The Soft is running......\r\n"); Serial1.print("The Soft is running......\r\n"); digitalWrite(PB12, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(PB12, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
我的板子LED在PB12上,所以程序就是LED闪烁,并且串口输出
然后点右上角的放大镜就能打开Arduino内置的串口监视器了。
但是有一个问题,可能是USB是虚拟串口的原因,通过和串口1进行对比,发现重启的时候向串口打印数据有几秒钟丢失,无论我怎么尝试都存在,程序里setup中的Serial.print("This is begin......\r\n");
始终无法看到结果,所以USB口仅仅用来方便下载就好了,别想着它能发挥多大用途
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。