在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。

ubuntu下安装stm32开发环境的更多相关文章

  1. Fedora和Ubuntu下安装OpenGL开发环境配置

    Fedora下OpenGl开发环境配置 开发OpenGL工程需要3个库文件和对应的头文件: libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h 这些库 ...

  2. ubuntu下安装ESP8266开发环境步骤中可能出现的问题及解决办法

    安装步骤参考如下链接 https://www.jianshu.com/p/e9ce2a60df83 1.在GitHub上拉取代码时发生错误:RPC failed; curl 18 transfer c ...

  3. Ubuntu下的PHP开发环境架设

    Ubuntu下的PHP开发环境架设   今天重新装了ubuntu那么就吧过程记录下. 打开终端,也就是命令提示符. 我们先来最小化组建安装,按照自己的需求一步一步装其他扩展.命令提示符输入如下命令: ...

  4. ubuntu下搭建JAVA开发环境【转】

    转自:http://jingyan.baidu.com/article/86fae346b696633c49121a30.html JAVA开发环境是一种跨平台的程序设计语言,可以在windows.L ...

  5. ubuntu下搭建android开发环境之超顺畅模拟器

    如果说android系统的卡,像耳边蚊子让人抓狂,那么android模拟器的卡,那就像午睡时的苍蝇.大概就是一样的恶心~~ 那么,这样的问题对于开发者肯定忍无可忍,我也一样,虽然我还没有入门,但我也一 ...

  6. ubuntu下安装 openssl 开发库

    ubuntu下安装 openssl 开发库 检查是否已安装openssl: sudo apt-get install openssl 如果已安装执行以下操作:sudo apt-get install ...

  7. mac下安装c++开发环境

    mac下安装c++开发环境 1 注册apple id 按照apple注册步骤注册apple id,我注册时遇到如下问题 apple store完成创建apple id步骤中,选择付款方式和账单地址后, ...

  8. Fedora15下安装Android开发环境

    Fedora15下安装Android开发环境需要以下步骤: 完整步骤. 1. 安装正确版本的JDK. 2. 安装Eclipse. 3.  安装ADT. 4.  安装Android SDK. 5.  安 ...

  9. Mac 下安装Phonegap开发环境

    Mac 下安装Phonegap开发环境 2014.09.11  星期四 评论 0 条    阅读 5,613 次 作者:野草 标签:phonegap ios mac 什么是Phonegap呢?Phon ...

随机推荐

  1. learn go random

    package main // 参考文档: // go 基本类型和运算符 // https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/e ...

  2. Loj 504 ZQC的手办

    Loj 504 ZQC的手办 用线段树维护,每个节点存储区间内最小值 \(val\) 以及最小值出现的一个位置 \(pos\) . 对操作 \(1\) ,只需打标记即可,因为我们不维护其他的信息(如区 ...

  3. jenkins for mac

    Mac环境中Jenkins的停止和启动命令启动sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist停止sudo launchc ...

  4. 《DSP using MATLAB》第7章开始 Example7.1

    FIR低通滤波器的设计要求示意图:

  5. Flask第四篇——第一个程序

    看,是第一个程序,不是脚本哦~~ 把生成的模板上面加上编码,然后运行,看输出台: 上图中有 Running on http://127.0.0.1:5000/ 点击那个地址,就可以在浏览器看到代码运行 ...

  6. 【angularJS】简介

    简介 AngularJS 是一个 JavaScript 框架.它可通过 <script> 标签添加到 HTML 页面. AngularJS 通过 指令 扩展了 HTML,且通过 表达式 绑 ...

  7. groovy && java 混编 gradle 配置

    参考配置: apply plugin: "application" apply plugin: "java" apply plugin: "groov ...

  8. jekyll 安装使用

    1. 安装     条件: ruby gem 注意版本,同时建议使用国内的镜像 gem install jekyll bundler   2. 创建网站   jekyll new my-awesome ...

  9. Matlab 之 FFT的理解和应用

    网上看了一些大牛的关于FFT的见解,加上自己的一点儿理解,针对以下这几个问题来加深对FFT的理解. 不知道大家有没有类似以下几点的困惑: 问题的提出 对于1秒钟输出的连续信号,使用采样率Fs不同,就会 ...

  10. ***XX-net 和 proxyee-down

    看连接吧,留着方便自己查看 https://github.com/XX-net/XX-Net https://github.com/monkeyWie/proxyee-down/blob/master ...