/* Includes ------------------------------------------------------------------*/
#include "stm8s.h"
/* Private defines -----------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/
BitStatus bit_status;
void Delay(uint16_t nCount)
{
/* Decrement nCount value */
while (nCount != 0)
{
nCount--;
}
}
void main(void)
{
/* Initialize I/Os in Output Mode */
GPIO_Init(GPIOE, GPIO_PIN_5, GPIO_MODE_OUT_PP_HIGH_FAST);
GPIO_Init(GPIOD, GPIO_PIN_ALL, GPIO_MODE_OUT_OD_LOW_FAST);
GPIO_Init(GPIOA, GPIO_PIN_2, GPIO_MODE_IN_PU_NO_IT);
GPIO_ExternalPullUpConfig(GPIOA, GPIO_PIN_2, ENABLE);
while (1)
{
/* Toggles LEDs */
/*
GPIO_Write(GPIOE, 0x20);
GPIO_Write(GPIOD, 0xFE);
Delay(0xFFFF);
GPIO_Write(GPIOD, 0xFD);
Delay(0xFFFF);
GPIO_Write(GPIOD, 0xFB);
Delay(0xFFFF);
GPIO_Write(GPIOD, 0xF7);
Delay(0xFFFF);
GPIO_Write(GPIOD, 0xEF);
Delay(0xFFFF);
GPIO_Write(GPIOD, 0xDF);
Delay(0xFFFF);
GPIO_Write(GPIOD, 0xBF);
Delay(0xFFFF);
GPIO_Write(GPIOD, 0x7F);
Delay(0xFFFF);
GPIO_Write(GPIOE, 0x00);
Delay(0xFFFF);
Delay(0xFFFF);
Delay(0xFFFF);
*/
bit_status = GPIO_ReadInputPin(GPIOA, GPIO_PIN_2);
if (bit_status == RESET) //SET or RESET
{
GPIO_Write(GPIOE, 0x00);
}
GPIO_Write(GPIOE, 0x20);
}
}
#ifdef USE_FULL_ASSERT
/**
* @brief Reports the name of the source file and the source line number
* where the assert_param error has occurred.
* @param file: pointer to the source file name
* @param line: assert_param error line source number
* @retval : None
*/
void assert_failed(u8* file, u32 line)
{
/* User can add his own implementation to report the file name and line number,
ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
/* Infinite loop */
while (1)
{
}
}
#endif |