STM8L的CFG_GCR寄存器中AL要置1如何实现?

2019-03-23 17:41发布

我看了下编程指南,想对CFG_GCR寄存器中的AL位置1,从而使Halt模式下的中断直接返回Halt状态。可是具体要如何置1,求C语言代码,我试过如下写法 CFG_GCR = 0x02;   CFG_GCR_bit.AL = 1; ,编译器都提示没有该关键字。
这种问题应该查阅什么手册或者哪个.h文件呢?


此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
9条回答
残雪
2019-03-24 10:08
jiyiche 发表于 2017-4-27 22:30
你好,中文参考手册不就是英文Reference Manual的翻译而已吗?我看Reference Manual并没有提到如何用C语 ...

从参考手册看,是不是找到了全局配置寄存器(CFG_GCR)这里:
TIM截图20170428092155.png
看到CFG_GCR这个寄存器 AL位,也就是第二位0和1的不同功能
那是不是这个寄存器在不禁用swim模式的情况下,赋值0x02即可

因为我习惯使用库函数,寄存器不是很熟,所以我在标准库里面去找相关的内容:
STM8S头文件有这几个东西(stm8s.h)
typedef struct CFG_struct
{
  __IO uint8_t GCR; /*!< Global Configuration register */
}
CFG_TypeDef;

#define CFG_GCR_SWD ((uint8_t)0x01) /*!< Swim disable bit mask */
#define CFG_GCR_AL  ((uint8_t)0x02) /*!< Activation Level bit mask */

一周热门 更多>