STM32开发环境,现在有四种:
第一种:MDK这个是我,也是大家最熟悉不过的。
第二种:IAR这个也搭过。
第三种:属于GCC的,Atollic_TrueSTUDIO
第四种:STM32官方开发环境System WorkBench STM32
由于前两个我都用习惯了,没有什么新鲜感,所以借着这次评测机会我想试下后两种环境。
只不过这两种环境我不熟悉,只得摸石头过河了。
首先我打到 Atollic_TrueSTUDIO的主页:
https://atollic.com/truestudio/
到是很顺利,我直接就下了Pro版,但后来我查了网上的反应,也看了介绍,好像正规版得交费。本人就烦这个
所以,我下玩了并没有安装,我认为装一个到后来正式收费的环境,不符合我的习惯。也不符合我的原则。
那我只能说白白了,我接着又到了System WorkBench STM32的主页
http://www.openstm32.org/HomePage
这个麻烦点要我先注册,然后才让下载,想着是STM32的环境且不要钱,我就咬牙添完了,然后下载下来了。
我下的是64位的,因为我的系统是WIN10。
然后点击安装:
安装是挺特别,出现了一个DOS窗口,和一个WIN窗口,我没有管DOS窗口。
然后选择安装路径:
然后的一步是选择安不安STLINK驱动,当然选装了。然后继续:
安装完的提示:
启动的画面:
然后是自动安装工具链:
然后选择NEW下边的Import Project from System or Active
导入先下载的STM32L4的CUBE库中的ADC连续转换。
然后在主函数中人While(1){}
中加入我自己的代码:
- HAL_GPIO_TogglePin(LED1_GPIO_PORT,LED1_PIN);
- HAL_Delay(100);
复制代码
目地就是为了点亮LED1,正明一下能否编译。然后编译,很顺利通过。
然后我把开发板连上,再我点仿真的时候,出现了错误提示,说STLINK不能暂停CPU之类。
后来查知,在右边的CFG文件里,把reset_config配成为none separate模式
就是把25行#号注册掉,然后加入 reset_config none separate
原码如下:
- # This is an NUCLEO-L4R5ZI board with a single STM32L4R5ZITx chip
- #
- # Generated by System Workbench for STM32
- # Take care that such file, as generated, may be overridden without any early notice. Please have a look to debug launch configuration setup(s)
- source [find interface/stlink.cfg]
- set WORKAREASIZE 0x8000
- transport select "hla_swd"
- set CHIPNAME STM32L4R5ZITx
- # Enable debug when in low power modes
- set ENABLE_LOW_POWER 1
- # Stop Watchdog counters when halt
- set STOP_WATCHDOG 1
- # STlink Debug clock frequency
- set CLOCK_FREQ 4000
- # use hardware reset, connect under reset
- # connect_assert_srst needed if low power mode application running (WFI...)
- #reset_config srst_only srst_nogate connect_assert_srst
- reset_config none separate
- set CONNECT_UNDER_RESET 1
- source [find target/stm32l4plusx.cfg]
复制代码
点仿真运行,可以在亮灯断点停住。
以下是运行视频:
http://v.youku.com/v_show/id_XMz ... m=a2hzp.8244740.0.0
还有一点要说明:就是关于CUBE库
在选择新建项目时,就自动搜库,如果没有就要求装库,而选STM32F1系列可以选StaPeriph就是标准库或CUBE库。
而选择别的就只有CUBE库。而CUBE库又十分大,要1.8G下载。而先下载STM32的CUBE库而后用开发环境打开就不用下那个库。
因为库都包含在路径下了。我的意思是,可以在此基础上改自己的代码。
好了写到这里了。下回测功耗,我得找个好的万用表了。
此内容由EEWORLD论坛网友ddllxxrr原创,如需转载或用于商业用途需征得作者同意并注明出处