Сбросить с помощью первого штифта ?

Акронис
Вт 13 июня 2017 г. 7:09
Привет, скажи мне, как сделать сброс, используя первую булавку ?
Как назначить ?
Например #define LED_PIN PB11
Но как #define rst_pin ???

Мне нужно сделать сброс, используя DigitalWrite (RST_PIN, Low);

Rogerclark
Вт 13 июня 2017 г. 9:49
Почему ты хочешь сделать это с этим.

Если вы просто хотите сбросить плату из кода, есть способ сделать это (хотя он варьируется в зависимости от того, какое ядро ​​вы используете)

эн.глин. В ядре Libmaple вы можете использовать nvic_sys_reset ()
Существует также звонок HAL / CMSIS, который вы можете использовать, если вы используете одно из сердец на основе HAL

ZMEMW16
Вт 13 июня 2017 г. 9:50 утра
Требуется степень разъяснения.
Что пытается сбросить, STM32 или, может быть, дисплей
Для последнего заполните, в какой бы PIN -код подключен RST -штифт дисплея, альтернативно вы можете подключить его к основному сбросу с кнопки.
для самого STM32, понятия не имею
Стивен

Стивестронг
Вт 13 июня 2017 г. 11:16 утра
Перед использованием Dhrystone Benchmark, Version 2.1 (Language: C) Execution starts, 3000000 runs through Dhrystone Execution ends Microseconds for one run through Dhrystone: 2.50 Dhrystones per Second: 399236.18 VAX MIPS rating = 227.23

Акронис
Вт 13 июня 2017 г. 13:41
nvic_sys_reset () не выполняет уровень 0 на выводе.
Я невхходимо не только сбросить плату STM, но и модули, подключенные к этой плате и сброс PIN (RST).
То есть я должен сделать низкий уровень на PIN -RST (сбросить).
Я просто не могу назвать имя этого вывода: #define rst_pin или reset_pin или ????
Есть ли уже назначенное название для сброса булавки ?


Arduino Uno Пример:

int resetpin = 12;
// подпрограмма настройки работает один раз, когда вы нажимаете сброс:
void setup () {
DigitalWrite (Resetpin, High);
Задержка (200);
// Инициализировать цифровой штифт как выход.
pinmode (светодиод, выход);
pinmode (сбросить, выход);
.............
}

// процедура петли работает снова и снова навсегда:
void loop () {
.....................
Digitalwrite (сброс, низкий);
Сериал.println («это никогда не происходит»);
// этого никогда не происходит, потому что Arduino сбрасывает

}


STM32

Как сделать для STM32 ??
для arduino uno int resetpin = 12;
STM32F103 ?

Стивестронг
Вт 13 июня 2017 г. 14:13
Вам решать, какой PIN -код вы хотите использовать для сброса. Выбрал один.
Вы должны использовать дополнительный провод из выбранного штифта для сброса.

Пито
Вт 13 июня 2017 г. 14:22
Вы не можете сделать вход/вывод на штифте сброса.
Что вы могли бы сделать, так это определить вывод, например, «PB11», настроить PB11 как выходной.
Когда вы переключите PB11 на «низкий», вы все сбросите. Еще не тестируется, однако.

Акронис
Вт 13 июня 2017 г. 14:26
Спасибо.
Правильно ли я понимаю, что непосредственно к RST PIN -коду не может справиться ?
Только через дополнительную булавку. Это так ?

Пито
Вт 13 июня 2017 г. 14:34
Reset.jpg
Перезагрузить.JPG (59.49 киб) просмотрено 438 раз

Акронис
Вт 13 июня 2017 г. 14:36
ХОРОШО. Большое спасибо за совет. Я все это понял. Вопрос закрыт.

Ахулл
Вт 13 июня 2017 г. 15:53
Просто мой тапп..
Пользователь должен убедиться, что уровень на PIN -код NRST может быть ниже уровня MAX VIL (NRST).8 В. В противном случае сброс не будет учитываться устройством .. Это может сбить вас с толку, если вы используете, например, кнопку типа силиконовой резины/мембраны, которая имеет относительно высокое сопротивление, или используя какое -то другое устройство (например, PIR), которое недостаточно приводит к контакту. Также крышка имеет решающее значение для разъединения переключения. Это будет работать без него.. по большей части.... За исключением случаев, когда это не так : D

РЕДАКТИРОВАТЬ: НЕКОТОРЫЕ ХОРОШИЙ СОВЕТ ЗДЕСЬ-> http: // ibker.net/2017/05/07/STM32F103C8 ... IC-Guides/

Акронис
Ср 14 июня 2017 г. 1:56 утра
#define LED_PIN PB11
#define reset_pin pb10

void setup () {
pinmode (led_pin, output);
pinmode (reset_pin, output);
DigitalWrite (Reset_pin, High);
}

void loop () {

DigitalWrite (LED_PIN, HIGH);
задержка (1000);
DigitalWrite (LED_PIN, LOW);
задержка (1000);

задержка (3000);
DigitalWrite (reset_pin, low);
}



К сожалению, это не работает.
Я присоединился к штифту PB10 с PIN -rst (сброс)

Возможно ли, как в случае нереактивности отправить не только сброс платы STM, но и подключенные модули ?
Чтобы перезапустить все ?

Как реализовать его с помощью
iwdg_init (iwdg_pre_256, 1200);
iwdg_feed ();

ПОМОЩЬ

Rogerclark
Ср 14 июня 2017 г. 3:21
Во -первых, что вы пытаетесь сбросить

Если вы повторяете, чтобы сбросить STM, хотя и собственная линия сброса, это может быть невозможно. Просто используйте команду, которую я опубликовал ранее или, как вы говорите, используйте WDT и т. Д

Если вы также хотите сбросить другое оборудование, то подключите только это вывод к внешнему оборудованию, а не к STM32

эн.глин. Установите PIN -код Logic Zero (при условии, что это состояние сброса). Затем вызовите функцию, чтобы сбросить STM32

Если вам нужна система для синхронизации сброса как STM32, так и внешнего оборудования, я бы предложил 2 вещи.

Используйте другое устройство, чтобы сделать это E.глин. 555 таймер ?? Или другой MCU.

И... Я думаю, что вся ваша система должна быть переработана, если она полагается на множество устройств, сброшенных в нужное время.

Акронис
Ср 14 июня 2017 г., 4:28
Хорошо.
Большое спасибо !
Я тебя понимаю, постараюсь сделать это.

кленовый сериал на Android?