首先 - 对不起我的英语不好:-( 其次 - 我有一些有趣的任务。前言。程序将在 ATMega162 上工作。我们使用宏,因为函数工作非常缓慢。即使是内联......任务。我有一个宏:
#define ProvSetBit(reg, bit) (((reg) & (1<<(bit))) != 0)
并且检查位变成很长的、不可读的字符串:
ProvSetBit(SystemStatus[0], COMMAND_ON_DF);
和#define COMMAND_ON_DF 0u
我想修改它:
ProvSetBit(COMMAND_ON_DF);
其中 COMMAND_ON_DF:
#define COMMAND_ON_DF (SystemStatus[0], 0u)
或那里的东西。但它不起作用。调试器写道:“错误[Pe054]:宏调用中的参数太少”。你能给我什么建议?