请问有大神帮我解释一下吗?
#include <iostm8s103f3.h>
int main( void )
{
unsigned char c;
CLK_CKDIVR &= (unsigned char)(~0x18); // 16MHz high speed internal clock
//LED: B5
PB_DDR |= 0x20; // output
PB_CR1 |= 0x20; // push pull
PB_CR2 |= 0x20; // 10MHz output speed
PA_DDR &= 0xF7;
PA_CR1 |= 0x08;
PA_CR2 &= 0xF7;
while(1) {
c = PA_IDR|0xF7;
if(c == 0xF7) {
PB_ODR &= 0xDF; // LOW is ON
}
else {
PB_ODR |= 0x20; // HIGH if OFF
}
}
}