бортовой комп для авто на AT90S2313

Обсуждаем цифровые устройства...
doc626ge
Родился
Сообщения: 13
Зарегистрирован: Пт дек 16, 2005 00:41:35
Откуда: самара

Сообщение doc626ge »

to Sich Забыл сказать пишу на Бейсике (Bascom-AVR), соотв. и работа с DS18S20 тоже на нем! Там в бесике неполучается таким способом измерить длительность - не получается настроить срабатывание таймера на фронт и спад, или фронт, или спад! :( Начал изучать асм (Bascom вроде позволяет делать вставки асм), но пока тяжело.... :( (я только учусь) :)
Аватара пользователя
sich
Открыл глаза
Сообщения: 55
Зарегистрирован: Чт ноя 24, 2005 02:33:45
Откуда: г.Тольятти
Контактная информация:

Сообщение sich »

пишу на Бейсике (Bascom-AVR)

а разве есть разница, на чем писать? В итоге все равно 1или0 в микруху пишем :) От языка программирования ведь счетчик не зависит....? А можешь посчитать время между совпадениями на встроенном компараторе?
Там в бесике неполучается таким способом измерить длительность

а как тогда выйти на время???..... :)

Скинь ПОЖАЛУЙСТА прогу для работы с DS18S20, на любом языке (я потрачу врымя на перевод), если пояснения подпишешь - я вдвойне благодарен буду. Скинуть можешь в личные сообщения, либо вложенным файлом прямо сюда.
А не работает, потому что нет контакта, где он должен быть, ИЛИ есть контакт, где его быть не должно!
doc626ge
Родился
Сообщения: 13
Зарегистрирован: Пт дек 16, 2005 00:41:35
Откуда: самара

Сообщение doc626ge »

to Sich Вот выложил... :)
Вложения
high_resolution_ds.txt
(1.83 КБ) 717 скачиваний
Аватара пользователя
sich
Открыл глаза
Сообщения: 55
Зарегистрирован: Чт ноя 24, 2005 02:33:45
Откуда: г.Тольятти
Контактная информация:

Сообщение sich »

Спасибо за прогу! Я QBasic и TРascal еще со школы знаю, попробую теперь на АСМ перевести.

Кстати! Измерять уровень топлива в баке буду по методу вольтметра как здесь: http://www.telesys.ru/projects/proj037/index.shtml (абзац про АЦП). Можно тут же и вольтметр с указателем температуры двигла замутить, надо только схему коммутации сделать (на транзисторах-ключах или релюхах).
А ведь идея грандиозная!!! смотрите, уже "полувстроенный" АЦП есть!!!
А не работает, потому что нет контакта, где он должен быть, ИЛИ есть контакт, где его быть не должно!
Аватара пользователя
Spider
Опытный кот
Сообщения: 732
Зарегистрирован: Чт дек 29, 2005 07:29:25
Откуда: Омск
Контактная информация:

Сообщение Spider »

Ребят, вот читаю что вы тут пишите, захлёбываюсь слюной. Знаю как писать под PIC и понимаю, что это всё не сложно. Но для меня все эти примудрости с обвесом просто страх. Тут товарищь притащил проц от Amtel, посмотрел я на него и понял, что ничего не изменилось. Поискал по инету готовые решения, нашёл реализации клавиатур и 1-Wire. Нашл как народ подключает ЖК дисплеи, и даже цветные от телефонов (коих у меня валом от утоплиников). Теперь остаолось всё это привести в божеский вид.
Идея с бортовым компьютером у меня была давно. Но я не понимал как связать показания датчиков и сам проц. К примеру было большим вопросом как считать обороты в мин, или измерять скорость, когда датчика скорости нет :( (Но есть 3 контакта в приборке, якобы для подключения туда бортового компа. ВАЗ-2108 98г. Высокая панель, карбюратор)
Есть такой комп как PILOT K-9, это карбюраторый боротовой компьютер для 8ёрок. У него даже есть блок замены коммутатора с корекцией угла зажигания. Да и стоит он всего ~1000р. в своём городе я его не нашёл, а попытки заказать у авторов... ну раз 5 заказывал ни разу не пришло... Да и самому как-то интереснее.

ПомоЖите люди добрые. Если кто-то что-то наработал - дайте посмотреть :) Я пока тут пытаюсь подключить ЖК дисплеи от мобил.
Аватара пользователя
sich
Открыл глаза
Сообщения: 55
Зарегистрирован: Чт ноя 24, 2005 02:33:45
Откуда: г.Тольятти
Контактная информация:

Сообщение sich »

значит так. в основном все датчики - аналоговые (резисторы перем.сопр), исключения: датчик скорости (кстати, если к панели подходит тросик, то датчика нет!), тахометр.
отсюда, чтобы завести анал.датчики, надо сначала АЦП прикрутить(см. мой предыдущий топик/ссылку/!!! - идея-супер!).
по поводу скорости: ставят на 010 датчик(там где тросик в коробку входит), есть чтобы с тросиком использовать! этот датчик (холла)выдает 6 импульсов на оборот (короче инфа есть, я хотел его себе на 2107 ставить :)) остается только считать импульсы по времени...
по тахометру я уже начинал: нуно импульс с трамблера (тоже датчик холла) сначала привести в "удобочитаемый" вид (+5В например) и опять же посчитать.

А теперь еще интереснее!!! полу-пилотная версия моего бортовика!!!
он пока только время показывает, температуру (дискретность 0,5 грС), потом типа литры должен(отобр. написаные мной циферки), вольтаж (пока так-же) ну и фишка! мой ник :)) типа ABOUT
конечно, есть косяки (чтение температуры раз в мин, потому что при чтении я гашу индикацию - динамическая ведь! ; прибавлять часы и мин можно из любого режима :) - это пока,надеюсь и тд)
прошу на рассмотрение!
Вложения
sich_2313.GIF
Это схема
(7.71 КБ) 875 скачиваний
sich_1.asm
это прога
(12.36 КБ) 595 скачиваний
А не работает, потому что нет контакта, где он должен быть, ИЛИ есть контакт, где его быть не должно!
Аватара пользователя
Serega
Говорящий с текстолитом
Сообщения: 1529
Зарегистрирован: Пн авг 22, 2005 21:02:22
Откуда: Питер

Сообщение Serega »

Адын мамэнт.
При обработке прерывания нужно кидать в стек еще флаговый регистр SREG

push Temp ;Темп - в стек
in Temp, SREG
push Temp

;тра-ля-ля, обрабатываем прерывание...
...
;...обработали

pop Temp
in SREG,Temp
pop Temp
Лучше быть первым в деревне, чем вторым в Риме
Аватара пользователя
sich
Открыл глаза
Сообщения: 55
Зарегистрирован: Чт ноя 24, 2005 02:33:45
Откуда: г.Тольятти
Контактная информация:

Сообщение sich »

Serega писал(а):При обработке прерывания нужно кидать в стек еще флаговый регистр SREG

Ясно, учтем. Но как я понимаю, это когда сам в проге пользуешься флагами (напр частенько Т используют).

Заметили, что в проге при опросе DS18S20 когда идут мкСек-ые задержки происходит запрет прерывания. Это (как я понимаю) чревато отставаниями часов. НО ФАКТ! Настроил часы (по мобиле) секунда в сек (+мин дает сброс СЕКУН), оставил на ночь+день (12-14часов работы) девайс в режиме температуры, а утром переключил на часики и сравнил: они на 2-3 сек УБЕЖАЛИ... странннннно...
А не работает, потому что нет контакта, где он должен быть, ИЛИ есть контакт, где его быть не должно!
Аватара пользователя
Serega
Говорящий с текстолитом
Сообщения: 1529
Зарегистрирован: Пн авг 22, 2005 21:02:22
Откуда: Питер

Сообщение Serega »

Частота кварца ползет, скорее всего.

Флаги юзаются при любом условном переходе: brne, breq, brmi, brpl, brcc, brcs и т.д.
Лучше быть первым в деревне, чем вторым в Риме
Аватара пользователя
sich
Открыл глаза
Сообщения: 55
Зарегистрирован: Чт ноя 24, 2005 02:33:45
Откуда: г.Тольятти
Контактная информация:

Сообщение sich »

Serega писал(а):Частота кварца ползет, скорее всего.

На кварце написано 10Mhz, закорочен 27pF кондерами, ну не думаю, что это может повлиять. Температура - комнатная (от 19,5 до 21,0 прыгает за ночь, это я просыпаясь глядел на индикатор :))
А не работает, потому что нет контакта, где он должен быть, ИЛИ есть контакт, где его быть не должно!
Аватара пользователя
sich
Открыл глаза
Сообщения: 55
Зарегистрирован: Чт ноя 24, 2005 02:33:45
Откуда: г.Тольятти
Контактная информация:

Сообщение sich »

Serega писал(а):Адын мамэнт.
........
;...обработали

pop Temp
in SREG,Temp
pop Temp


Насколько я правильно понимаю, при выходе нужно записать
OUT SREG,Temp (вместо in), мы ведь записываем в регистр(типа порт)... Или я чето опять недочитал???
А не работает, потому что нет контакта, где он должен быть, ИЛИ есть контакт, где его быть не должно!
Аватара пользователя
Serega
Говорящий с текстолитом
Сообщения: 1529
Зарегистрирован: Пн авг 22, 2005 21:02:22
Откуда: Питер

Сообщение Serega »

не, все пральна. Это меня опять глючит :oops:
Лучше быть первым в деревне, чем вторым в Риме
Аватара пользователя
Spider
Опытный кот
Сообщения: 732
Зарегистрирован: Чт дек 29, 2005 07:29:25
Откуда: Омск
Контактная информация:

Сообщение Spider »

Как я вам завидую :) Я вот ваще не знаю какая разница между кварцем закороченным кондром и ещё чем то :) Зато я знаю что такое прерывания :)

ЗЫ. Хочу похвастаться - сегодня оживил UFS одного товарища. САМ!!! :) Он умудрился потереть ей EPPROM :)
Аватара пользователя
sich
Открыл глаза
Сообщения: 55
Зарегистрирован: Чт ноя 24, 2005 02:33:45
Откуда: г.Тольятти
Контактная информация:

Сообщение sich »

Spider писал(а):Как я вам завидую :) Я вот ваще не знаю какая разница между кварцем закороченным кондром и ещё чем то :) Зато я знаю что такое прерывания :)

ЗЫ. Хочу похвастаться - сегодня оживил UFS одного товарища. САМ!!! :) Он умудрился потереть ей EPPROM :)


кто-то в одном, кто-то в другом! Я так и не знаю, как UFS переводиться :)). Зато ВСЕ вместе - это такая СИЛА!!! Хорошо, когда можно у кого-то спросить.

Кстати препод в инсте сказал, что 1wire по проводам более 0,7м пускать нельзя (типа сигнал затухнет), не поверил, сделал типа "лабораторку" :) повесил DS18S20 на 3м проводе (питание не паразитное! , т.е +5В, ГНД и вв/выв) - работает изумительно!!! (мерил температуру за окошком и сравнивал по телику :))
А не работает, потому что нет контакта, где он должен быть, ИЛИ есть контакт, где его быть не должно!
Аватара пользователя
Serega
Говорящий с текстолитом
Сообщения: 1529
Зарегистрирован: Пн авг 22, 2005 21:02:22
Откуда: Питер

Сообщение Serega »

Да да да... Знаю я как по телику температуру показывают...
В эфирной аппаратной стоит коробочка, на которой кнопочками набирается температура...... :)))
Лучше быть первым в деревне, чем вторым в Риме
Аватара пользователя
Spider
Опытный кот
Сообщения: 732
Зарегистрирован: Чт дек 29, 2005 07:29:25
Откуда: Омск
Контактная информация:

Сообщение Spider »

UFS это такой программатор для GSM труб. Типа платный. Хотя платить 3к5 р. за коробочку с ATMega8+FTDI+обвес (как пачка сигарет всё) это не моё :)

Кстати господа! Никто не юзал Proteus? Может есть кого полная версия?

Я ПОДЦЕПИЛ ДИСПЛЕЙ ОТ M65 К ATMega16!! АААА Клёва.
Аватара пользователя
Spider
Опытный кот
Сообщения: 732
Зарегистрирован: Чт дек 29, 2005 07:29:25
Откуда: Омск
Контактная информация:

Сообщение Spider »

Вот тут читаю это: http://www.m-electronics.ru/products/pilot_k9
А именно там:
При помощи маршрутного компьютера PILOT K9 вы можете:
  • Просматривать значение оборотов двигателя 100 - 8000 об/мин.
    Вот тут хотел спросить. В каком виде идёт импульс катушки на штатный стрелоный тахометр в ВАЗ? А уж посчитать его не проблема.
  • Устанавливать границу звукового предупреждения о превышении оборотов двигателя 2500 - 8000 об мин.
    Смешно как просто.
  • Корректировать коэффициент пересчета оборотов для систем с двумя катушками зажигания.
    Тоже не ильно сложный алкоритм если реализовать первый
  • Вводить поправку угла опережения зажигания от -15 до +15 градусов.
    Вот это это как?
  • Вводить поправку угла опережения зажигания от -15 до +15 градусов для режима пуска двигателя(обороты менее 420 об/мин).
    Тоже пока не понял что это :)
  • Оперативно переходить с бензина на газ, мгновенно изменять поправку УОЗ на "-6 градусов".
    Ну я с ГАЗом не сталкивался, но думаю если разобратьсяне так сложно :)
  • Просматривать температуру внутри салона (-40 Со - +60 Со).
  • Просматривать наружную температуру (-40 Со - +60 Со).
    Смешно как просто.
  • Корректировать показания наружней и внутренней температуры с дискретностью 1 градус.
    В принципе можно и меньшую дискретность задать :)
  • Просматривать напряжение аккумулятора 8 - 16 Вольт.
    А как это МК's делается?
  • Просматривать текущее время.
    Это всё понятно.
  • Просматривать и сбрасывать время в поездке 0 - 99ч59мин и до 999 часов.
    Тоже не сильно хитро
  • Включать режим "РЕЗЕРВ" для аварийного движения в случае отказа датчика Холла.
    Как это делается? Я что-то не понял.
  • Просматривать остаток топлива в баке 0 - 70 литров.
    Понятно.
  • Выбирать четыре стандартных типа калибровочных таблицы бака для разных начальных и конечных сопротивлений датчика уровня топлива.
  • Производить калибровку показаний "Остатка топлива в баке" под произвольный датчик уровня топлива (0-500 Ом для бака. 0-70 литров).
  • Просматривать прогноз пробега на остатке топлива в баке 0 - 999 км.
    Интересная фишка :)
  • Устанавливать средний путевой расход топлива на 100 км 3- 40 л/100 км.
    Ваще нужная вещь. Для меня.
  • Включать многоискровой режим для в режиме пуска двигателя, при оборотах менее 420 об/мин.
    Как это делается?! Я не понял. Как можно давать больше искры?
  • Просматривать неравномерность оборотов двигателя с точностью 1 об/мин в диапазоне от 0 до 999 об/мин.
    Маршрутный компьютер PILOT K9 имеет сервисные функции, которые позволяют:
  • Изменять яркость свечения индикатора - 3 уровня (короткое нажатие на маленькую нижнюю кнопку).
    Я планирую делать на ЖК, от мобилок.
  • Получать предупреждающий сигнал о превышении оборотов.
  • Получать предупреждающий сигнал о выходе бортового напряжения за пределы 10 - 15,5 Вольт.
  • Получать предупреждающий сигнал о возможности образования гололеда.
  • При отключении аккумулятора часы обнуляются, а все текущие установки, а так же значение времени в поездке сохраняются.
    Хе хе :) Я тока что спрашивал как это лечится, ну остановились на даласе.


Спайдер, нафлудил на всю страницу... подправь. Это или в котоссылки, или потереть нах. Ржавый.
Аватара пользователя
Сэр Мурр
Модератор
Сообщения: 11169
Зарегистрирован: Чт окт 27, 2005 18:50:07
Откуда: из мест не столь отдалённых

бортовой компьютер

Сообщение Сэр Мурр »

на тахометр импульсы идут с датчика Холла, а не с катушки.
Коррекция угла опережения зажигания- сверхполезная вещь, в цифровом исполнении реализуется изменением длительности импульса задержки ( знаете, для чего вообще вводится опережение угла зажигания)
измерение напряжения аккмулятора и температуры- через встроенный Аналого-Цифровой Преобразователь-АЦП
многоискровой режим- вместо одного импульса тока в катушку подаётся серия; облегчает запуск двигателя
режим "резерв" - как здесь реализовано-не знаю; на ЗИЛах просто включался механический прерыватель
при отключении питания часы отключаются из-за непомерного аппетита светодиодного индикатора
далее- молчание..... :wink:
Аватара пользователя
Spider
Опытный кот
Сообщения: 732
Зарегистрирован: Чт дек 29, 2005 07:29:25
Откуда: Омск
Контактная информация:

Сообщение Spider »

А какая величниа идёт с датчика? напряжение и то? Я так понимаю, что померить цешкой у меня не получится :) И достаточно ли будет просто считать эти импульсы, приведённые до нужного уровня, за время какой-то ноги AVR, чтобы определить обороты?
Аватара пользователя
Сэр Мурр
Модератор
Сообщения: 11169
Зарегистрирован: Чт окт 27, 2005 18:50:07
Откуда: из мест не столь отдалённых

бортовой компьютер

Сообщение Сэр Мурр »

Амплитуда импульса не слишком большая; близко к 5 вольтам, сей импульс входит в КОММУТАТОР. Наблюдать лучше осциллографом; продвинутый цифровой м\метр может показать частоту этих импульсов и их скважность :twisted:
число импульсов пропорционально цислу оборотов, но их нужно разделить на 2 для 4-хцилиндрового двигателя- за один оборот коленвала образуются 2 искры ( автолюбители поправят, если я ошибся) :oops:
Ответить

Вернуться в «Цифровая техника»