RP2040软件开发工作流
RP2040软件开发工作流
前面的工程配置基本上讲清楚了各个方法的优劣,这里相当于做个总结,下面有两种选择。这个开发是在基于官方SDK的基础上来说的。硬件内容和详细的代码开发解释放到后面。
1、使用Segger Embedded Studio
新建工程,添加pico-sdk,添加路径(看起来默认是没有pico-sdk路径的),
添加要包含的库。
更改Debugger选项,前面已经说过了。
然后编译调试。所以说这个方法是很简单的,而且输出printf的内容在终端上很简单。
唯一麻烦的是要自己把库加进去,不过只要配置好了模板,就可以做到程序和官方那一套Cmake的程序兼容,所以这里先不用这种方法。
2、使用VSCODE或者CLion
两者不冲突,所以放到一起说:
这里生成工程之后,其实是个很简单的模板,如果不愿意用VScode,生成的时候就可以不勾选vscode作为ide那个选项,但是勾上无妨。生成工程部分由于他还在更新生成器,所以暂时不做大改动。
2.0 配置VScode
之前的配置已经说了,所以工作流里面要做的就是,复制之前备好的.vscode
,然后右键文件夹打开code。
选择Kit为arm gcc,然后编译,或者直接点F5进行调试,第一次编译会比较慢,大概有两分钟,然后后面每次调试启动大概半分钟(还是很慢。。)
目前似乎调试多核的时候有问题,是插件Cortex-Debug的问题,单核OK.
右键变量可以添加到监视,监视器也可以直接写表达式,这些IDE有的vsc都有。
2.1 配置Clion
右键文件夹打开为Clion工程,然后会弹出提示,更改generator为Mingw Makefiles(默认是Ninja,当然也可以用,但是要先删除之前用生成器生成的Cmakecache.txt,或者生成模板的时候不要使用cmake)。-- 然后等一会儿就加载好了,添加一个openocd run & download,配置参考之前写的。
Cmakelist添加库的时候,比如hardware_adc这种,默认不会自动更新出来,导致路径点不进去,回弹出来启用自动更新,VScode的插件是默认实时更新的。
然后调试功能就仁者见仁,反正该有的都有,就是我没找到怎么输出printf
。
不管怎么说,Clion当然是一个完善的IDE,但是他是付费工具。
2.2 总结
生成模板-复制配置/增加配置-参考例程复制粘贴代码和CMakelist内容-编译调试。
3、代码工作如何构建
这里简单说一下马上就能上手的:查看例程,每个例程对应一个cmakelist和源文件,其中源文件包含的库,在cmakelist里面有体现,比如
# Add any user requested libraries
target_link_libraries(PicoADChardware_dmahardware_adc)
对应添加头文件 hardware/adc.h
hardware/dma.h
这样的内容呢,简单来说,复制粘贴到位包括源文件和cmakelist.txt.
至于详细的解释,需要看官方的c sdk手册,放到下一篇里面说。
而Segger emStudio就没有这些事儿。。。当然了,这个也可以事先全部库都加进来。
RP2040软件开发工作流相关推荐
- 软件开发工作流-GitFlow
搞开发的相信大部分人git天天都在用,那么一般我们在实际工程当中,遵循一个合理.清晰的Git使用流程,是非常重要的.否则,每个人都提交一堆杂乱无章的commit,项目很快就会变得难以协调和维护.那么是 ...
- (广州)软件开发定制服务,工作流引擎 OA 库存管理系统
本人专注于工作流的研究设计同时提供软件开发定制服务,工作流引擎 OA系统 库存管理系统 如果有机会合作共事请联系:15817167503(本人在广州) QQ:1311663711 加时请注明软件定制 ...
- 软件开发向大数据开发过渡_如果您是过渡到数据科学的开发人员,那么这里是您的最佳资源...
软件开发向大数据开发过渡 by Cecelia Shao 邵Ce It seems like everyone wants to be a data scientist these days - fr ...
- 一步一步学习开发BPM工作流系统--------(一)为什么要开发工作流系统
写下这个这题目我知道意味着一项艰巨冗长的任务开始了,做工作流方面的研发已经7年了,总算能拿出一些东西来,虽然走过很多弯路,但最终都变成收获.今天把一些心得和成果共享出来,和大家一起交流.探讨,也希望能 ...
- 编程学习笔记(第三篇)面向对象技术高级课程:绪论-软件开发方法的演化与最新趋势(3)软件开发的现状、UML扩展...
一.软件开发的现状 软件领域正在发生一个巨变,特别是近几年来,软件领域正在发生翻天覆地的变化. 这一变化主要以这个云 + 端大数据, 这些是随着目前最先进的一些技术的产生而产生的. 随着这些新的技术以 ...
- Github Actions:再次改变软件开发
本文转自 FEPulse 公众号(微信搜索 FEPulse,精选国内外最新前端资讯,为你把握前端脉搏). Github Actions 是 GitHub Universe 大会上发布的,被 Githu ...
- Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725
Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725 1. DSL主要分为三类:外部DSL.内部DSL,以及语言工作台. 1 2. DSL ...
- Mendix将升级低代码软件开发平台,发布全新数字化生态系统、行业云
编辑 | 宋 慧 供稿 | Mendix 企业低代码应用开发全球领导者Mendix, a Siemens business在Mendix World 2021大会上宣布推出全新升级的数字化生态系统.M ...
- 用MSBuild.... DailyBuild和软件开发流程的东东
看到CoolBug在研究有关NAnt的东东,感觉非常的有趣,也来聊聊这个问题,聊聊我喜欢的MSBuild,关于MSBuild 我想JJX比我更有发言权,很早的时候他的WebLog就有记载MSBuild ...
最新文章
- UIBezierPath 的使用介绍
- Struts 验证码登陆
- 2016.11.30
- android网络游戏开发实战pdf_Python项目开发实战+第2版PDF高清文档下载
- Python安装、配置图文详解
- QT的QOpenGLTexture类的使用
- Qt 生成bin文件
- PineApple_Ninja.js
- log添加 oracle redo_添加Redo log Member/Group-Oracle
- 判断QButtonGroup中哪个QRadioButton被选中
- Javascript节点的访问
- oracle exp不生成dumpfile,预估出实际导出文件的大小。
- spring官方文档列表
- puppet成长日记四 Exec资源详细介绍及案例分析
- Windows 安装 Oracle Java JDK
- Word2003中Visio2003图打印错误的解决方法
- 卸载精灵 v4.2 是什么
- 前端使用UtoVR Player全景视频播放器实现360°C全景VR视频
- android系统定制教程,Android系统DIY修改 定制第三方ROM教程
- python好学吗要有什么基础-Python好学吗难不难?0基础能学会吗?
热门文章
- c语言贪吃蛇控制台版
- 网络读卡器开发,带你智能感知无线设备
- Fuubo微博客户端产品体验
- java输入长宽高计算表面积_设计一个C语言程序计算长方体体积和表面积,如何通过键盘输入长宽高?...
- 参加了微软的千人机器人足球比赛!
- 新中大SE(ngpower)凭证修改、删除
- JAVA计算机毕业设计企业门户网站(附源码、数据库)
- mysql 不严谨模式_mysql不严谨模式怎么开启?
- 自己动手写android手机桌面-第一篇
- 青鸟学员圆满完成“1+X”Web前端开发职业技能等级证书考试