Beispiel #1
0
/*******************************************************************************
* Function Name  : LED_On
* Description    : Turn on LED
* Input          : ucLED
* Return         : None.
*******************************************************************************/
void LED_On(uint8_t ucLED)
{
    if (ucLED & LED1) {
        GPIO_WriteDataBit(GPIO_PG, GPIO_BIT_0, GPIO_BIT_VALUE_1);
    }
    if (ucLED & LED2) {
        GPIO_WriteDataBit(GPIO_PG, GPIO_BIT_1, GPIO_BIT_VALUE_1);
    }
}
Beispiel #2
0
/*************************************************************************
 * Function Name: LED_Init
 * Parameters:None
 *
 * Return:None  
 *
 * Description: Init LED ports
 *
 *************************************************************************/
void LED_Init()
{
	/*Set PG bit0~3 output and turn off all leds*/
    GPIO_SetOutput(GPIO_PG, GPIO_BIT_0);
    GPIO_SetOutput(GPIO_PG, GPIO_BIT_1);
    GPIO_SetOutput(GPIO_PG, GPIO_BIT_2);
    GPIO_SetOutput(GPIO_PG, GPIO_BIT_3);

    GPIO_WriteDataBit(GPIO_PG, GPIO_BIT_0, GPIO_BIT_VALUE_0);
    GPIO_WriteDataBit(GPIO_PG, GPIO_BIT_1, GPIO_BIT_VALUE_0);
    GPIO_WriteDataBit(GPIO_PG, GPIO_BIT_2, GPIO_BIT_VALUE_0);
    GPIO_WriteDataBit(GPIO_PG, GPIO_BIT_3, GPIO_BIT_VALUE_0);
}
Beispiel #3
0
/*******************************************************************************
* Function Name  : SW_Get
* Description    : Get SW Value
* Input          : SW (choose from SW0 ~ SW7).
* Return         : SW value.
*******************************************************************************/
uint8_t SW_Get(uint8_t sw)
{
    uint8_t tmp = 0U;
    if (sw < 4 )
    	{
    		GPIO_WriteDataBit(GPIO_PJ, GPIO_BIT_2, GPIO_BIT_VALUE_0);
    	}else{
    		GPIO_WriteDataBit(GPIO_PJ, GPIO_BIT_2, GPIO_BIT_VALUE_1);
    	}
    switch (sw) {
    case SW0:
    case SW4:
        if (GPIO_ReadDataBit(GPIO_PI, GPIO_BIT_0) == 1U) {
            tmp = 1U;
        } else {
            /*do nothing */
        }
        break;
    case SW1:
    case SW5:
        if (GPIO_ReadDataBit(GPIO_PI, GPIO_BIT_1) == 1U) {
            tmp = 1U;
        } else {
            /*do nothing */
        }
        break;
    case SW2:
    case SW6:
        if (GPIO_ReadDataBit(GPIO_PI, GPIO_BIT_2) == 1U) {
            tmp = 1U;
        } else {
            /*do nothing */
        }
        break;
    case SW3:
    case SW7:
        if (GPIO_ReadDataBit(GPIO_PI, GPIO_BIT_3) == 1U) {
            tmp = 1U;
        } else {
            /*do nothing */
        }
        break;
    default:
        break;
    }
    return tmp;

}
Beispiel #4
0
/*! \brief LED Toggle
  *
  * Toggle an LED
  *
  * @param  led:  LED Number
  *
  * @retval None
*/
void LED_Toggle(unsigned char led)
{
#ifndef DEBUG  
  switch(led)
  {
  case LED_NO_0:
    GPIO_WriteDataBit(GPIO_PB, GPIO_BIT_3, (~GPIO_ReadDataBit(GPIO_PB, GPIO_BIT_3) & 0x01));
    break;
  case LED_NO_1:
    GPIO_WriteDataBit(GPIO_PB, GPIO_BIT_4, (~GPIO_ReadDataBit(GPIO_PB, GPIO_BIT_4) & 0x01));
    break;
  case LED_NO_2:
    GPIO_WriteDataBit(GPIO_PB, GPIO_BIT_5, (~GPIO_ReadDataBit(GPIO_PB, GPIO_BIT_5) & 0x01));
    break;
  case LED_NO_3:
    GPIO_WriteDataBit(GPIO_PB, GPIO_BIT_6, (~GPIO_ReadDataBit(GPIO_PB, GPIO_BIT_6) & 0x01));
    break;
  }
#endif /* DEBUG */
}
Beispiel #5
0
/*! \brief LED set state
  *
  * Set the state of an LED
  *
  * @param  led:   LED Number
  * @param  state: State to set
  *
  * @retval None
*/
void LED_SetState(unsigned char led, unsigned char state)
{
#ifndef DEBUG  
  switch(led)
  {
  case LED_NO_0:
    GPIO_WriteDataBit(GPIO_PB, GPIO_BIT_3, (~state)&0x01 );
    break;
  case LED_NO_1:
    GPIO_WriteDataBit(GPIO_PB, GPIO_BIT_4, (~state)&0x01);
    break;
  case LED_NO_2:
    GPIO_WriteDataBit(GPIO_PB, GPIO_BIT_5, (~state)&0x01);
    break;
  case LED_NO_3:
    GPIO_WriteDataBit(GPIO_PB, GPIO_BIT_6, (~state)&0x01);
    break;
  }
#endif /* DEBUG */  
}