//initsw 这一行是注释,作者为增加程序的可读性自己定义的,可有可无。C编译器遇到两个//斜杠
时,对其/后面的的内容是不会理睬的,你也可以写成://初始化PMR或其它你认为合适的文字。
PMR|=0X01;//PMR寄存器与0x01的十六进制数进行逻辑或。
//inithw 同第一行,至于hw是什么只有作者自己清楚,不需理会。
P1=0XFF;//以下4行是分别将单片机的P0至P4口的所有口线初始化为高电平。
P2=0XFF;
P3=0XFF;
P4=0XFF;
sfr PMR=0xC4 这是指PMR这个寄存器在单片机内部的地址,单片机每一个寄存器有一个固定的地址。
initsw,软件初始化
PMR |= 0x01,就是将PMR寄存器的最低位置1,其它位的状态不变。
inithw,硬件初始化
将P1~P4口全部写0xFF,所有管脚置为高电平(输入状态)。
你用的什么型号单片机?标准8051没有PMR这个寄存器,应当是扩展型号所增加的。