3.8 环境变量
环境变量与文件路径绑定,在linux中可以使用环境变量名代替文件路径
输入env 显示所有环境变量 环境变量=文件路径名(除了代替文件路径还可以代替其他的)
输入 echo $环境变量名 ,查看环境变量的值
系统环境变量:公共的,对全部的用户都生效。
用户环境变量:用户私有的、自定义的个性化设置,只对该用户生效
系统环境变量文件是/etc/profile,用户环境变量文件是etc/.bashrc,一般推荐修改etc/.bashrc
在shell中输入修改环境变量 export ORACLE_HOME=/oracle/home 关掉终端就失效了
3.9 交叉编译工具链
码住,等我重新安装一个虚拟机再写
5.14 RAM、ROM、flash、eMMC
RAM:随机存储器,可以读写,断电的时候数据丢失(运行内存)
ROM:只读存储器,不能随意修改,断电的时候数据保存(程序存储器)
Flash闪存是属于ROM的一种
EMMc=NAND Flash+闪存控制芯片+标准接口封装
EMM类似于硬盘,将NAND Flash与控制器集成,通过内在的控制器管理Falsh
单片机与时钟
时钟信号是内部芯片或者外部晶振产生,是单片机的脉搏决定了cpu的频率,时钟信号推动单片机各个部分执行相应的指令。
- STM32时钟系统主要的目的就是给相对独立的外设模块提供时钟,也是为了降低整个芯片的耗能。
- 一个机器指令一个时钟周期
STM32本身十分复杂,外设非常多 但我们实际使用的时候只会用到有限的几个外设,使用任何外设都需要时钟才能启动,但并不是所有的外设都需要系统时钟那么高的频率,为了兼容不同速度的设备,有些高速,有些低速,如果都用高速时钟,势必造成浪费 并且,同一个电路,时钟越快功耗越快,同时抗电磁干扰能力也就越弱,所以较为复杂的MCU都是采用多时钟源的方法来解决这些问题。所以便有了STM32的时钟系统和时钟树
通用IO与复用IO
通用IO是指使用GPI0控制引脚的输如输出
复用IO是指使用非GPIO控制引脚的输入输出
一个引脚只能一种复用,不然要使用重映射
通用与复用不能同时存在