大多数微控制器中都有啥功能?
0 689
1
该提问暂无详细描述
收藏
2021-01-26 16:07 更新 蝈蝈 •  224
共 1 个回答
高赞 时间
0

微控制器不同于微处理器(例如台式机或笔记本电脑中的微处理器),因为它们通常具有大量的内置外围设备,并且还具有两个内部存储器(不仅像微处理器一样高速缓存)。

以下是许多微控制器中的一些外围设备:

  • 使用PLL的可编程时钟(锁相环)
  • 时钟监视器/看门狗定时器
  • ADC(模拟到数字转换器),通常为10或12位
  • 模拟比较器
  • SPI(串行外围接口)
  • I²C(IC间)接口
  • DMA(直接内存访问)
  • USB(通用串行总线)设备,主机或OTG(移动中)
  • UART(通用异步接收器-发送器)
  • 8、16或32位定时器/计数器RTCC(实时时钟日历)
  • GPIO(通用I / O)端口,带有可选的漏极开路输出和可配置的上拉/下拉电阻
  • 外部中断
  • 具有优先级和子优先级的中断控制器
  • PPS(外围引脚选择)可将各种外围设备映射到物理引脚

以下是较不常见的,但经常在高端32位微控制器(以及一些8位和16位微控制器)中找到:

  • DAC(数模转换器)
  • IC(输入捕获)模块
  • 带PWM(脉冲宽度调制)的OC(输出比较)模块
  • SQI(串行四路I / O)接口,通常与SPI结合使用
  • I²S(IC间声音)接口,通常与SPI结合使用
  • 乙太网路
  • 图形控制器或GPU(图形处理单元)
  • 具有真正RNG的加密引擎(随机数生成器)
  • 可编程CRC(循环冗余校验)
  • CAN(控制器局域网)接口
  • PMP(并行主端口)
  • EBI(外部总线接口)
  • EEPROM用于长期数据存储

这就是为什么高端微控制器的数据表通常为500至1000页或更多的原因。

微控制器通常(但并非总是)拥有所有的存储器,包括程序存储和片上数据,而微处理器则使用外部存储器。伴随着这种差异,丰富的外围设备集是微控制器与微处理器的区别所在,后者通常不具有物理接口,只有外部总线和与存储器及外围设备接口的中断线除外。微处理器可能具有内部外设,例如WDT,计时器/计数器,加密引擎等。

上面的清单主要来自144引脚Microchip 32位PIC32MZ2048EFM144的数据手册,该数据手册具有DAC和EEPROM以外的所有这些功能。它还具有FPU(浮点单元)和一些DSP(数字信号处理)指令,以及2 MB的闪存和以200 MHz运行的512K或RAM。

高端微控制器将具有多个串行接口,例如多达六个SPI,六个I²C和六个UART,但是由于引脚限制,不能一次全部激活它们。同样,最多可能有六个模拟比较器,九个定时器/计数器,九个IC和九个OC,以及多达ADC 48通道。

一个非常低端的8位微控制器可能只有一个ADC通道,一个8位定时器而没有串行接口。

六引脚PIC10F322尺寸小巧(SOT-23封装),具有一组不同寻常的外设:

  • 三通道ADC
  • 两个PWM模块
  • 两个8位定时器
  • 可配置逻辑单元(CLC)
  • 数控振荡器(NCO)
  • 互补波形发生器(CWG)

img

但是没有UART,I²C,SPI等,但是其中任何一个都可以通过“位撞击” GPIO(通用I / O)引脚在软件中实现。

它只有512个14位字(896个字节)的闪存和64个字节的RAM。但是其“数据表”将近200页长,需要解释每个外围设备。

本回答来自Tom Crosley, Embedded systems programmer for over 40 years

收藏
2021-01-26 16:09 更新 我爱喝牛奶G •  2074