mirror of
https://github.com/EranMorkon/AMTS.git
synced 2023-12-28 16:48:38 +00:00
28 lines
948 B
C
28 lines
948 B
C
#include "stm32f10x.h" // Device header
|
|
#include "stm32f10x_gpio.h" // Keil::Device:StdPeriph Drivers:GPIO
|
|
#include "stm32f10x_rcc.h" // Keil::Device:StdPeriph Drivers:RCC
|
|
|
|
int main()
|
|
{
|
|
uint8_t data;
|
|
|
|
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
|
|
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
|
|
|
|
GPIO_InitTypeDef gpio;
|
|
GPIO_StructInit(&gpio);
|
|
|
|
gpio.GPIO_Mode = GPIO_Mode_Out_PP;
|
|
gpio.GPIO_Pin = GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9;
|
|
GPIO_Init(GPIOC, &gpio);
|
|
|
|
gpio.GPIO_Mode = GPIO_Mode_IPU;
|
|
gpio.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8;
|
|
GPIO_Init(GPIOA, &gpio);
|
|
|
|
for(;;) {
|
|
data = (GPIO_ReadInputData(GPIOA) & 0x000F) | ((GPIO_ReadInputData(GPIOA) & 0x01E0) >> 1);
|
|
GPIO_Write(GPIOC, ((data & 0xE0) << 2) | ((data & 0x1F) << 1));
|
|
}
|
|
}
|