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软件开发工作流相关推荐

  1. 软件开发工作流-GitFlow

    搞开发的相信大部分人git天天都在用,那么一般我们在实际工程当中,遵循一个合理.清晰的Git使用流程,是非常重要的.否则,每个人都提交一堆杂乱无章的commit,项目很快就会变得难以协调和维护.那么是 ...

  2. (广州)软件开发定制服务,工作流引擎 OA 库存管理系统

    本人专注于工作流的研究设计同时提供软件开发定制服务,工作流引擎 OA系统 库存管理系统 如果有机会合作共事请联系:15817167503(本人在广州) QQ:1311663711 加时请注明软件定制 ...

  3. 软件开发向大数据开发过渡_如果您是过渡到数据科学的开发人员,那么这里是您的最佳资源...

    软件开发向大数据开发过渡 by Cecelia Shao 邵Ce It seems like everyone wants to be a data scientist these days - fr ...

  4. 一步一步学习开发BPM工作流系统--------(一)为什么要开发工作流系统

    写下这个这题目我知道意味着一项艰巨冗长的任务开始了,做工作流方面的研发已经7年了,总算能拿出一些东西来,虽然走过很多弯路,但最终都变成收获.今天把一些心得和成果共享出来,和大家一起交流.探讨,也希望能 ...

  5. 编程学习笔记(第三篇)面向对象技术高级课程:绪论-软件开发方法的演化与最新趋势(3)软件开发的现状、UML扩展...

    一.软件开发的现状 软件领域正在发生一个巨变,特别是近几年来,软件领域正在发生翻天覆地的变化. 这一变化主要以这个云 + 端大数据, 这些是随着目前最先进的一些技术的产生而产生的. 随着这些新的技术以 ...

  6. Github Actions:再次改变软件开发

    本文转自 FEPulse 公众号(微信搜索 FEPulse,精选国内外最新前端资讯,为你把握前端脉搏). Github Actions 是 GitHub Universe 大会上发布的,被 Githu ...

  7. Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725

    Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓  O725 1. DSL主要分为三类:外部DSL.内部DSL,以及语言工作台. 1 2. DSL ...

  8. Mendix将升级低代码软件开发平台,发布全新数字化生态系统、行业云

    编辑 | 宋 慧 供稿 | Mendix 企业低代码应用开发全球领导者Mendix, a Siemens business在Mendix World 2021大会上宣布推出全新升级的数字化生态系统.M ...

  9. 用MSBuild.... DailyBuild和软件开发流程的东东

    看到CoolBug在研究有关NAnt的东东,感觉非常的有趣,也来聊聊这个问题,聊聊我喜欢的MSBuild,关于MSBuild 我想JJX比我更有发言权,很早的时候他的WebLog就有记载MSBuild ...

最新文章

  1. UIBezierPath 的使用介绍
  2. Struts 验证码登陆
  3. 2016.11.30
  4. android网络游戏开发实战pdf_Python项目开发实战+第2版PDF高清文档下载
  5. Python安装、配置图文详解
  6. QT的QOpenGLTexture类的使用
  7. Qt 生成bin文件
  8. PineApple_Ninja.js
  9. log添加 oracle redo_添加Redo log Member/Group-Oracle
  10. 判断QButtonGroup中哪个QRadioButton被选中
  11. Javascript节点的访问
  12. oracle exp不生成dumpfile,预估出实际导出文件的大小。
  13. spring官方文档列表
  14. puppet成长日记四 Exec资源详细介绍及案例分析
  15. Windows 安装 Oracle Java JDK
  16. Word2003中Visio2003图打印错误的解决方法
  17. 卸载精灵 v4.2 是什么
  18. 前端使用UtoVR Player全景视频播放器实现360°C全景VR视频
  19. android系统定制教程,Android系统DIY修改 定制第三方ROM教程
  20. python好学吗要有什么基础-Python好学吗难不难?0基础能学会吗?

热门文章

  1. c语言贪吃蛇控制台版
  2. 网络读卡器开发,带你智能感知无线设备
  3. Fuubo微博客户端产品体验
  4. java输入长宽高计算表面积_设计一个C语言程序计算长方体体积和表面积,如何通过键盘输入长宽高?...
  5. 参加了微软的千人机器人足球比赛!
  6. 新中大SE(ngpower)凭证修改、删除
  7. JAVA计算机毕业设计企业门户网站(附源码、数据库)
  8. mysql 不严谨模式_mysql不严谨模式怎么开启?
  9. 自己动手写android手机桌面-第一篇
  10. 青鸟学员圆满完成“1+X”Web前端开发职业技能等级证书考试