OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5341|回复: 1

不知道为什么,求解释!!!!

[复制链接]

5

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
51
金钱
51
注册时间
2014-5-26
在线时间
0 小时
发表于 2014-5-28 19:10:43 | 显示全部楼层 |阅读模式
5金钱
我要弄一个串口通信的设计,我用的是STM32F373VC。我在网上看了个案例,用的是F1的,他有个文件叫STM32_Init.c我没找到,我就直接复制,拿来用了。里面的这几行出现错误。。。求别人整理好的STM32F373VC的固件库!万分感谢!
/*----------------------------------------------------------------------------
 STM32 GPIO setup.
 initializes the GPIOx_CRL and GPIOxCRH register
 *----------------------------------------------------------------------------*/
__inline static void stm32_GpioSetup (void) {
  
  if (__GPIO_USED & 0x01) {                        // GPIO Port A used
    RCC->APB2ENR |= RCC_APB2ENR_IOPAEN;            // enable clock for GPIOA
    GPIOA->CRL = __GPIOA_CRL;                      // set Port configuration register low
    GPIOA->CRH = __GPIOA_CRH;                      // set Port configuration register high
  }

  if (__GPIO_USED & 0x02) {                        // GPIO Port B used
    RCC->APB2ENR |= RCC_APB2ENR_IOPBEN;            // enable clock for GPIOB
    GPIOB->CRL = __GPIOB_CRL;                      // set Port configuration register low
    GPIOB->CRH = __GPIOB_CRH;                      // set Port configuration register high
  }

  if (__GPIO_USED & 0x04) {                        // GPIO Port C used
    RCC->APB2ENR |= RCC_APB2ENR_IOPCEN;            // enable clock for GPIOC
    GPIOC->CRL = __GPIOC_CRL;                      // set Port configuration register low
    GPIOC->CRH = __GPIOC_CRH;                      // set Port configuration register high
  }

  if (__GPIO_USED & 0x08) {                        // GPIO Port D used
    RCC->APB2ENR |= RCC_APB2ENR_IOPDEN;            // enable clock for GPIOD
    GPIOD->CRL = __GPIOD_CRL;                      // set Port configuration register low
    GPIOD->CRH = __GPIOD_CRH;                      // set Port configuration register high
  }

  if (__GPIO_USED & 0x10) {                        // GPIO Port E used
    RCC->APB2ENR |= RCC_APB2ENR_IOPEEN;            // enable clock for GPIOE
    GPIOE->CRL = __GPIOE_CRL;                      // set Port configuration register low
    GPIOE->CRH = __GPIOE_CRH;                      // set Port configuration register high
  }

  if (__GPIO_USED & 0x20) {                        // GPIO Port F used
    RCC->APB2ENR |= RCC_APB2ENR_IOPFEN;            // enable clock for GPIOF
    GPIOF->CRL = __GPIOF_CRL;                      // set Port configuration register low
    GPIOF->CRH = __GPIOF_CRH;                      // set Port configuration register high
  }

  if (__GPIO_USED & 0x40) {                        // GPIO Port G used
    RCC->APB2ENR |= RCC_APB2ENR_IOPGEN;            // enable clock for GPIOG
    GPIOG->CRL = __GPIOG_CRL;                      // set Port configuration register low
    GPIOG->CRH = __GPIOG_CRH;                      // set Port configuration register high
  }

} // end of stm32_GpioSetup
#endif
求解释为什么!

QQ截图20140528190835.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-5-28 23:01:29 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-7 17:51

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表