模拟比较器 (ACS)-驻留在该供应商(过去)和当前 MCU 上-提供有价值的模拟测量和信号-以及"设置"之后-运行(几乎)完全不受(其他) MCU 的影响。 这种执行能力(基本上作为独立的硬件块)极大地帮助了那些 需要"监管机构批准"的应用程序。 (或有用的) (即我们"见证了"模拟比较器"在(其他) MCU 软件功能(故意)中断时"继续执行")!
现在、这些模拟比较器的设置并不是"如它可能/应该那样清晰"。 虽然我的公司在 LX4F (过去)和4C123 (现在)的"ACS"方面取得了成功、但与"最全面的"其他 MCU 外设相比、(通常的) API 源并不引人注目。
此处介绍-是公司/我的最大努力-指导"客户-用户"取得成功的 "模拟比较器"结果。 同样,令人惊讶的是,通常的“一流”API 在这方面也有所下降。
为了"解决" API 的不足-提供了具有相关添加内容(为清晰起见、使用颜色编码)的 MCU 手册摘录(真实副本)。
第一部分-来自 MCU 的 GPIO 部分: (来自4C1294手册)
GPIO 信号具有备用硬件功能。 下表列出了 GPIO 管脚及其 模拟和数字复用功能。 将 GPIO 备用功能选择(GPIOAFSEL)和 GPIODEN 寄存 器中相应的位置位、并将 GPIO 端口控制(GPIOPCTL)寄存器中的 PMCx 位域配置为下表所示的数字编码、即可启用数字备用硬件功能。 下表中的模拟信号也可耐受3.3V 电压、 通过"清除 GPIO 数字使能(GPIODEN)寄存器中的 DEN 位进行配置。"
我已随意 "突出显示" 了与模拟比较器相关的部分(上面)。 请注意、这些模拟比较器的"反相和同相输入"都是模拟的! 输出-为了使事情保持有趣-是数字化的!
现在进入"下表"(参考上文第2句):
要选择模拟比较器输入-也需要-、在 "GPIOAMSL"寄存器中"设置正确的(配合位)。 API 尚未提供直接功能-以实现此目的。
另请注意:"GPIOPCTL"寄存器"必须在"4位字段"中用"0"编码-为每个端口位保留-才能用作模拟比较器输入。 同样、没有直接的 API 函数实现这一点。
为此、我们添加了更多源信息-来自 MCU 手册:
如前所述、"常见的 API 可疑情况" 在实现这些关键寄存器(和位)设置方面远远不够-这是必需的。
那么该怎么办? "if and when "- API "Fails to satise"-可以 使用 DRM (通过 HWREG 宏)-(可能)将转义供应商的(不要使用 DRM) wrath! (可能)
随后应(或可能)更多-目前芝加哥正在下雪-在3天前达到71°F 后...
 
				 
		 
					