当前位置: 首页 > news >正文

打开网站弹出qq对话框中国seo谁最厉害

打开网站弹出qq对话框,中国seo谁最厉害,郑州网站建设方案服务公司,网站开发一般要用到哪些软件陆陆续续搞这个已经很久了。 因为自己新电脑是linux系统无法使用keil,一开始想使用vscode里的eide但感觉不太好用;后面想直接使用cudeide但又不想妥协,想趁着这个机会把linux上的其他单片机开发配置也搞明白;而且非常想搞懂cmake…

陆陆续续搞这个已经很久了。

因为自己新电脑是linux系统无法使用keil,一开始想使用vscode里的eide但感觉不太好用;后面想直接使用cudeide但又不想妥协,想趁着这个机会把linux上的其他单片机开发配置也搞明白;而且非常想搞懂cmake编译的一些原理,顺便可以看看bootloader的内容;并且厌倦了再用库函数的方式写hal库的代码,想更加专注于代码逻辑;

综上所述,其实是在强迫自己重新学一遍cortex-m3/m4这类单片机的基本原理和他们不同的烧录方式,并把一些基础概念过一遍,比如说mpu,mmu,mcu,soc的含义之类。

这篇文章大概是这个追根究底系列里的第一篇内容。


clion的下载

去官网下载即可,或者用命令行下载。

yay -S clion


openocd的下载

这是用来烧录的

yay -S openocd


STM32cubemx的下载

当然是去官网下载,但是yay库其实真的很包罗万象,也可以用命令行下载

yay -S stm32cubemx


GCC编译器与工具链的下载

 绝对不可以使用自带的x86 gcc工具链编译stm32工程,交叉编译时也需要再设置一下CMakeLists.txt,否则会出现如下问题:

cc: 警告:已弃用‘-mcpu=’;请改用‘]8;;https://gcc.gnu.org/onlinedocs/gcc-14.2.0/gcc/x86-Options.html#index-mtune-17-mtune=]8;;’或‘]8;;https://gcc.gnu.org/onlinedocs/gcc-14.2.0/gcc/x86-Options.html#index-march-16-march=]8;;’
cc: 错误:unrecognized command-line option ‘-mthumb’
cc: 错误:unrecognized command-line option ‘-mthumb-interwork’
make[2]: *** [CMakeFiles/stm32project1.elf.dir/build.make:79:CMakeFiles/stm32project1.elf.dir/Core/Src/can.c.o] 错误 1
make[1]: *** [CMakeFiles/Makefile2:87:CMakeFiles/stm32project1.elf.dir/all] 错误 2
make: *** 

如果使用x86的gcc编译器完成交叉编译,会发现即使所有都设置好了,也会出现上述报错。

所以,需要下载arm-none-eabi-bin或者到官方网站下载工具链,版本是14.2.1。

sudo pacman -S gcc-arm-none-eabi-bin

sudo vim /etc/profile

在这个文件的最后添加环境变量,确保系统可以找到新下载的工具链。/usr/arm-none-eabi/bin是安装的工具链的目录,可以改成自己安装的目录。

export PATH=$PATH:/usr/arm-none-eabi/bin

之后验证一下,确保自己已经安装上了

 如果出现arch什么的,说明这并不是arm的工具链,需要重新下载。


 创建工程

 打开clion,新建一个项目,这里可以直接新建关于cubemx的新项目

 

 这个项目的mcu是固定的,改不了,所以我们需要在弹出的窗口内新建一个cubemx项目,并在配置完之后覆盖保存project,需要注意这里面project名字要和一开始一致。我这里新建了一个f407vet6的项目。

 

 

之后就是配置并生成代码了,这里要按照cubeide的方式生成代码。

 

我自己更喜欢设置分别生成代码,而不是把代码堆在同一个文件里 。


编译配置

打开file-setting-toolchain,新建一个设置,这是我的相关设置:

这个构建工具可以选择make或ninja(如果什么都没有设置就会自动选择ninja),最终都是使用cmake完成整个构建过程。

其实使用ninja也可以顺利生成工程文件和build.ninja,但是cubemx会自动生成一个makefile文件。我认为使用unix makefile的方式调试和构建会更好。

点开下面cmake选项卡,设置相同的工具链和生成器。

理论来说,到这步直接运行编译,应该是没有什么问题的。cubemx自己生成的cmakelist.txt和makefile也一切正常,但如果还会出现

cc: 警告:已弃用‘-mcpu=’;请改用‘]8;;https://gcc.gnu.org/onlinedocs/gcc-14.2.0/gcc/x86-Options.html#index-mtune-17-mtune=]8;;’或‘]8;;https://gcc.gnu.org/onlinedocs/gcc-14.2.0/gcc/x86-Options.html#index-march-16-march=]8;;’
cc: 错误:unrecognized command-line option ‘-mthumb’
cc: 错误:unrecognized command-line option ‘-mthumb-interwork’
make[2]: *** [CMakeFiles/stm32project1.elf.dir/build.make:79:CMakeFiles/stm32project1.elf.dir/Core/Src/can.c.o] 错误 1
make[1]: *** [CMakeFiles/Makefile2:87:CMakeFiles/stm32project1.elf.dir/all] 错误 2
make: *** 

这个问题,说明交叉编译失败,默认使用的还是x86的gcc编译器。可以通过改cmakelist.txt强行让他使用arm工具链。

set(CMAKE_SYSTEM_NAME Generic)
set(CMAKE_SYSTEM_VERSION 1)
set(CMAKE_SYSTEM_PROCESSOR arm)
cmake_minimum_required(VERSION 3.29)# specify cross-compilers and tools
set(CMAKE_C_COMPILER arm-none-eabi-gcc)
set(CMAKE_CXX_COMPILER arm-none-eabi-g++)
set(CMAKE_ASM_COMPILER  arm-none-eabi-gcc)
set(CMAKE_AR arm-none-eabi-ar)
set(CMAKE_OBJCOPY arm-none-eabi-objcopy)
set(CMAKE_OBJDUMP arm-none-eabi-objdump)
set(SIZE arm-none-eabi-size)
set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)
set(CMAKE_C_FLAGS "-mcpu=cortex-m4 -mthumb")
# project settings
project(stm32project1 C CXX ASM)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_C_STANDARD 11)

注意不要运行makefile,而是运行OCD project,需要改一下调试配置如下图,让他生成elf文件,先编译,再运行,最后调试。

可以改面板配置文件,我这里的配置文件是示例的配置文件。

更新cubemx工程,更新cmake(这俩功能在工具-cmake选项里)

重新编译,结果如下,hex文件可以用于烧录:


这几天一直使用远程控制电脑的方式,完成编译配置并写出这篇文章,体验感很好。

远程控制电脑的配置文章在这里:

如何在linux系统上完成定时开机和更新github端口的任务-CSDN博客


 


问题集锦:

1. 发现cubemx生成代码后没有driver文件夹

cubemx未下载资源包

需要打开help-embedded software package manager并下载相关资源包

 看一下生成文件夹:

2. 怎么快速把linux上写的项目环境搬运到win系统

当然不是通过ioc文件重新生成keil环境代码()

使用cubeide就可以了,下载最新版的,然后在里面加载project文件

记得设置生成hex文件,默认只生成elf文件

我目前有点嫌费劲,暂时使用flymcu烧录hex文件,今天就会配置使用软件烧录的方式

http://www.dinnco.com/news/48412.html

相关文章:

  • 做我女朋友的网站广告的六种广告形式
  • 湛江住房和城乡建设部网站浏览器下载安装
  • 西安地区网站建设网络seo软件
  • 做网站真的可以赚的钱吗石家庄关键词优化平台
  • 济南怎样做网站推广无锡谷歌优化
  • 网站建设合同范本下载企业营销策划方案
  • 湛江专业建网站哪家好人员优化方案
  • 做网站学哪些语言不受限制的浏览器
  • 资料查询网站怎么做免费b站推广网站下载
  • 河南seo和网络推广企业网站优化服务公司
  • 做男性服装的网站网络营销一般月薪多少
  • 做设计网站的工作怎么样厦门网络推广外包
  • 网站开发 语言 架构 数据库怎么开展网络营销推广
  • 做网站前后端的发布流程品牌网络营销策划书
  • 曲靖网站建设互联网全网推广
  • 手机网站编程语言广东东莞最新疫情
  • 怎么在网站上投放广告郑州网站建设哪里好
  • 广州市网站建设在哪里seo链接优化
  • 外贸网站虚拟主机西安百度关键词包年
  • 做网站是用的那个开发软件下载安装百度
  • 株洲网页定制seo对网络推广的作用是什么?
  • 做公司网站首页合肥建站公司seo
  • 网站建设成功案例搜索引擎优化解释
  • 专业建站公司报价单制作网页链接
  • 网站开发技术的简历就业培训机构有哪些
  • 微信公众号外链接网站开发网站页面关键词优化
  • 网站 图片 自动往右移广告安装接单app
  • 用香港服务器建网站做微商外贸网站都有哪些
  • 鼓楼做网站公司哪家好汕头网站建设推广
  • 仅仅建设银行网站打不开链接式友谊