标题: STC单片机IO口准双向输出程序 LED灯循环闪烁 [打印本页]

作者: lsz199662    时间: 2019-3-24 17:00
标题: STC单片机IO口准双向输出程序 LED灯循环闪烁
STC单片机IO口准双向输出

/**************************************************************
*  晶振频率    :选取用RC 11.0592MHz
*  文件名      :IO.c
*  功能说明    :STC12C5A16S2单片机的I/O口演示实验
*************************************************************/
#include <STC12C5A16S2.h>
#define Main_Fosc 11059200L             //定义外部晶振的频率
sbit  P1_0 = P1^0;               //定义特殊功能寄存器位变量P1_0为P1口的第0位
void delay_ms(unsigned char ms); //声明毫秒级延时函数
/*************************************************************
*  函数名:main( void )
*  输入:无
*  输出:无
*  功能描述:实验LED的D1灯循环闪烁
*************************************************************/
void main(void)
{
      P1_0 = 1;                            //P1_0输出使得D1初始状态为灭
          while(1)
          {
              delay_ms(5000);            //延时
                  P1_0 =~P1_0 ;                        //对P1_0口的状态循环取反,使其亮,灭循环变化
      
        }
}
/*************************************************************
*  函数名:delay_ms(unsigned char ms)
*  输入:延时的时间
*  输出:无
*  功能描述:实现毫秒级延时
*************************************************************/
void delay_ms(unsigned char ms)
{
    unsigned int i;
        do{
            i = Main_Fosc /1400;
                while(--i);
        }while(--ms);
}




作者: acetuo    时间: 2020-10-14 00:27
不错呀!!!!




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1