STM32 GPIO一些寄存器的作用(适合新手)

[复制链接]
3164|0
 楼主| kyzb001 发表于 2012-7-5 14:08 | 显示全部楼层 |阅读模式
  1. /*******************************************************************************
  2. *************************        CRL        CRH        寄存器配置**********************************

  3. ****CNFx[1:0]:端口x配置位(x = 8…15)
  4. **
  5. ****在输入模式(MODE[1:0]=00) :
  6. **                00:模拟输入模式
  7. **                01:浮空输入模式(复位后的状态)
  8. **                10:上拉/ 下拉输入模式
  9. **                11:保留
  10. ****在输出模式(MODE[1:0]>00):
  11. **
  12. **                00:通用推挽输出模式
  13. **                01:通用开漏输出模式
  14. **                10:复用功能推挽输出模式
  15. **                11:复用功能开漏输出模式
  16. **
  17. ****MODEx[1:0]:端口x的模式位(x = 8…15)
  18. **
  19. **                00:输入模式( 复位后的状态)
  20. **                01:输出模式,最大速度10MHz
  21. **                10:输出模式,最大速度2MHz
  22. **                11:输出模式,最大速度50MHz
  23. *******************************************************************************/

  24. /*LCKK[15:0]:锁键                                                

  25.         该位可随时读出,它只可通过锁键写入序列修改。
  26.          
  27.         0:端口配置锁键位激活
  28.         1:端口配置锁键位被激活,下次系统复位前GPIOx_LCKR寄存器被锁住。
  29. *******************************************************************************
  30.         锁键的写入序列:
  31.         写1 -> 写0 -> 写1 -> 读0 -> 读1
  32.         最后一个读可省略,但可以用来确认锁键已被激活。
  33.        
  34. 注:在操作锁键的写入序列时,不能改变LCK[15:0]的值。
  35.         操作锁键写入序列中的任何错误将不能激活锁键。
  36. */
  37. /*------------------------ General Purpose and Alternate Function IO ---------*/
  38. typedef struct
  39. {
  40.   vu32 CRL;                                /* 配置寄存器*/
  41.   vu32 CRH;
  42.   vu32 IDR;                                /* 输入寄存器   只能以16位的数据读出*/
  43.   vu32 ODR;                                /* 输出寄存器        只能以16位的数据写数据*/
  44.   vu32 BSRR;                        /* 端口置高          可以对某个端口进行拉高操作*/
  45.   vu32 BRR;                                /* 端口拉低          可以对某个端口进行拉低操作*/
  46. /*        LCKK[15:0]:锁键
  47.         该位可随时读出,它只可通过锁键写入序列修改。
  48.         0:端口配置锁键位激活
  49.         1:端口配置锁键位被激活,下次系统复位前GPIOx_LCKR寄存器被锁住*/
  50.   
  51.   vu32 LCKR;                    /* 锁定端口的模式,每个锁定位锁定控制寄存器(CRL, CRH) 中相应的4个位*/
  52. } GPIO_TypeDef;



  53. 参考手册上都有的, 只是写到头文件里面, 下次就不用翻参考手册了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:Is this my life

15

主题

624

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部