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

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 ":";

哪位高手能帮个忙,小妹不胜感激!
...全文
95 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
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
  • 打赏
  • 举报
回复
帮帮忙啊!呵呵!

70,022

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧