Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 Infineon C509 中有一个叫做 S1CON 的寄存器,它是一个特殊的功能寄存器,看起来像这样。
可以将 S1CON 上的位 0 定义为 RI1,以便在主程序中访问和引用它。我想在我的主程序中检查串行接口 1 的接收标志中断是高还是低。它没有在头文件中定义,但 S1CON 是
sfr S1CON = 0x9B;
谢谢
或者是否可以只检查 S1CON 上位 0 的状态?
您可以为各个位定义掩码(它们可能已经在适当的头文件中为您定义),例如
#define RI1 0x01 // RI1 = bit 0 #define TI1 0x02 // TI1 = bit 1 #define RB81 0x04 // RB81 = bit 2 ...
然后测试 RI1:
if (SC1CON & RI1) ...
设置 RI1:
SCICON |= RI1;
清除 RI1:
SCICON &= ~RI1;