Study
学习
共 10 个主题、4 个大板块、30 条推荐链接。 点进任意主题可以看到说明和对应的课程视频。
编程语言
4 个主题C 语言
2 条链接简单高效,较为底层的语言,嵌入式开发常用,51单片机、stm32程序大部分都是基于c语言开发的,不过特有的指针概念有点难以理解
进入 →Python
3 条链接上手比较简单的语言,易读性高,第三方库多,对于完全没接触编程的人来说是个比较好的入门选择,如果后续对视觉相关或数据相关的内容有要求的话也是个不错的选择
进入 →Verilog
4 条链接FPGA常用,一种硬件描述语言,和c语言有点像,对数字电路里的内容要有一定理解,和常见编程语言的思路有很大区别,上手难度较高,建议在学习c语言和数电之后有学FPGA想法的再来学
进入 →C++
1 条链接在 C 的基础上加上类和标准库,大部分c语言代码可以在c++中编译运行(比如dev c++),写算法题和做嵌入式上位机都够用,不过本人对c++了解不太多,因为学校课程里有这门课就加进来了
进入 →嵌入式开发
3 个主题STM32
5 条链接最主流的 32 位单片机之一,主要开发方式分为HAL库和标准库版本,HAL库有图形化配置界面,可以自动生成工程文件;标准库要手动创建工程和配置参数,官方已经不再维护更新,不支持较新的芯片。两个库可以共用一个编译器,HAL库多了cubemx或者cubuide。目前网上关于stm32的项目还是标准库居多,大部分学校教stm32也是标准库,所以建议在学习hal库之后也去了解了解标准库
进入 →嵌入式 Linux
3 条链接嵌入式进阶首选之一,大部分开发板功能接近一个小型电脑,单mcu在低功耗、轻量任务下好用,但是如果涉及到AI、视觉识别、多媒体、物联网云端等较为复杂项目的时候,不论是性能还是开发效率上单纯的mcu已经完全不够看的了,这个时候就需要考虑到到嵌入式linux来开发。由于搭载Liunx需要更高性能的芯片和更复杂的外围器件,所以linux开发板价格普遍会偏贵,而且很多时候发热非常严重。
进入 →Arduino
3 条链接非常适合单片机入门和简单项目开发的开源平台,封装程度很高,不用深究寄存器、时钟这些概念就能完成开发,调用现成的库就可以驱动外设,甚至在经过配置后也能用arduino开发stm32。但是封装臃肿、资源消耗大,价格偏贵,而且很难接触到芯片本身和外设的底层。对于非带电工科相关专业但是对单片机感兴趣的人群是个不错的选择
进入 →