ubuntu下安装stm32开发环境

在windowns下开发stm32刚开始学最烦的就是创建工程模板,都不知道为什么要那样设置,而且步骤繁多。现在我告诉大家一个好消息,在linux下配置stm32开发环境包括创建工程,使用JLink仿真简单到我都不知道怎么写教程了,什么固件库,OPENOCD,都成了浮云。
        先上我自己整理软件,包括eclipse, arm-none-eabi-gcc, stm32 m3 3.5固件库(备用),stm32 for eclipse插件, JLink 4.78驱动,JLink固件(在 JLink 4.78驱动下不丢固件,但要下进去以后在windowns下面升个级),还有stlink驱动,以及串口下载软件都是linux下的,足够让玩stm32的linux用户爽一阵了。
        下载地址   http://pan.baidu.com/s/1c0GJiLE
        
        1.安装arm-none-eabi-gcc:
        直接解压复制到自己的安装目录下。我是在用户目录下建了一个software文件夹,直接放到里面就可以了。
        设置好路径:Ctrl+Alt+T
        键入命令 sudo gedit ~/.profile 
        在password:输入自己的密码,不显示。
        在打开的文件最后面添加自己的路径。我的是/home/godsend/software/arm-none-eabi-gcc/bin所以我自己的路径就是

        export PATH=$PATH:"/opt/microchip/xc8/v1.21/bin:/home/godsend/software/arm-none-eabi-gcc/bin:/home/godsend/software/opt/FriendlyARM/toolschain/4.4.3/bin:/home/godsend/software/jdk1.7.0/bin:/home/godsend/software/stlink-master:/home/godsend/software/stm32flash"

        由于我的软件比较多就是这样,在这要注意一下,不同路径之间用冒号隔开。完了以后重启一下系统,使刚才设置的路径生效。
        打开终端,运行arm-none-eabi-gcc -v  
        如果出现下面的内容就说明arm-none-eabi-gcc已经安装成功。
GNU gdb (GNU Tools for ARM Embedded Processors) 7.4.1.20121207-cvs
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=i686-linux-gnu --target=arm-none-eabi".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
godsend@godsend-Vostro-1088:~$ arm-none-eabi-gcc -v
Using built-in specs.
COLLECT_GCC=arm-none-eabi-gcc
COLLECT_LTO_WRAPPER=/home/godsend/software/arm-none-eabi-gcc/bin/../lib/gcc/arm-none-eabi/4.7.3/lto-wrapper
Target: arm-none-eabi
Configured with: /home/build/work/GCC-4-7-build/src/gcc/configure --target=arm-none-eabi --prefix=/home/build/work/GCC-4-7-build/install-native --libexecdir=/home/build/work/GCC-4-7-build/install-native/lib --infodir=/home/build/work/GCC-4-7-build/install-native/share/doc/gcc-arm-none-eabi/info --mandir=/home/build/work/GCC-4-7-build/install-native/share/doc/gcc-arm-none-eabi/man --htmldir=/home/build/work/GCC-4-7-build/install-native/share/doc/gcc-arm-none-eabi/html --pdfdir=/home/build/work/GCC-4-7-build/install-native/share/doc/gcc-arm-none-eabi/pdf --enable-languages=c,c++ --disable-decimal-float --disable-libffi --disable-libgomp --disable-libmudflap --disable-libquadmath --disable-libssp --disable-libstdcxx-pch --disable-lto --disable-nls --disable-shared --disable-threads --disable-tls --with-gnu-as --with-gnu-ld --with-newlib --with-headers=yes --with-python-dir=share/gcc-arm-none-eabi --with-sysroot=/home/build/work/GCC-4-7-build/install-native/arm-none-eabi --build=i686-linux-gnu --host=i686-linux-gnu --with-gmp=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-mpfr=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-mpc=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-ppl=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-cloog=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-libelf=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-pkgversion='GNU Tools for ARM Embedded Processors' --with-multilib-list=armv6-m,armv7-m,armv7e-m,armv7-r
Thread model: single
gcc version 4.7.3 20121207 (release) [ARM/embedded-4_7-branch revision 194305] (GNU Tools for ARM Embedded Processors)

2.安装JLink驱动

首先在ubuntu软件中心安装gdebi,右击JLink.deb选择open with的GDebPackage installer来安装(32位系统就选i386,64位系统就选x86_64)。

3.安装eclipse

直接解压,复制到自己的安装目录,我的是/home/godsend/software,进入eclipse目录双击eclipse打开,单击菜单栏Help下的Install New Software.

打开Install窗口,点击Add,在Name处填STM32(可以随意),在Location右边点击Archive,选择刚下载好的ilg.gnuarmeclipse.repository-1.8.1-201401111229.zip,点击OK

勾选刚才添加的插件。 

一路Next+Agree+Ok,完成后eclipse会重启。

到这里安装已经完成了。

下面我们来点亮地一个发光二极管。

创建工程

点击菜单栏File下的New,C Project.在Priject Name里填入工程名,m3,其他如图,是不是简单多了。

Next

我的芯片的STM32F103VE,所以选择STM32f10x Hight Density ,Flash是512K,RAM是64K,自己根据自己的芯片选择填。然后就是3个Next+1个Finish.

工程创建完了以后会发现有很多错误,怎么办呢?其实不用管,过个几秒钟自己就没有了。

 工程已经建立完成。现在编译就能通过,根本不用配置。不信我们可以查看工程文件夹和工程属性。
芯片选择OK!
库链接OK!

宏定义OK!

脚本链接OK!

编译没有报错,已经产生m3.hex文件。
不过在这需要设置一下。让它产生.bin文件,原因是下载软件好像都只支持二进制文件,

在编译一下。产生了m3.bin文件

仿真。。。。。
菜单栏run下的Debug Configuration,在打开的窗口双击GDB SEGGER J-Link Debugging.


好像也配置好了。需要自己设置的可以自己设置一下,我的板子是SWD接口,在终端打开JLinkGDBServer找不到芯片,不知道什么原因,用别人的JTAG接口应该能够直接点击Debug运行了。
我只好借助JLink的命令下载了。
打开终端,命令JlinkExe
然后在输入
h           
speed 4000
exec device = STM32F103VE
loadbin m3.bin 0x8000000
r
g
这时就能看到板子上pinc12脚的LED在闪烁了。

解释一下命令:
h                                                               //暂停运行           
speed 4000                                          //设置下载速度
exec device = STM32F103VE         //芯片型号
loadbin m3.bin 0x8000000               //下载命令 stm32的flash下载地址是0x8000000,
r                                                              //复位
g                                                            //运行

stlink:stlink-master
              安装:直接解压复制到安装目录下,设置环境变量。参考arm-none-eabi-gcc的设置过程。
             下载命令:st-flash write m3.bin 0x8000000
              仿真用st-util,有兴趣可以自己配置一下,这里就不多说了。
串口下载:stm32flash
            解压进入目录make一下,产生可执行文件,全部复制到安装目录下,设置环境变量。参考arm-none-eabi-gcc的设置过程。有兴趣的可以自己baidu or google。

ubuntu下的51开发环境:sdcc+8052ide +avrdude/gSTC-ISP/kSTC89-ISP/kSTC12-ISP,avrdude稍微配置一下就可以用USBasp下载At89s52,其他可以下载STC的89和12系列的最好配个自动下载器就更好了。整理好的下载地址,比较容易。
http://pan.baidu.com/s/1eQDrt2U

ubuntu下的AVR开发环境:avr-gcc+avrdude+kontrollerlab(IDE),支持很多下载工具。avr-gcc直接在ubunru的软件中心找,安装kontrollerlab(IDE)时可能会需要一些依赖包,我都整理在一起了,需要什么装什么就可以,也比较简单,
http://pan.baidu.com/s/1o6scryU

ubuntu下的pic开发环境:就两个文件,很简单。用bash安装。
http://pan.baidu.com/s/1i3JqN4p

FPGA开发环境软件4G多无法上传,可以到Altera官网下载free版。我的是12.0sp1的,安装类似与PIC但需要配置一下,也比较简单,自己可以baidu or google一下。

Arduino在ubuntu的软件中心就可以找到,要选择最新版,旧版本有点小BUG。

posted @ 2019-04-14 17:51  鲸小鱼-  阅读(2231)  评论(0编辑  收藏  举报