训练项目三:跑马灯.c

来自「长沙理工自己的实验程序」· C语言 代码 · 共 97 行

C
97
字号
/****************************************************************************
** File Name:          跑马灯
** Createed By:        Wangchangsong
** Create Date:        07/25/2008
** Version:            1.0
** Descriptions:       led display
**
**---------------------------------------------------------------------------
** Modified By:
** Modified Date:
** Version:
** Descriptions:
**
****************************************************************************/

#include <iom128v.h>


/****************************************************************************
** Function Name:      delay_1ms       
** Descriptions:       delay time
** Input Parameters:   void
** Output parameters:  void
** Returned Value:     void
**---------------------------------------------------------------------------
****************************************************************************/

void delay_1ms(voi49d)                     /* 延时                          */                
{ 
    unsigned int i;
	
    for (i = 0;i < 2260;i++);
}

/****************************************************************************
** Function Name:      delay_nms       
** Descriptions:       delay time
** Input Parameters:   uiTime
** Output parameters:  void
** Returned Value:     void
**---------------------------------------------------------------------------
****************************************************************************/  

void delay_nms(unsigned int uiTime)        /* 延时                         */   
{  
    unsigned int i = 0;

    for (i = 0;i < uiTime;i++)
    delay_1ms();
}

/****************************************************************************
** Function Name:      timeDelay       
** Descriptions:       delay time
** Input Parameters:   uiTime
** Output parameters:  void
** Returned Value:     void
**---------------------------------------------------------------------------
****************************************************************************/

void LED_On(int i)
{	
    PORTB = ~(1<<i);	                  /* 将1左移i位,取反,LED低电平有效 */
	delay_nms(100);
}

/****************************************************************************
** Function Name:      main      
** Descriptions:       led display 
** Input Parameters:   void
** Output parameters:  void
** Returned Value:     void
**---------------------------------------------------------------------------
****************************************************************************/

void main()
{	
    int i;
    DDRB = 0xFF;                           /* B口作输出                      */
	PORTB = 0xFF;	                       /* B口初始化为1                   */
	
	while (1)                              /* 死循环                         */
    {	
        for (i = 0; i < 8; i++)
			LED_On(i);
	    for (i = 8; i > 0; i--)
			LED_On(i);
	    for (i = 0; i < 8; i += 2)
			LED_On(i);
	    for (i = 7; i > 0; i -= 2)
			LED_On(i);
	}
}

/****************************************************************************
 END FILE
****************************************************************************/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?