while (1) { ignition_check();// Проверяем замок зажигания
if (ignit && !ign_tmp )// Если включили зажигание, делаем однократные манипуляции { probeg=EEPROM_float_read(16);// Читаем из EEPROM записанный последний раз пробег с адреса 16 ign_tmp=1; }
if (!ignit && ign_tmp) // Если выключили зажигание { // Записываем накопленный пробег в EEPROM. Запись будем производить по выключению // зажигания, чтобы не насиловать ресурс EEPROM EEPROM_float_write(16, probeg); ign_tmp=0; } }
Добавлено after 1 minute 1 second: int main(void) { EEPROM_float_write(16,888888.0); }
Добавлено after 1 minute 15 seconds: Я в майне пишу 888888. Однократно. Это не суть. С момента включения зажигания в процессе езды оно должно меняться.
"Запись будем производить по выключению зажигания, чтобы не насиловать ресурс EEPROM"
хм... есть риск много потерять. Лучше тогда по таймеру, раз в сколько-то минут и сколько-то тысяч импульсов. Ресурс EEPROM сложно изнасиловать, во-первых, надо разбросать равномерно по ячейкам, во-вторых, он большой обычно. Очень. В даташитах гарантированное число циклов, а фактически может быть ещё больше.
Последний раз редактировалось Martian Пн сен 04, 2023 18:31:31, всего редактировалось 1 раз.
Компания MEAN WELL пополнила ассортимент своей широкой линейки светодиодных драйверов новым семейством XLC для внутреннего освещения. Главное отличие – поддержка широкого спектра проводных и беспроводных технологий диммирования. Новинки представлены в MEANWELL.market моделями с мощностями 25 Вт, 40 Вт и 60 Вт. В линейке есть модели, работающие как в режиме стабилизации тока (СС), так и в режиме стабилизации напряжения (CV) значением 12, 24 и 48 В.
я немного неправильно выразился... сделать временно так-
Код:
ISR(INT0_vect) { // 1000/imp - это расстояние, пройденное за 1 импульс в метрах. 1000 метров/на 4073 импульса =0,24551 метра за 1 импульс. cnt_pobeg++; // счетчик пришедших спадов probeg=probeg+1; // увеличиваем пробег с каждым импульсом (в км)
}
и проехав километр посмотреть сколько натикало,без всяких еепромов,пересчетов в километры и т д,надо понять точно ли 4073 импульса на километр других вариантов не вижу... (зачем сразу в лоб, не разобравшись, приписывать восьмерки ,читать писать в еепром?)
Я понял. Сначала, по ошибке я инкрементировал на 0.245... Т.е у меня считало каждый пульс +0ю245 км. И оно работало. Но потом я понял, что тупанул, и умножил это 0ю245 на 0.001. Ну типа пробег же к км, ну и буду к нему с каждым пульсом прибавлять в км. И фиаско меня постигло)))
Добавлено after 3 minutes 25 seconds: Восьмерки писал, т.к. была не стандартная spirntf функция, а суррогатная для экономии памяти. И она криво выводила числа от 333333 и выше. Потом применил sprintf и для проверки вбил 888888 и так и оставил
Добавлено after 1 minute: Завтра сделаю +1 и проверю.
Добавлено after 2 minutes 56 seconds: У меня по пробегу все в отладке, поэтому просто вывожу то, что легко запомнить изначально. И смотреть изменения. Можно хоть 000000 вывести. Не принципиально.
Добавлено after 2 minutes 44 seconds: Возможно дело в том, что приоритет внешнего прерывания выше приоритета прерывания таймера. И пока оно дождется своей обработки, счетчик импульсов натикает лишнего. Просто предположение.
А тут не программирование как раз, а разработка электроники для автомобиля. Автомобиль - источник помех, и это надо учитывать. Устройство, спроектированное без учёта всяких автомобильных бяк, может не только перегрузиться внезапно, но и вообще крякнуться. Вот что может твориться в автомобиле: https://www.diodes.com/design/support/t ... utomotive/
Но даже после того, как Вы спроектируете надёжную схему, всё равно есть риск, что что-то пойдёт не так. Сработает ватчдог и ага, километраж потерян. Ценная информация должна сохраняться максимально часто.
Ваттчдог выключен, импульсы нормальные с датчтика. Это так сказать рыба пока. Мясом обрастет.
Добавлено after 5 minutes 19 seconds: Может быть вы не в курсе, но были такие магнитолы на ауди. Концерты, симфони. Так вот там для удобства юзера настройки громкости, тембра и др. сохранялись в еепром проца моторолла при каждом изменении. Чтобы скинув и накинув клемму акб ничего не терялось. И память эта дохла лет через 8 или раньше. Как ручки часто крутить. Не думаю, что с тех пор что-то координально с еепром изменилось независимо от камня.
Добавлено after 1 minute 10 seconds: Тем более на атмеге, почти ровеснику этой мотороллы
Тем более это не какая-то коммерческая разработка. Это для себя. И скорее всего будет выложена в открытый доступ без смс и регистрации. Поэтому я закрываю глаза на некоторые недочеты, которые скорее всего конечно же будут. Но постараюсь их минимизировать. Будет и датчик освещенности, который не позволит жарить на всю олед дисплею. Постараюсь сделать с умом.
Добавлено after 6 minutes 46 seconds: Вы просто поймите, что пробег - это не самое важное. Важное в моменте - это обороты, температура, напряжение и т.д. Ошибки наверно. Проект начат из-за отсутствия тахометра на панели приборов. Вместо него огромные куранты) Ну и как следствие - аппетит приходит во время еды))). Захотелось большего. Как говорится: у самурая нет цели, есть только путь)).
... Может быть вы не в курсе, но были такие магнитолы на ауди. Концерты, симфони. Так вот там для удобства юзера настройки громкости, тембра и др. ...
a_b_r_a, не путайте устройства и их способы записи. Есть устройства с записью 1М до 10М, есть с High Endurance 10^12 .. 10^14 Read/Writes, а ваше устройство 100k. В действительности оно может быть в несколько раз больше, в зависимости от температуры и питания. В машине он будет близок к заявленному значению. Просто измените способ и/или место для сохранения данных. В контроллере 328? EEPROM не предназначен для лог.
Ввидел устройства с поврежденным ЕЕПРОМ. Хорошо, что они носят лишь информационный характер, а не для принятие решений о посл. действия.
Последний раз редактировалось veso74 Пн сен 04, 2023 19:40:07, всего редактировалось 1 раз.
И память эта дохла лет через 8 или раньше. Как ручки часто крутить. Не думаю, что с тех пор что-то координально с еепром изменилось независимо от камня.
Очень сильно изменилось. И потом, эту магнитолу могли с ошибкой сделать, там тоже люди. Писали в один адрес и каждое прерывание, а не через 5 секунд после последнего изменения и привет - одну ячейку износили, а вся остальная память цела... И 8 лет - это очень большой срок службы, больше срока современного авто. Но, давайте посчитаем: Имеем самую плохонькую ЕЕ, 100 тыщ циклов. Предположим, что она маленькая и забита полностью, то есть, мы не можем сделать запись по кругу, равномерно изнашивая ячейки и требуется эксплуатация в течение 10 лет.: 10 тысяч циклов в год или 27 циклов в день или один раз каждые 53 минуты. Маловероятно, что автомобиль эксплуатируется круглосуточно 365 дней в году, полагаю, можно смело поделить на два. Итого: в самом худшем варианте можно смело записывать каждые 26 минут. Если места в еепромке хватит, чтобы записать в 26 раз больше информации, то можно записывать раз в минуту.
Последний раз редактировалось Martian Пн сен 04, 2023 19:43:27, всего редактировалось 1 раз.
Ок. На текущий момент мне важно реальные показания текущей скорости автомобиля для получения данных о расходе топлива на 100 км пути. Как побочка, если я знаю путь, хочу его тоже вывести. Суммарный. Далее хочу сделать типа подменю, такое, теневое. Где каждый новый обладатель(сборщик, юзер, кто угодно) может вбить свои показания на приборках имп.км, производительность форсунки моновпрыска, зафиксировать мин бака, макс бака, узнать его вместительность. Забить текущий пробег на одометре в память еепром и много чего...) И все используя одну кнопку. ))) Вот так хочу
А бортовик получается хороший,мне понравилось! (только дисплей метковат,и в темное время суток будет ослеплять,туда бы GMG12864,но автор-барин)
Спасибо. Не знаю, можно ли сейчас цитировать. Меня последний раз Старичок за это банил.
Добавлено after 2 minutes 22 seconds: Да, мелковат. Но его можно встроить в приборку. Красно-морковный светофильтр и датчик освещенности думаю помогут сделать аля- родной))
Я так понял у вас там атмега и дисплей SSD1306,их можно в сон уводить,у меня часики атмега+SSD1306+DS3231 во время сна менее 10 мкА потребляют (нажал кнопоку-включились часы,через 3 секунды снова уходят в сон)
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 23
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения