Как сделать мигание светодиода с каждым портом, используя платы stm32 (stm32f103c8t6) и Adruino

Я совершенно новичок в этом и готов выполнить простую задачу, используя плату stm32f103c8t6, ​​которая является «миганием светодиода».

Используя ArduinoIDE и простую схему, как показано на рисунке, все работает нормально с портом PC13. но как только я пробую другие порты, это не работает. Моя цель - иметь возможность переключать статус светодиода с помощью портов PA0 - PA5.

Вот мой код:

void setup() {
  // initialize the digital pin as an output.
  pinMode(PC13, OUTPUT);
}

void loop() {
  digitalWrite(PC13, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(PC13, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

Я меняю PC13 на PA0, и переключаю плату, но не повезло :(

Как я могу решить эту проблему. Любая помощь приветствуется.

введите описание изображения здесь


person Mostafa Shahverdy    schedule 29.05.2019    source источник
comment
Вы пробовали другие порты, такие как PCx или PBx? На устройстве ARM каждый контакт (кроме контактов питания) может действовать как цифровой вход или выход.   -  person Masoud Rahimi    schedule 29.05.2019
comment
Имею, а результатов нет :(   -  person Mostafa Shahverdy    schedule 29.05.2019
comment
Итак, вы разместили код, который действительно работает, но спрашиваете о коде, который не размещали? Возможно, вы допустили опечатку ... Я думаю, вам следует опубликовать фактический код, который дает сбой.   -  person rodrigo    schedule 30.05.2019


Ответы (2)


Вы правильно используете внешний светодиод (по фото сложно сказать наверняка)? Внутренний светодиод «синей таблетки» привязан только к PC13. Если вы используете внешний светодиод и программа с PC13 работает, то проблем с PA0 - PA5 быть не должно. Единственное, о чем я могу думать в настоящее время, это то, что ваша программа каким-то образом не мигает правильно, поэтому она все еще работает со старым кодом.

Чтобы проверить эту теорию, начните с работающей программы PC13, а затем измените время задержки на 2 секунды или что-то еще. Тогда вы можете быть уверены, что новая программа скачивается правильно.

person Richard at ImageCraft    schedule 29.05.2019
comment
Ну, когда я подключаю внешний светодиод к PC13, мигают как внутренние, так и внешние светодиоды (когда один гаснет, другой загорается). Также уверен, что программа прошита правильно. - person Mostafa Shahverdy; 30.05.2019
comment
Итак, что происходит, когда вы переключаетесь на PA0, внутренний светодиод все еще мигает? - person Richard at ImageCraft; 30.05.2019

Извините за глупый вопрос. Моя проблема заключалась в том, что у меня оборвался провод, и когда я его поменял, все работало нормально.

person Mostafa Shahverdy    schedule 31.05.2019