Собственно задача: если на PA3 "1", то установить "1" на PA5, иначе выставить "1" на PA7. Дело еще в том, что я сам задаю на PA3 "1", и должно получится, что на PA5 "1", но этого "анализа" в программе нет (if..else). Кое-что я уже набросал:
Код: Выделить всё
#include "stm32f4xx.h"
void initAll()
{
GPIO_InitTypeDef GPIO_Init_A;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE );
GPIO_Init_A.GPIO_Pin = GPIO_Pin_3;
GPIO_Init_A.GPIO_Mode = GPIO_Mode_OUT;
GPIO_Init_A.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_Init_A.GPIO_OType = GPIO_OType_PP;
GPIO_Init_A.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_Init(GPIOA, &GPIO_Init_A);
}
int main (void)
{
uint8_t ZnachPin = 0;
initAll();
ZnachPin = GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_3);
while(1)
{
GPIO_SetBits(GPIOA, GPIO_Pin_3);
if (ZnachPin == 1)
{
GPIO_SetBits(GPIOA, GPIO_Pin_5);
}
else
{
GPIO_SetBits(GPIOA, GPIO_Pin_7);
}
}
}