韦东山ARM第一期总结


一切都站在裸机开发者的角度而言

01 - 裸机开发特点

1.1 - 51 / Arduino / STM等单片机

  回顾最简单的51单片机,到方便开发的Arduino,到能迅速成型的STM,在裸机的开发角度而言,表现为存在越来越丰富强大的API,以及编译链接等细节对程序员越来越透明化,可以得出如下特点:
  1、方便的IDE,编译套件一条龙服务,一键编译下载运行调试
  2、配置寄存器,功能模块化,任务顺序执行
  3、程序从main()开始,C/C++语言编程
  4、程序只运行在后台(大循环)和前台(中断
  5、程序的逻辑设计固定,逻辑比较简单,功能比较单一
  6、程序员不需要关心堆栈内存等问题
  7、程序员直接使用修饰符就可以使用中断函数

1.2 - ARM单片机

  1、不固定的编辑工具,原始的gcc编译链,额外的下载器,调试方法单一
  2、配置寄存器,功能模块化,任务顺序执行
  3、程序从汇编start.S开始,汇编 / shell / C语言编程
  4、程序能运行在若干种模式内,宏观上也分为后台(大循环)和前台(异常)
  5、程序的逻辑设计固定,逻辑比较简单,功能比较单一
  6、程序员需要设置程序运行的堆栈,管理内存
  7、中断需要程序员去配置寄存器、分辨触发位、以及提供中断函数

02 - 总结

  对ARM裸机而言,更像是从轮子造起,需要用大量的工作去配置一个能让main()执行的环境,其实51-STM等强大丰富的IDE比如keil已经替我们完成了前面的工作,所以ARM裸机开发是完完全全反应了一个单片机真实的运行流程

内容51 / Arduino / STMARM单片机
编辑IDE套件任意文本编辑器
编译IDE套件原始gcc编译链
下载IDE套件特定的额外下载器
调试IDE套件串口 / LCD 等可视化设备
编程语言纯C/C++汇编 + shell + C
程序的开始点main()start.S
堆栈内存问题不关心需要自定义配置管理
中断使用修饰符需要对CPU模式和寄存器操作
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.1 课程内容嵌入式软件工程师的学习路线一般是:单片机、RTOS、Linux。当你掌握单片机开发后,如果要进一步提升编程水平,建议学习RTOS(Real Time Operating System,实时操作系统)。有很多优秀的RTOS,比如FreeRTOS、RT-Thread、UCOS等等。FreeRTOS使用范围最广泛,RT-Thread生态丰富,UCOS是收费的并且很少使用了。对于初学者,建议先学习FreeRTOS。只要学会了任意一款RTOS,肯定就会使用其他RTOS了。我们在2022年已经推出了“FreeRTOS快速入门”课程。为何还要重新制作“FreeRTOS入门与工程实践”?“FreeRTOS快速入门”只是讲解FreeRTOS的各类API的理论、用法、示例,这些实验是基于Keil自带的STM32F103模拟器。没有使用更多的硬件模块、不能体现工作中的实际场景。在“FreeRTOS入门与工程实践”,将引入更多的硬件模块,并展示实际工程示例中的用法。另外,基于RTOS的程序一般都比较复杂,涉及的源文件非常多,在工作中一般都基于“面向对象”的思想来写程序。所以,本课程会涉及如下内容:讲解FreeRTOS的常用API:理论、用法选择合适的硬件模块,展示这些API的实例实现合适的小项目,展示工作中的编程方法1.2 讲课方式对于每一个实验,我们会精心设计:要解决什么问题;然后讲解FreeRTOS提供的解决方法。讲解FreeRTOS的API及内部原理(不深入讲解内部源码,只是进行原理性介绍)讲解实验过程使用的模块的接口函数(只讲使用,不讲内部实现,模块的源码实现单独开课讲解)讲解原理时,配合着文档、现场画图进行讲解,跟学校老师写黑板一样最后现场从0编写程序并调试一切都是现场操作,绝对不会照着PPT念,绝对不会照着现成的代码讲解。只有现场从0操作,学员才能身临其境地学习,跟着教程:碰到问题、解决问题。1.3 硬件平台本课程基于DshanMCU-103开发套件进行开发,它由3部分组成:STM32F103C8T6的最小系统板、扩展底板、各类模块。如下图所示:  上述硬件再加一个ST-Link即可学完本课程所有内容。主板DshanMCU-103是基于STM32F103C8T6的最小系统板。之所以选择最小系统板,而不是把所有模块都放在一个整体的电路板上,目的如下:低成本尝试:嵌入式软件开发并不一定适合你,可以购买最小系统板进行体验、及时放弃按需购买:用到再买,讲究一个性价比 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值