newlined 发表于 2026-5-18 08:26:28

请教大家 关于Keil C中位变量的定义

MCU用的是STC32G12K64,程序中用了许多的位变量,图中是不是显示定义了24个字节的位变量?请看图


当我再多定义一个位变量后,编译时就会显示

好像是位变量定义的太多了,在32G的手册中,有“ebdata(20H~7FH)全部支持位寻址”的说明,Keil C的编译环境是不是我哪里设置的不对?
这是编译设置:

其他的基本是默认值,请教如果要想尽量多的定义位变量,需要在哪里设定下?谢谢。

ercircle 发表于 2026-5-18 09:18:55

上传工程


newlined 发表于 2026-5-18 09:27:29

ercircle 发表于 2026-5-18 09:18
上传工程

好的,谢谢版主的回复。

Ayb_ice 发表于 2026-5-18 09:55:25

用ebit,ebdata

ercircle 发表于 2026-5-18 10:05:47

newlined 发表于 2026-5-18 09:27
好的,谢谢版主的回复。
可以看下keil帮助手册







汇编里还要用到EBIT,C语言里sbit自动编译为BIT或EBIT:



页: [1]
查看完整版本: 请教大家 关于Keil C中位变量的定义