wuiefhuaer 2021-11-23 21:52 采纳率: 100%
浏览 379
已结题

stm32点亮led中出现的问题error18:expect a ")"

问题遇到的现象和发生背景

在kile5中,stm32“使用寄存器点亮一个led”的编程问题

问题相关代
在kile5中,stm32“使用寄存器点亮一个led”的编程问题

stm32f10x.h
#define PERIPH_BASE         (unsigned int(0x40000000))
#define APB1PERIPH_BASE      PERIPH_BASE
#define APB2PERIPH_BASE     (APB1PERIPH_BASE+0x10000)
#define AHBPERIPH_BASE      (APB2PERIPH_BASE+0x20000)

#define RCC_BASE             (AHBPERIPH_BASE+0x1000)
#define GPIOB_BASE           (APB2PERIPH_BASE+0xC00)

#define RCC_APB2ENR          *(unsigned int*)(RCC_BASE+0x18)
    
#define GPIOB_CRL            *(unsigned int*)(GPIOB_BASE+0x00)
#define GPIOB_ODR            *(unsigned int*)(GPIOB_BASE+0x0C)
#define GPIOB_CRH            *(unsigned int*)(GPIOB_BASE+0x04)
                              
main.c
#include "stm32f10x.h"


int main (void)
{
#if 0    
    //打开GPIOB端口的时钟;
  *(unsigned int *) 0x40021018 |= ((1)<<3); 
    //配置IO口为输出;
    *(unsigned int *) 0x40010C00 |= (1<<(4*5));
  //控制ODR寄存器;
  *(unsigned int *) 0x40010C0C &=~(1<<0);
#else
    //打开GPIOB端口的时钟;
    RCC_APB2ENR |= ((1)<<3); 
    //配置IO口为输出;
     GPIOB_CRL|= (1<<(4*5));
    //控制ODR寄存器;
    GPIOB_ODR  &=~(1<<0);
    
#endif        

}


void SystemInit (void)
{
  
}



```码,请勿粘贴截图 


###### 运行结果及报错内容 

```c
main.c(15): error:  #18: expected a ")"
      
CC_APB2ENR |= ((1)<<3); 
main.c(17): error:  #18: expected a ")"
      
PIOB_CRL|= (1<<(4*5));
main.c(19): error:  #18: expected a ")"
      
PIOB_ODR  &=~(1<<0);
main.c: 0 warnings, 3 errors
".\Template-REG.axf" - 3 Error(s), 0 Warning(s).
Target not created.

请问问题在哪,该如何解决?

  • 写回答

1条回答 默认 最新

  • Vice Versa XL 2021-11-24 10:54
    关注

    RCC_APB2ENR 换成 RCC->APB2ENR

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月2日
  • 已采纳回答 11月24日
  • 创建了问题 11月23日

悬赏问题

  • ¥15 BDSBAS-B1C和B1C信号有什么不同
  • ¥15 在半圆平面内随机生成点坐标
  • ¥15 系统容量变化的几种多址方式TDMA, CDMA,FDMA,OFDMA 对比,应该给的是一个曲线 图,随着系统容量的增加,几种多址方式性能的对比 图,MATLAB程序仿真折线图
  • ¥15 用visual Studio 写c ++只运行上一个旧代码的运行结果是怎么回事
  • ¥15 系统容量变化的几种多址方式(TDMA,FDMA,OFDMA,CDMA)对比(相关搜索:曲线图)
  • ¥15 worldclim 历史及未来气候数据矫正
  • ¥15 ajax服务器不能下载
  • ¥15 运用c++和opencv实现二维码的识别和三维坐标的建立
  • ¥100 理想汽车的ADB为什么到了国外换了SIM就可以打开?
  • ¥15 k210烧入flash报错error:2005