我是嵌入式系统开发领域的初学者。我想就以下问题作出一些澄清。
发布于 2020-02-07 12:27:40
。
发布于 2020-02-07 15:24:43
除了电源和时钟引脚等基本功能外,单片机内部还有许多硬件外设。硬件外设是一种类似于GPIO (通用输入/输出)、ADC、UART、SPI等的硬件外设,每个硬件外设都有许多可能的引脚,可以将其功能路由到其中。
传统上,这些都是固定的-如果你想要UART Tx,那么你总是会得到它的一些固定的引脚号码,拿走或离开它。现在,大多数MCU在内部是相当灵活的,允许您将硬件外围功能重新路由到几乎任何您喜欢的引脚。
在任何一种情况下,多个硬件外设可以共享相同的引脚,然后是特定于单片机的优先。例如,默认情况下GPIO可以出现在引脚上,但是如果您启用UART,那么MCU可能会声明您在该引脚上获得了UART Tx。
至于称为GPIO的硬件外围设备,它们几乎总是分组在端口中,其中每个端口由多个引脚组成。大多数情况下,端口寄存器要么是8位,要么是CPU字长的大小。各个端口寄存器中的每个位对应于一个引脚。
您将有一个端口数据寄存器,它是对引脚的实际读/写,数据方向寄存器,说明输入或输出,然后各种其他寄存器中断,拉电阻器启用等。
发布于 2020-02-20 10:46:20
我强烈建议您阅读一些嵌入式硬件/软件书籍(例如,新知识,所有用于嵌入式系统的书籍)和数据表。
https://stackoverflow.com/questions/60113314
复制相似问题