大佬们,询问下宏定义的问题-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1880|回复: 2

[未解决] 大佬们,询问下宏定义的问题

[复制链接]
发表于 2020-12-31 09:42 | 显示全部楼层 |阅读模式
------------------------------------------------------------------------
#include <EEPROM.h>
#include <SoftwareSerial.h>

// defines for setting and clearing register bits
#ifndef cbi
    #define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
#endif
#ifndef sbi
    #define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
#endif
------------------------------------------------------------------------
_SFR_BYTE(sfr)
BV(bit)   这两个函数只在全文开头这里出现,后面不再出现。他是什么意思呢?
这个宏定义该怎么解读呢?

谢谢

发表于 2021-1-1 16:47 | 显示全部楼层
条件编译,避免重复包含
 楼主| 发表于 2021-1-2 12:08 | 显示全部楼层
sangshu 发表于 2021-1-1 16:47
条件编译,避免重复包含

找了三天资料,终于知道它的目的是为了寄存器的置为和清零
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-29 16:38 , Processed in 0.078083 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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