您好、欢迎来到现金彩票网!
当前位置:秒速快三官网 > 输入输出 >

STM8 通用输入输出口--GPIO

发布时间:2019-06-07 06:35 来源:未知 编辑:admin

  通用输入/ 输出口用于芯片和外部进行数据传输。一个IO端口可以包括多达8 个引脚,每个引脚可以被独立编程作为数字输入或者数字输出口。另外部分口还可能会有如模拟输入,外部中断,片上外设的输入/ 输出等复用功能。但是在同一时刻仅有一个复用功能可以映射到引脚上。复用功能的映射是通过选项字节控制的。请参考数据手册关于选项字节的描述。

  每个端口都分配有一个输出数据寄存器,一个输入引脚寄存器,一个数据方向寄存器,一个选择寄存器,和一个配置寄存器。一个I/O 口工作在输入还是输出是取决于该口的数据方向寄存器的状态。

  每一个端口都有一个输出数据寄存器 (ODR),一个引脚输入寄存器 (IDR) 和一个数据方向寄存器 (DDR) 总是同相关的。

  控制寄存器1(CR1)和控制寄存器2(CR2)用于对输入/ 输出进行配置。任何一个I/O 引脚可以通过对DDR,ODR,CR1 和CR2寄存器的相应位进行编程来配置。

  将DDRx 位清零就选择了输入模式。在该模式下读IDR 寄存器的位将返回对应I/O 引脚上的电平值。

  理论上可以通过软件配置得到四种不同的输入模式:悬浮不带中断输入,悬浮带中断输入,上拉不带中断输入和上拉带中断输入。但是在实际情况下不是所有的口都具有外部中断能力和上拉,用户应参考数据手册中关于每个引脚的实际硬件性能描述来了解更多细节。

  将DDRx 位置1就选择了输出模式。在该模式下向ODR寄存器的位写入数据将会通过锁存器输出对应数字值到I/O 口。读IDR 的位将会返回相应的I/O 引脚电平值。通过软件配置CR1,CR2寄存器可以得到不同的输出模式:上拉输出,开漏输出。

  没有使用的I/O 引脚必须连接到一个固定的电平值。或者是上拉或者是下拉。

  部分I/O 口可以被用作复用功能输入。例如:可以被用来作为输入到定时器的输入捕捉口。复用的输入功能是不会自动选择的,用户可以通过写相应的外设寄存器的控制位来选择复用功能。

  对于复用功能的输入,用户必须通过配置DDR和CR1 寄存器设置将对应的I/O 口设为为悬浮或是上拉输入。

  用户可以在I/O 引脚为输入模式时通过设置Px_CR2 寄存器的相应位来配置某个I/O 作为外部输入中断模式。在该配置下,I/O 引脚上的一个信号沿或是低电平会产生一个中断请求。

  在EXTI_CR[2:1]寄存器中对于每一个中断向量都可以独立编程为上升沿或下降沿触发。

  可以通过对Px_CR2 寄存器的相应位进行编程来单独使能/ 关闭外部中断功能。复位后外部中断是关闭的。

  DC外设可以选择某些I/O 口作为模拟输入通道。如下面一节描述,当使用模拟通道的时候,DC_TDR 寄存器的输入施密特触发器必须被关闭。

  部分I/O 口包括一个内嵌的输入施密特触发器。可以通过ADC_TDR 施密特触发器禁止寄存器来使能/ 禁止施密特触发器。

  复用输出功能为外设输出到外部或者I/O 引脚提供一个方便的操作方法。当复用功能使能时,复用功能模块接管了输出锁存寄存器(Px_ODR) 并强制Px_ODR 相应的位为1。

  复用输出功能可以是上拉或者开漏输出,取决于外设本身和控制寄存器1(Px_CR1) ,输出摆率取决于控制寄存器2 (Px_CR2)的值。

  考虑到要达到最佳性能,SPI输出引脚必须设置为上拉,快速摆率。UART_Tx可以被配置为或者是上拉或者是开漏带外部上拉来实现多从机的配置。

  输出摆率可以使用CR2 的相应位通过软件控制。置位CR相应位选择为10MHz的输出频率。该功能既可以用在开漏也可以用在带上拉的输出模式I/O 口,输出类型为O3 或者O4。请参考引脚描述表来了解每个口的输出类型。

http://thomainsurance.com/shurushuchu/287.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有