Помощь с клавиатурой 4х4
- Войдите на сайт для отправки комментариев
Сб, 07/01/2017 - 00:49
Помогите написать код, который будет считывать значения с матричной клавиатуры, и когда наберется 7 значений они отправлялись в сериал
Помогите написать код
Нет, это называется сделайте за меня. Помогите, это когда ты выкладываешь свой код (пусть и не рабочий) и задаёшь конкретные вопросы, что у тебя не получается.
Я пробовал разными способами, результат один- не ждет, пока я введу все 7 символов, а шлет в сериал всякий мусор непрерывно. Вот одна из попыток :
Пока писал уже ответили
Удалил, т.к. выше сам неправильно написал...
Ну мне нужно вывести весь этот массив в сериал только после того, как я введу все его 7 элементов. с if он сразу же начнет непрерывно писать первый же введенный элемент, может как-то можно buffer применить?
http://arduino.ru/Reference/String
Вроде так?
Спасибо конечно, но как это поможет? Данные с кнопки char, массив тоже char. Какой бы тип я не выбрал- главная проблема в том, чтобы весь масив вывелся только после того как я его введу с матричной клавиатуры(фотка выше). Может кто-то сталкивался уже, я с библиотеками разными пробовал- не получается
Serial не дисплей. Или надо набирать 7 цифр в слепую, а потом пачкой кидать в сериал. Или же пирамидой- сначало 1 , потом 2 . Похоже на обновление информации без стирания, но переводом на новую строку. И так до 7 цифр.
Вот я и хочу, вслепую, а потом - пачкой закинуть в сериал
Эм, код в посте #7 не работает так, как Вам надо?
Спасибо, заработало наконец, только на 31ой строке i==6 . Только последним символом отправляеть хрень, но как надо-7 элементов. Причина неясна
Так я ссылку для кого кинул. Создай массив char, заполни его числами, поставь в конце 0, и выпихни в принт без []. как вариант воспльзуйся указателями на этот массив.
Спасибо, заработало наконец, только на 31ой строке i==6 . Только последним символом отправляеть хрень, но как надо-7 элементов. Причина неясна
Нет, надо именно i==7, проверьте. Если i==6, то условие if выполнится раньше чем надо и не присвоится значение последнему элементу массива.
qwone, Jeka_M очень благодарен, проблему можно считать решенной, завтра исходя из ваших советов подправлю еще немного. С рождеством!
Теперь другая проблема, нужно чтобы устройство получило ATD+XXXXXXX, где ХХХХХХХ-7значений массива. Проблема в том, чтобы это все вывелость сразу
То есть не циклом, а именно одним скажем так "сообщением". Если что -это отправка введенного номера на Sim800l.