查看: 2624|回复: 5

[其他] 如何理解这段程序

[复制链接]
  • TA的每日心情
    慵懒
    2021-8-31 12:39
  • 签到天数: 5 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    26

    主题

    149

    帖子

    1

    高级会员

    Rank: 4

    积分
    561
    最后登录
    2025-7-21
    发表于 2013-7-9 11:13:13 | 显示全部楼层 |阅读模式
     
    在野火的程序里面有以下的一段定义,这段定义要如何理解啊?  冒号是什么东西?
     
     
    uint32_t PDOR;                                   /**< Port Data Output Register, offset: 0x0 */
            struct                                            // 用于直接赋值位的   ——by 野火
            {
                u32 PDOR0 :1;u32 PDOR1: 1;u32 PDOR2 :1;u32 PDOR3 :1;u32 PDOR4 :1;u32 PDOR5 :1;u32 PDOR6 :1;u32 PDOR7 :1;u32 PDOR8 :1;u32 PDOR9 :1;
                u32 PDOR10:1;u32 PDOR11:1;u32 PDOR12:1;u32 PDOR13:1;u32 PDOR14:1;u32 PDOR15:1;u32 PDOR16:1;u32 PDOR17:1;u32 PDOR18:1;u32 PDOR19:1;
                u32 PDOR20:1;u32 PDOR21:1;u32 PDOR22:1;u32 PDOR23:1;u32 PDOR24:1;u32 PDOR25:1;u32 PDOR26:1;u32 PDOR27:1;u32 PDOR28:1;u32 PDOR29:1;
                u32 PDOR30:1;u32 PDOR31:1;
            }PDORs
    我知道答案 目前已有4人回答
    回复

    使用道具 举报

    该用户从未签到

    8

    主题

    22

    帖子

    0

    新手上路

    Rank: 1

    积分
    58
    最后登录
    1970-1-1
    发表于 2013-7-9 11:14:11 | 显示全部楼层

    RE:如何理解这段程序

    PDOR0口的第一个引脚?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2021-8-31 12:39
  • 签到天数: 5 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    26

    主题

    149

    帖子

    1

    高级会员

    Rank: 4

    积分
    561
    最后登录
    2025-7-21
     楼主| 发表于 2013-7-9 11:47:54 | 显示全部楼层

    回复:如何理解这段程序

    回复第 2 楼 于2013-07-09 11:14:11发表:
    PDOR0口的第一个引脚? 

    C语言没有看过 “:”的用法,也不知道这段程序如何理解。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    218

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    472
    最后登录
    1970-1-1
    发表于 2013-7-9 15:53:35 | 显示全部楼层

    回复:如何理解这段程序

    这是C语言结构体中的位域,楼主贴的这段代码是常用的定义寄存器的方式,这样便于对寄存器的比特位直接进行访问。
    C语言的书籍中一般都有对位域的讲解,你也可以google baidu, 比如这个
    http://blog.sina.com.cn/s/blog_6240b5980100tcba.html
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7

    主题

    66

    帖子

    0

    注册会员

    Rank: 2

    积分
    155
    最后登录
    2020-12-15
    发表于 2013-7-14 20:37:37 | 显示全部楼层

    RE:如何理解这段程序

    “:”代表的是位域,简单的说上面的结构体主要就是分别定义寄存器各个位的。这样就可以单独对寄存器中单独位赋值。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8

    主题

    299

    帖子

    0

    高级会员

    Rank: 4

    积分
    653
    最后登录
    2018-12-14
    发表于 2013-7-15 09:01:45 | 显示全部楼层

    回复:如何理解这段程序

    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-22 12:18 , Processed in 0.093355 second(s), 26 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表