借号求助,芯片初始化的问题,高手帮帮忙!

wandaand 2010-09-28 05:31:33
本人刚刚踏足嵌入式行业,从事数字前端设备的研发!头 交代了一个芯片的初始化的任务,但基于本人基础较差,所以只是写好雏形,编译时就错误百出!
首先是头文件中,程序如下,本芯片32个寄存器。这是其中四个相同位的寄存器的定义:我想把它写成结构体和共用体嵌套的形式!
struct GCR{
unsigned char E3M :1;
unsigned char STS :1;
unsigned char LLB :1;
unsigned char RLB :1;
unsigned char TDSA :1;
unsigned char TDSB :1;
unsigned char RST :1;
}
GCR_1,GCR_2,GCR_3,GCR_4;

以便于改变各个位值时,可以将整个值写入寄存器!

然后是我编译时总提示上述定义中 syntax error before ":";

哪位高手能帮个忙,小妹不胜感激!
...全文
71 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wangsong198753 2010-10-01
那一位是未定义位,一般是留给后续使用,按其偏移位置再定义一位就好了,名字只要符合标示符就好了,初始值是0还是1也没关系。
回复
wandaand 2010-09-29
谢谢各位,非常感谢各位的帮助!我会再试下!

wangsong198753你好,我这个寄存器是8位寄存器,可是只有七个位有位名和初始值。这种情况下应该定义几位?我不是很懂!麻烦你能再给说下嘛?

回复
wangsong198753 2010-09-28
unsigned char 是8位,你试一下再添加一位看看。我数了一下你只有7位
回复
zenny_chen 2010-09-28
你的编译器可能不支持位域的语法。
回复
somebody 2010-09-28
一定要确定所有的标点符号!括号之类的都是英文输入法下输入的!再运行试试
回复
somebody 2010-09-28
还要检查哈你的分号!
回复
somebody 2010-09-28
呵呵……你的冒号是中文输入法下输入的吧?改成英文输入!
回复
wandaand 2010-09-28
帮帮忙啊!呵呵!
回复
相关推荐
发帖
C语言
创建于2007-09-28

6.4w+

社区成员

C语言相关问题讨论
申请成为版主
帖子事件
创建了帖子
2010-09-28 05:31
社区公告
暂无公告