历史上的今天

今天是:2024年10月13日(星期日)

正在发生

2018年10月13日 | Linux下如何搭建stm32开发环境(一)

发布者:幸福的老农 来源: eefocus关键字:Linux  stm32  开发环境 手机看文章 扫描二维码
随时随地手机看文章

Linux对于开发者来说真的是一个非常好的系统,为开发者来说应该不陌生,通常我们在Windows下开发stm32很方便,有非常多的工具,IDE等支持,同样是操作系统,Linux开发STM32也一点不会差。
Linux下开发stm32也有很多方法:
1.使用makefile
2.使用eclipse
3.使用stm32cubemx+sw4stm32
4....
     有大神使用第一种,本人对makefile一知半解,拿不出手。第二种,windows下可以使用eclipse开发,eclipse有linux版本,所以应该也是可以的,不过本人并没有试过。这里要说的就是第三种,当然除了这些,像Mbed之类的在线开发工具,只要有网,无论什么平台都能开发的就不说了。
      stm32cubemx相信大家都已经很熟悉了,st推出的基于hal库的图形化配置和代码生成工具,不记得从哪个版本开始,这个工具添加了对linux的支持,st大力发展linux用户的野心昭然可见。除此之外,st还和ac6合作推出了stm32 ode,即sw4stm32,一款免费的可开发stm32的集成开发工具。sw4stm32是基于eclipse开发的,打开后的界面和eclipse基本完全一样,也同时支持windows和linux两种版本,这也说明了第二种方法是可行的。下面真正开始开发环境搭建工作:

                        

1.准备工作

下载stm32cubemx


下载sw4stm32

这两个软件都需要,所以需要先安装好JRE,这里就不讲了,百度一下都有。


2.安装


    其实这两个软件安装方式做得很类似windows下的安装了,解压双击即可安装,不过既然用了linux系统,就允许我装一下逼,用命令行来安装。

安装步骤:

1.完成前面的下载后得到两个文件:

en.stm32cubemx.zip install_sw4stm32_linux_64bits-v1.8.run

首先解压压缩文件包,

unzipen.stm32cubemx.zip

得到

Readme.html

SetupSTM32CubeMX-4.15.0.exe

SetupSTM32CubeMX-4.15.0.app

SetupSTM32CubeMX-4.15.0.linux

    四个文件,exe后缀是windows下的安装文件,很熟悉了,.linux后缀就是linux系统的安装文件,此处用这个文件安装,(前面已经说过,可以直接双击安装),直接执行该文件:

                        

./SetupSTM32CubeMX-4.15.0.linux

(如果出错,查看文件是否有执行权限,加上权限后再执行)

效果如图:


此时就会跳出图形安装界面,

    这个界面都很熟悉了吧,和windows下一样,按照提示一步一步安装就可以了,甚至可以一路next到底就行。如果双击安装,会直接来到这一步,后面的步骤省略!



 
                        

    到这里,安装就完成了,再安装文件夹下找到STM32CubeMX文件双击,或者通过命令行启动该文件,就可以打开STM32CubeMX软件,见到我们熟悉的界面,使用方法和windows下一模一样,




    安装好相应的库之后就可以建立工程了,不过我们还没有开发环境,所以现在先安装开发环境:SW4STM32软件:

执行命令

chmod+x install_sw4stm32_linux_64bits-v1.8.run


给install_sw4stm32_linux_64bits-v1.8.run添加执行权限,可能需要超级权限,切换到root用户或者命令前加sudo执行,然后该文件就有了执行权限(前面多了x,颜色变了)




然后执行文件

./install_sw4stm32_linux_64bits-v1.8.run


    开始安装,然后一路next,可以选择自定义安装路径,期间有可能需要输入root用户密码,安装过程和windows基本一样 



    出现这个界面的时候,恭喜,安装完成了!!!


    这个界面和eclipse完全一样的,喜欢eclipse的会比较习惯这个,不过更方便的是直接安装eclipse下的插件。



    现在STM32CUBEMX和SW4STM32都安装好了,接下来建一个工程测试一下,手边刚好有一块Nucleo-F429ZI的开发板,就用这块板来测试,用Cube新建工程应该都熟悉了,这里就不详细描述了



一般习惯不勾选Generate Under Root,这样文件结构更合理



生成工程后有这么些文件,然后用sw4stm32打开:


选择File->Import->General->Exist  Project intoWorkspace


选择刚刚生成的工程的文件夹,Finish


编译一下工程,没有错误,没有警告,然后添加几行测试代码:


    然后编译,运行,就可以看到板子上LD2蓝色LED以1 Hz的频率闪烁,电脑上打开串口助手,就能接收到板子发送过来的测试信息,如下图所示

   至此,说明Linux下编写stm32程序的环境已经完全搭建成功,并且成功创建了第一个可以运行的测试程序,接下来,就可以愉快的开发自己的stm32应用程序啦


关键字:Linux  stm32  开发环境 引用地址:Linux下如何搭建stm32开发环境(一)

上一篇:STM32F10X硬件8MHz改为24MHz软件配置修改方法
下一篇:Linux下如何搭建stm32开发环境(二)

推荐阅读

        市调机构 IDC 报告指出,虽然近期英特尔 (Intel) 芯片供给出现短缺问题,但联想 (Lenovo)、惠普(HP) 与戴尔 (Dell) 等个人计算机制造商,仍努力出货,满足市场需求。        据市调机构 Gartner 统计,2018 年第 2 季,全球个人计算机 (PC) 出货量,为近 6 年来,首度出现成长。        英特尔预估,201...
尽管从2018年开始到现在,SCARA市场增速有所下滑,但是,2014-2018年期间,应用在3C、新能源行业的SCARA工业机器人年均复合增长率41.66%,远超工业机器人整体销量28.81%的年均复合增速。 2019年,入局者的增多,新品的层出不穷以及应用场景的进一步开拓都预示着SCARA领域竞争更加激烈,甚至可以用“贴身肉搏”来形容,有业内人士提出,不用多久,最多1-...
压力传感器资料本传感器所附带的hx711程序,仅供参考。纯属赠送,不提供指导!用途与特点:适合学生实验,DIY电子设计,广泛用于小型电子计价秤、计重秤等。传感器量程:10kg,20kg,40kg可选择,其外观、尺寸、参数都一样,只是量程不一样。参考接线方法:红线(传感器电源输入) 接E+白线(传感器电源地) 接E-绿线(差分信号输出-) 接A-黑线(差分信...
1.S3C2440的时钟体系1.1.S3C2440结构框图从上面的结构图可以看出,S3C2440主要分为CPU,高速总线,低速总线。其中CPU工作与FCLKAHB总线工作于HCLK,AHB(Advance High performance Bus)总线主要用于高性能模块。慢速外设工作于PCLK,APB(Advance Peripheral Bus)总线主要用于低贷款的周边外设之间的连接。我们的S3C2440硬件电路板上,时钟源是一个12M...

史海拾趣

问答坊 | AI 解惑

模块电源--开关电源的欠压保护

保护电路的设计,无疑是电源设计中一个非常重要的环节,它对于提高电源工作的安全可靠性、延长电源的使用寿命都起着十分重要的作用。在设计保护电路时,一方面要保证其功能完善,工作稳定可靠;另一方面应力求简单明了,避免繁复。本文介绍的开关电 ...…

查看全部问答∨

[转]基于GAL器件的步进电机控制器的研究与设计

摘要: 介绍了利用阵列逻辑器件GAL16V8对三相六拍步进电机实现控制的方法及其电路设计。通过计算机编程器对GAL进行编程,可以满足各种控制要求。该电路简单,工作稳定可靠,编程灵活方便。 关键词: 通用阵列逻辑器件 步进电机 GAL16V8 三相六拍 ...…

查看全部问答∨

WINCE5.0系统唤醒后,LCD显示屏无法恢复,请大侠们支招啦...

CPU:S3C2440; BSP: PB5.0;问题是:当系统挂起后再唤醒时,LCD显示屏无法显示,呈白屏状,请教高手们,这是怎么回事呢? PS: 触摸、背光等其他驱动正常恢复了。…

查看全部问答∨

请大侠指点:哪里可以下到基于TCP的网络打印协议

请大侠指点:哪里可以下到基于TCP的网络打印协议。 本人准备在嵌入系统中开发网络打印功能,在网上只找到了IPP、以及互联网的打印介绍。 谢谢!…

查看全部问答∨

我是一名 java 程序员,请问要想进入嵌入式开发领域需要那些必备的基础知识?

我是一名 java 程序员,请问要想进入嵌入式开发领域需要那些必备的基础知识?…

查看全部问答∨

申请LM3S8962评估板做个小东东

目前已经有现成的模块 : 小车车体,传感器组,无线通讯模块,电机驱动模块,电池组等。   需要模块: LM3S8962评估板       手机照的 有点烂~         补充一下吧: 其实我也木有用过 ...…

查看全部问答∨

fpga中类似数组的赋值

大家好,我在做一个lcd1602显示实验,用spartan 3e  的开发板 我想用verilog写一个数组,一开始对这个数组设定初值,后面的程序中会调用   type Ram is array(0 to 15) of std_logic_vector(7 downto 0);constant  MyRamUp: ...…

查看全部问答∨

基于51单片机的太阳能手机充电器设计

       太阳能是为便携式设备供电的有吸引力的能源。一段时间以来,它一直被广泛地用于诸如计算器和航天飞机这样的应用。最近,人们正考虑把太阳能用于包括移动电话充电器这样的范围更宽广的消费电子工程应用。太阳 ...…

查看全部问答∨

发布我们做的STM32F417/407开发板的原理图

板子是最近做的NSSTM32F4-R1开发板,原理图转成pdf格式了,传上来共享…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved