CH32V203 中有没有类似STM32中的BRR和BSRR?

移植STM32上的程序到CH32V203,MRS编译报错,“has no member named 'BSRR'; did you mean 'BSHR'?”

请问CH32V203 中有没有类似STM32中的BRR和BSRR?

您好,CH32的寄存器命名方式和STM32不同,这两个应该是指GPIO的端口复位/置位寄存器以及端口复位寄存器,对应CH32的命名方式如下图。具体可参考CH32V203应用手册,手册下载链接如下:

/downloads/CH32FV2x_V3xRM_PDF.html 

image.png


谢谢解答。

是不是可以理解为两者只是寄存器的名字不同,其它完全一样?

我找到Keil中的定义:

/** 

  * @brief General Purpose I/O

  */


typedef struct

{

  __IO uint32_t CRL;

  __IO uint32_t CRH;

  __IO uint32_t IDR;

  __IO uint32_t ODR;

  __IO uint32_t BSRR;

  __IO uint32_t BRR;

  __IO uint32_t LCKR;

} GPIO_TypeDef;


MRS中的写法为:

/* General Purpose I/O */

typedef struct

{

    __IO uint32_t CFGLR;

    __IO uint32_t CFGHR;

    __IO uint32_t INDR;

    __IO uint32_t OUTDR;

    __IO uint32_t BSHR;

    __IO uint32_t BCR;

    __IO uint32_t LCKR;

} GPIO_TypeDef;


我只要改一下名字就可以了?



您好,正常应该改一下名字就可以的


可以看下我这个帖子,网页格式有点不兼容,空格显示为问号. /bbs/thread-101081-1.html


只有登录才能回复,可以选择微信账号登录