前言📖
什么是可编程(Programmable)? MCU经历了一下几个阶段:
- 纯硬件连线逻辑时代(Hardware Logic) 工程师们使用继电器、晶体管,或者使用逻辑门(与或非门)搭建电路。电路是固化在电路板上的,如果想改变逻辑,就得拿起络铁重新焊电路。 特点:没有CPU,没有内存
- 掩膜ROM时代(Mask ROM)– “芯片印好就不能改” 这是真正意思上的第一批MCU(TI的TMS1000)的工作方式,这时候已经有了CPU的雏形,但可编程是非常昂贵且麻烦的事情。可以理解为芯片在制作的时候程序代码就已经“刻”进去了。 挑战:如果芯片里有Bug,相当于这堆芯片全是废铁。
- UV-EPROM时代 写代码节奏是:程序员写一个小时代码-> 烧录-> 错了一个点 -> 晒20分钟紫外线 -> 重来
- OTP(One-Time Programmable)时代 节约成本,只写一次,写错了就扔掉
- 现代可编程技术
由于Flash技术的发展
什么是软硬件协同仿真? 简单的从字面意思来理解,软硬件协同意味着在仿真中,既要软件参与,也要硬件参与,分工不同。 在一颗集成了ARM Cortex-M/R/A系列的处理器(CPU)的MCU芯片中,
- arm-gcc交叉编译工具链
- cmsis
- srec_cat