background image

   

2.       void main( void )  //void 表示没有输入参数,也没有函数返值,这入单片机运行

 

的复位入口    

3.       {    

4.        P1_1 = 1;   //初始化。P1.1

 

作为输入,必须输出高电平    

5.       While( 1 )  //

 

非零表示真,如果为真则执行下面循环体的语句    

6.        {    

7.       if( P1_1 == 1 )  //读取 P1.1,就是认为 P1.1 为输入,如果 P1.1 输入高电平 VCC    

8.         { P0_4 = 0;  } //给 P0_4 赋值 0,引脚 P0.4 就能输出低电平 GND    

9.         else     //否则 P1.1 输入为低电平 GND    

10.     //{ P0_4 = 0;  } //给 P0_4 赋值 0,引脚 P0.4 就能输出低电平 GND    

11.     { P0_4 = 1;  } //给 P0_4 赋值 1,引脚 P0.4 就能输出高电平 VCC    

12.    }    //由于一直为真,所以不断根据 P1.1 的输入情况,改变 P0.4

 

的输出电平    

13.   }   

将某端口 8 个引脚输入电平,低四位取反后,从另一个端口 8 个引脚输出:

代码

1.       #include  //该头文档中有单片机内部资源的符号化定义,其中包含 P2 和 P3    

2.       void main( void )  //void 表示没有输入参数,也没有函数返值,这入单片机运行

 

的复位入口    

3.       {    

4.        P3 = 0xff;  //初始化。P3 作为输入,必须输出高电平,同时给 P3 口的 8 个引脚

 

输出高电平    

5.       While( 1 )  //

 

非零表示真,如果为真则执行下面循环体的语句    

6.        {    //取反的方法是异或 1,而不取反的方法则是异或 0    

7.       P2 = P3^0x0f //读取 P3,就是认为 P3 为输入,低四位异或者 1,即取反,然后

 

输出    

8.        }    //由于一直为真,所以不断将 P3 取反输出到 P2    

9.       }   

注意:一个字节的 8 位 D7、D6 至 D0,分别输出到 P3.7、P3.6 至 P3.0,比如 P3=0x0f,则

P3.7、P3.6、P3.5、P3.4 四个引脚都输出低电平,而 P3.3、P3.2、P3.1、P3.0 四个引脚都输出高