STM32寄存器列表 GPIO输入输出相关寄存器

作者:fly 发布于:2014-3-8 16:09 分类:嵌入式

GPIOx_CRL(端口配置低寄存器x=A…E)

31-0单位:CNF端口x配置位(软件控制0-7管脚)定义:在输入模式[1:0]=00下:00(模拟输入),01(浮空输入(复位后状态),10(上/下拉输入),11(保留)

         在输出模式(MODE[1:0]>00)下:00(通用推挽),01(通用开漏),10(复用推挽),11(复用开漏)

31-0双位:MODE端口x的模式位(软件控制0-7管脚)定义:00(输入模式(复位后模式),01(最大10M输入),10(最大2M输出),11(最大50M输出)

 

GPIOx_CRH(端口配置高寄存器x=A…E)

31-0单位:CNF端口x配置位(软件控制8-15管脚)定义:在输入模式[1:0]=00下:00(模拟输入),01(浮空输入(复位后状态),10(上/下拉输入),11(保留)

         在输出模式(MODE[1:0]>00)下:00(通用推挽),01(通用开漏),10(复用推挽),11(复用开漏)

31-0双位:MODE端口x的模式位(软件控制8-15管脚)定义:00(输入模式(复位后模式),01(最大10M输入),10(最大2M输出),11(最大50M输出)

 

GPIOx_IDR(端口输入数据寄存器x=A…E)

15-0位:IDRy端口输入数据(y=15-0)这些位为只读并只能以16位的形式读出。读出的值为对应IO的状态。

 

GPIOx_ODR(端口输出数据寄存器x=A…E)

15-0位:ODRy端口输出数据(y=15-0)这些位可读可写并只能以字的形式操作。注:对GPIOx_BSRR,可以分别的对各个ODR位进行独立的设置/清除。

 

GPIOx_BSRR(端口位设置/清除寄存器x=A…e)

31-16位:BRy清除端口x的位,这些位只能写入并只能以字的形式操作,定义:0(对应的ODRy位不产生影响),1(清除对应ODRy位为0)

15-0位:Bsy设置端口x的位,这些位只能写入并只能以字的形式操作,定义:0(对应的ODRy位不产生影响),1(设置对应ODRy位为1)

注:如果同时设置了Bsy和Bry的对应位,Bsy位起作用。

 

GPIOx_BRR(端口位清除寄存器x=A…E)

15-0位:Bry清除端口x的位(y=15-0)这些位只能写入并只能以字的形式操作,定义:0(对对应位无影响),1(清除对应位的ODR位为0)

 

 

GPIOx_LCKR(端口配置锁定寄存器x=A…E)

16位:LCKK锁键,该位可随时读出,它只可通过锁键写入序列修改,定义:0(端口配置锁键位激活),1(端口配置锁位被激活,下次复位前GPIOx_LCKR被锁住)

     锁键写序列:写1-》写0-》写1-》读0-》读1 最后一个读可省略,但可以用来确认锁键已被激活

     注:在操作锁键的写入序列时,不能改变LCK[15-0]的值,且操作写入序列中的任何错误将不能激活锁键

15-0位:LCKy端口x的锁位y(y=0-15)这些位可读可写但只能在LCKK位为0时写入,定义:0(不锁定端口的配置),1(锁定端口的配置)

 

 

AFIO_EVCR(事件控制寄存器)

7位:EVOE允许事件输出(手动)当设置该位后,Cortex的EVENOUT将连接到由PORT[2:0]和PIN[3:0]选定的IO口

6-4位:PORT[2:0]端口选择,选择用于输出Cortex的EVENTOUT信号的端口。定义:000(PA),001(PB),010(PC),011(PD),100(PE)

3-0位:PIN[3:0]引脚选择,选择用于输出Cortex的EVENTOUT信号引脚,

      定义:0000(选择Px0),0001(选择Px1),0010(选择Px2),0011(选择Px3),0100(选择Px4),0101(选择Px5),0110(选择Px6),0111(选择Px7)

            1000(选择Px8),1001(选择Px9),1010(选择Px10),1011(选择Px11),1100(选择Px12),1101(选择Px13),1110(选择Px14),1111(选择Px15)

 

 



AFIO_MAPR(复用重映射和调试IO配置寄存器)

26-24位:SWJ_CFG[2:0]串行线JTAG配置,这些位只可由软件写,读这些位将返回未定义的数值。用于配置SWJ和跟踪复用功能IO口。SWJ(串行JTAG)

        支持JTAG或SWD访问Cortex的调试端口。系统复位后的默认状态时启用SWJ但没有跟踪功能,这种状态下可以通过JTMS/JTCK脚上的特定信号选择JTAG或SW模式

        定义:000(完全SWJ,复位状态),001(完全SWJ,但没有NJTRST),010(关闭JATG启动SW),100(关闭JATG,关闭SW)

20位:ADC2_ETRGREG_REMAP-adc2规则转换外部触发重映射(手动)它控制与ADC2注入转换外部触发相连的触发输入。当该位置0时,

     ADC2规则转换外部触发与EXTI11相连;当该位置1时,ADC2规则转换外部触发与TIM8_TRGO相连

19位:ADC2_ETRGINJ_REMAP-ADC2注入转换外部触发重映射(手动),它控制与ADC2注入转换外部触发相连的触发输入。当该位置0时

     ADC2注入转换外部触发与EXTI15相连;当该位置1时,ADC2注入转换外部触发与TIM8通道4相连。

18位:ADC1_ETRGREG_REMAP-adc1规则转换外部触发重映射(手动)它控制与ADC1注入转换外部触发相连的触发输入。当该位置0时,

     ADC1规则转换外部触发与EXTI11相连;当该位置1时,ADC1规则转换外部触发与TIM8_TRGO相连

17位:ADC1_ETRGINJ_REMAP-ADC1注入转换外部触发重映射(手动),它控制与ADC1注入转换外部触发相连的触发输入。当该位置0时

     ADC1注入转换外部触发与EXTI15相连;当该位置1时,ADC1注入转换外部触发与TIM8通道4相连。

16位:TIM5CH4_IREMAP-TIM5通道4内部重映射(手动)它控制TIM5通道4内部映像。定义:0(TIM5_CH4与PA3相连),1(LSI内部振荡器与TIM5_CH4相连,对LSI校准)

15位:PD01_REMAP端口D0/端口D1映像到OSC_IN/OSC_OUT(手动)当不使用HSE时PD0和PD1可映像到这两个管脚,定义:0(不映像),1(PD0-IN,PD1-OUT)

14-13位:CAN_REMAP[1:0]CAN复用功能重影像(手动)在只有单个CAN接口的产品上控制复用功能的重映像

12位:TIM4_REMAP定时器4的重映像(手动)控制将TIM4的通道1-4映射到GPIO上

11-10位:TIM3_REMAP[1:0]定时器3重映像(手动),控制定时器3的1-4通道在GPIO端口的映像

9-8位:TIM2_REMAP[1:0]定时器2重映像(手动)控制定时器2的1-4通道和外部触发ETR在GPIO端口的映像

7-6位:TIM1_REMAP[1:0]定时器1的重映像(手动)控制定时器1的通道1-4、1N-3N、外部触发和刹车输入在GPIO的映像

5-4位:USART3_REMAP[1:0]USART3的重映像(手动)控制USART3的CTS、RTS、CK、TX、RX复用功能在GPIO端口的映像

3位:USART2_REMAP[1:0]USART3的重映像(手动)控制USART2的CTS、RTS、CK、TX、RX复用功能在GPIO端口的映像

2位:USART1_REMAP-USART1的重映像(手动)控制USART1的TX、RX复用功能在GPIO端口的映像

1位:I2C1_REMAP-I2C1的重映像控制I2C1的SCL和SDA复用功能在GPIO端口的映像

0位:SPI1_REMAP-SPI1的重映像控制SPI1的NSS、SCK、MISO、MOSI复用功能在GPIO端口的映像


发表评论:

 
Powered by emlog sitemap