Помогите написать простой скетч
- Войдите на сайт для отправки комментариев
Добрый день. с Ардуино и програмированием я совсем новичек. Нужна помощь.
Чтобы не сидеть с паяльником и не собирать схему на транзисторах, а заодно немного начать осваивать Arduino, решил воспользоваться Arduino. Но посидев поразбиравшись понял что написать скетч даже такой просто не под силу. Смысл такой:
На аналоговый вход подается плавно напряжение от 5 до 0V в сторону уменьшения. Плата Ардуино должна дублировать входное напряжение, на выходе выдавать то же что и на входе, но с одним условием, если напряжение на входе становится меньше 0,9V то на выходе из ардуино оно должно остаться на границе 0,9v и не становится меньше при уменьшении напряжения на входе.
Смысл такой, обмануть ЭБУ-автомобиля а именно сигнал с датчика температуры чтобы, компьютер видел температуру только до заданного порога и не видел дальнейшее повышение
1) Что Вы вкладываете в термин "помочь" в данном случае?
2) "Плата Ардуино" не умеет выдавать напряжение.
для вашей ситуации есть раздел ищу исполнителя.
на этом форуме за так помогают только тем, кто сам что то делает.
Вот и я всегда говорю, что один из вариантов подучиться - посмотреть как твою задачу делают другие. Пусть даже за деньги.
Да, нужен цап,скетч получится несложный, тот же MCP4725
Я бы взял PCF8591 - дёшево и сердито.
Достаточно будет простого RC фильтра. Алчные жлобы.
Достаточно будет простого RC фильтра. Алчные жлобы.
да ну? Читаем с одним разрешением выдаем в разрешении в четыре раза хуже, с таких набросков обычно начинают, а заканчивают нормальным цапом, хотя, может и хватит... данные RC цепи тогда уж тоже приведите
Спор бессмысленный, т.к. нет условий задачи.
Как мне помнится по форуму: как только в требованиях появляется слово "автомобиль" - начинается геморрой с АЦП и все эти конструкции с analogRead(), отлично работавшие на столе, мгновенно превращаются в тыкву.
[оффтоп]
... если напряжение на входе становится меньше 0,9V то на выходе из ардуино оно должно остаться на границе 0,9v и не становится меньше при уменьшении напряжения на входе.
Если я правильно пониманию задачу, то это два диода и источник 0,9В. Точно хотите уйти в "цифровой повторитель" ?
[/оффтоп]
все ок, спасибо
а зачем тут вообще ардуина и транзисторы!!
тут вообще достаточно 2 резистора в качестве делителя на 0.9В
если больше 0.9 - то убедт данные исходящего сигнала, если меньше - делитель подтянет вверх...
ну можно дополнить схему еще стабилитроном, дабы только при меньше 0.9в включался делитель...
Спор бессмысленный, т.к. нет условий задачи.
"Помогите написать скетч" - там всей программы на 3 строки.
В автомобиле работать не будет - см. #9
Достаточно будет простого RC фильтра. Алчные жлобы.
analogWrite(pwmPin, constrain(analogRead(analogPin), 184, 1023)/4);
ПротеВус показывает пульсации менее 10мВ на выходе.
Ребят, такой вопрос - в Ардуино возвожно одной строкой Serial.print() вывесте в com порт СРАЗУ ВСЕ компоненты структуры, особенно это касаетя прописных строк? Что-то типа
struct Date
{ int day;
char month[];
int year; };
..................
Date VictoryDay = {9, 'May', 1945};
Serial.begin(9600);
Serial.print(VictoryDay);
Ребят, такой вопрос - в Ардуино возвожно одной строкой Serial.print() вывесте в com порт СРАЗУ ВСЕ компоненты структуры, особенно это касаетя прописных строк? Что-то типа
struct Date
{ int day;
char month[];
int year; };
..................
Date VictoryDay = {9, 'May', 1945};
Serial.begin(9600);
Serial.print(VictoryDay);
Как вариант - определить для структуры operator String() и внутри форматировать содержимое в строку. Про операторы можно почитать в справочнике языка.
Спасибо за ответ.Правильно понимаю - внутри структуры создать конструктор String(), и внутри него создавать как члены String, так и int? В моём случае достаточно, чтобы по нажатию кнопки выводилась конкретная дата(лишь бы месяц был словом). Может быть, более правильно не заморачиватья со структурой, а прописать всё в String()?
Мне нужно, чтобы при выводе в COM порт после одной ссылки в Serial.print() выводилось число, слово и число. Структура в простом виде этого сделать не могут.
Не конструктор, а оператор, член-функция с прототипом:
Не конструктор, а оператор, член-функция с прототипом:
Ох, утечёт память, чую.
ПыСы, а хотя нет, наерна, у String копирующий конструктор правильно написан.
Ребят, не найти нормального объяснения, как определить для структуры operator String(), и вообще о самом этом члене-функции почти ничего. Может ткнёте в хорошее чтиво?
Там как, внутри струкруры прописать opetator String(), а в теле члена-функции String() {} как то 'сколотить' строку. А уже в void setup() через Serial.print() выводить собранную строку??? или не правильно...помогите двоишнику?
Не конструктор, а оператор, член-функция с прототипом:
Ох, утечёт память, чую.
ПыСы, а хотя нет, наерна, у String копирующий конструктор правильно написан.
С чего бы это ей течь? Всё нормально с классом String, всё там нормально реализовано.
Ребят, не найти нормального объяснения, как определить для структуры operator String(), и вообще о самом этом члене-функции почти ничего. Может ткнёте в хорошее чтиво?
Там как, внутри струкруры прописать opetator String(), а в теле члена-функции String() {} как то 'сколотить' строку. А уже в void setup() через Serial.print() выводить собранную строку??? или не правильно...помогите двоишнику?
А что непонятного?
Вот и весь пример.
Спасибо Вам большое! Нужную надпись сделал, но, не всё понятно: (на примере Вашего кода), переменные some.i и some.b я могу менять с входов или подключенной к ардуинке панели.Но, как быть с тем, что в кавычках (" ")? Как менять текст, не трогая код?
И, хотел спросить, где можно почитать про член-функцию String() {} ? Это СИшный синтаксис, так собирать строки?
видимо вводить переменную
как быть с тем, что в кавычках (" ")? Как менять текст, не трогая код?
послушайте, уважаемый - ну почитайте, наконец, учебник. Строки, те, что в кавычках - могут быть такими же переменными программы, что и числа. Вам дали готовый код, что у нас на форуме редкость- так попробуйте его понять и изменить самостоятельно.
Учебников великая тьма. Подскажите, что лучше почитать, применительно к членам-функциям внутри структур для Ардуино. Прошу прощения за назойливость! )))