Доброго времени.
Я только начал изучать контроллеры, поэтому не судите строго. Работаю в gnuarm под линукс. Зашил программу мигания диодом... Сижу изучаю манны и вроде бы как все понятно... но не могу написать что-то свое... Мне сейчас нужно написать программу, чтобы на любую ногу сигнал приходил.... хочу скопом посмотреть. Сам понимаю что это несколько строчек, но увы вынужден просить помощи. Вот пример мигания диодом
#include <ch.h>
#include <test.h>
#include "board.h"
#include "stm32_serial.h"
/*
* Red LEDs blinker thread, times are in milliseconds.
*/
static WORKING_AREA(waThread1, 128);
static msg_t Thread1(void *arg) {
while (TRUE) {
GPIOC->BRR = GPIOC_LED;
// GPIOC->BRR = GPIOC_DISC;
chThdSleepMilliseconds(500);
GPIOC->BSRR = GPIOC_LED;
// GPIOC->BSRR = GPIOC_DISC;
chThdSleepMilliseconds(500);
}
return 0;
}
/*
* Entry point, note, the main() function is already a thread in the system
* on entry.
*/
int main(int argc, char **argv) {
/*
* Creates the blinker thread.
*/
chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL);
/*
* Normal main() thread activity, in this demo it does nothing except
* sleeping in a loop and check the button state.
*/
while (TRUE) {
if (GPIOA->IDR & GPIOA_BUTTON)
TestThread(&COM2);
chThdSleepMilliseconds(500);
}
return 0;
}
Посоветуйте что-нибудь. :laughing: