找回密码
 立即注册
查看: 909|回复: 15

这样定义有没有问题?

[复制链接]
  • TA的每日心情
    开心
    2024-4-25 22:41
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    8

    主题

    44

    回帖

    222

    积分

    中级会员

    积分
    222
    发表于 2023-4-14 19:42:23 | 显示全部楼层 |阅读模式
    这样定义有没有问题?
    unsigned char bzhf sta;
    sbit bz1=sta^7;
    sbit bz2=sta^6;
    sbit bz3=sta^5;
    sbit bz4=sta^4;

    回复 送花

    使用道具 举报

  • TA的每日心情
    开心
    昨天 22:44
  • 签到天数: 157 天

    [LV.7]常住居民III

    9

    主题

    306

    回帖

    3751

    积分

    荣誉版主

    积分
    3751
    发表于 2023-4-14 19:56:55 | 显示全部楼层
    问题很大
    sbit是用来定义sfr的位的,不能用来声明变量
    对位的定义应该使用bit,但是这种声明似乎并不支持指定变量位置(或者是我不会)
    感觉最合适的方法还是写一个宏来取变量的指定位
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-25 22:41
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    8

    主题

    44

    回帖

    222

    积分

    中级会员

    积分
    222
     楼主| 发表于 2023-4-14 20:17:12 | 显示全部楼层
    谢谢 kksk ,我现在需要声明一个变量,有7个功能,每一位表示一个功能的启动或者停止。也可以给变量赋值。
    能给个例程吗?
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-25 22:41
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    8

    主题

    44

    回帖

    222

    积分

    中级会员

    积分
    222
     楼主| 发表于 2023-4-14 20:28:33 | 显示全部楼层
    kksk 发表于 2023-4-14 19:56
    问题很大
    sbit是用来定义sfr的位的,不能用来声明变量
    对位的定义应该使用bit,但是这种声明似乎并不支持指 ...

    谢谢 kksk ,我现在需要声明一个变量,有7个功能,每一位表示一个功能的启动或者停止。也可以给变量赋值。
    能给个例程吗?
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    昨天 07:51
  • 签到天数: 163 天

    [LV.7]常住居民III

    25

    主题

    755

    回帖

    1893

    积分

    金牌会员

    积分
    1893
    发表于 2023-4-14 20:40:55 | 显示全部楼层
    本帖最后由 jwd 于 2023-4-14 20:44 编辑
    lzhttzh 发表于 2023-4-14 20:28
    谢谢 kksk ,我现在需要声明一个变量,有7个功能,每一位表示一个功能的启动或者停止。也可以给变量赋值。 ...

    unsigned char bdata other_in;//此处other_in必须为bdata类型,否则编译出错
    sbit mybit0=other_in^0;
    sbit mybit1=other_in^1;
    sbit mybit2=other_in^2;
    sbit mybit3=other_in^3;
    sbit mybit4=other_in^4;
    sbit mybit5=other_in^5;
    sbit mybit6=other_in^6;
    sbit mybit7=other_in^7;
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-25 22:41
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    8

    主题

    44

    回帖

    222

    积分

    中级会员

    积分
    222
     楼主| 发表于 2023-4-14 20:57:54 | 显示全部楼层
    jwd 发表于 2023-4-14 20:40
    unsigned char bdata other_in;//此处other_in必须为bdata类型,否则编译出错
    sbit mybit0=other_in^0;
    sb ...

    谢谢  jwd    bdata类型选择问题。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    昨天 07:51
  • 签到天数: 163 天

    [LV.7]常住居民III

    25

    主题

    755

    回帖

    1893

    积分

    金牌会员

    积分
    1893
    发表于 2023-4-14 21:08:28 | 显示全部楼层
    lzhttzh 发表于 2023-4-14 20:57
    谢谢  jwd    bdata类型选择问题。

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    昨天 08:09
  • 签到天数: 94 天

    [LV.6]常住居民II

    39

    主题

    995

    回帖

    6872

    积分

    荣誉版主

    冲哥视频教程和各种开源资料QQ交流群884047237,可群

    积分
    6872
    QQ
    发表于 2023-4-17 10:21:42 | 显示全部楼层
    除了楼上的bdata,也可以尝试联合结构体union,或者是直接位操作变量 (例如:dat & 0x01),方法不唯一可以多多尝试和了解
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-25 22:41
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    8

    主题

    44

    回帖

    222

    积分

    中级会员

    积分
    222
     楼主| 发表于 2023-9-29 21:54:17 | 显示全部楼层
    jwd 发表于 2023-4-14 20:40
    unsigned char bdata other_in;//此处other_in必须为bdata类型,否则编译出错
    sbit mybit0=other_in^0;
    sb ...

    请教老师,USB虚拟串口咋发送数据?
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    550

    主题

    9356

    回帖

    1万

    积分

    管理员

    积分
    13894
    发表于 2023-9-30 09:16:45 | 显示全部楼层
    回复 支持 反对 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-10 06:24 , Processed in 0.243041 second(s), 68 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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