Например TDA7294

Форум РадиоКот • Просмотр темы - Измеритель скорости на ATMEGA8.
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 16, 2024 09:28:20

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Измеритель скорости на ATMEGA8.
СообщениеДобавлено: Вт апр 04, 2017 16:44:50 
Родился

Зарегистрирован: Вс янв 09, 2011 22:16:11
Сообщений: 12
Откуда: Узбекистан
Рейтинг сообщения: 0
Приветствую Уважаемые форумчане. Недавно по просьбе знакомого автомоделиста ( скорее по желанию попробовать собрать что-то серьезное) начал разработку измеритель скорости. В чем заключается суть данного девайса. Модель автомобиля едет по кругу в произвольный момент времени (т. е. по желанию спортсмена) при нажатии на кнопку начинается отсчет определенного количества кругов. И после все этих процедур выводится финальный результат. Забыл упомянуть до нажатия на кнопку показывается скорость каждого круга. Так спортсменам легче определить лучший момент.

Добавлено after 28 minutes 52 seconds:
Выклыдываю проект в протеусе и собственно саму программу.

Добавлено after 23 minutes 22 seconds:
Схему в протеусе выложить не получается(не знаю почему, но скорей всего ограничение модератора) Попробую нарисовать .jpeg
Программу выложил. Если есть мысли как её ускорить, сделать более читаемой критика приветствуется(попрошу сильно не пинаться это моя 2я программа).


Вложения:
Poligon.rar [26.33 KiB]
Скачиваний: 167
AvtoSpeed_0.0.1.c [4.12 KiB]
Скачиваний: 485


Последний раз редактировалось Tuz Ср апр 05, 2017 08:30:28, всего редактировалось 1 раз.
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Измеритель скорости на ATMEGA8.
СообщениеДобавлено: Вт апр 04, 2017 19:01:14 
Друг Кота
Аватар пользователя

Карма: 187
Рейтинг сообщений: 8255
Зарегистрирован: Пн ноя 30, 2009 03:00:01
Сообщений: 39530
Откуда: Нерезиновая
Рейтинг сообщения: 0
Tuz писал(а):
Схему в протеусе выложить не получается(не знаю почему, но скорей всего ограничение модератора) Попробую нарисовать .jpeg .

Заархивируйте файл протеуса в *.rar или *.zip - тогда выложится..


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Измеритель скорости на ATMEGA8.
СообщениеДобавлено: Ср апр 05, 2017 05:31:49 
Друг Кота

Карма: 64
Рейтинг сообщений: 966
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4220
Откуда: Ижевск
Рейтинг сообщения: 0
Tuz писал(а):
Программу выложил. Если есть мысли как её ускорить, сделать более читаемой критика приветствуется(попрошу сильно не пинаться это моя 2я программа).
Можно уйти от магических чисел типа
Код:
   TCNT1 = 57535;
, а сразу записать
Код:
TCNT1 = -8000 ; 1мс
или вообще уйти от привязки к частоте тактирования
Код:
TCNT1 = -F_CPU/1000; 1мс

Не нравится проведение расчёта скорости. Операция деления должна проводиться в последнюю очередь. Не думаю, что компилятор настолько продвинутый, что сам определяет порядок выполнения операций.
Думаю, что лучше задать режим работы таймера по сравнению с автосбросом и привязать к 1мс динамическую индикацию.
Код:
OCR1A=F_CPU/1000-1; 1мс
TCCR1B=ICES1+WGM12+CS10; CTC F_CPU/1


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Измеритель скорости на ATMEGA8.
СообщениеДобавлено: Ср апр 05, 2017 08:28:36 
Родился

Зарегистрирован: Вс янв 09, 2011 22:16:11
Сообщений: 12
Откуда: Узбекистан
Рейтинг сообщения: 0
Спасибо за совет АлександрЛ. Проект в протеусе выложил.

Добавлено after 41 minute 38 seconds:
Код:
 или вообще уйти от привязки к частоте тактирования
ТCNT1 = -F_CPU/1000; 1мс

Отиличная мысль. Буду исправлять.
Код:
 Не нравится проведение расчёта скорости. Операция деления должна проводиться в последнюю очередь. Не думаю, что компилятор настолько продвинутый, что сам определяет порядок выполнения операций.

Если вы имеете в виду эту часть кода
return (uint16_t)(((float)50000/data)*3600);
то здесь после деления, результат умножается что бы вывести нужную часть числа из дробной части (Поскольку точка скорей всего будет включена постоянно). Что бы вывести деление из формулы нужно будет добавить переменную и добавить еще отдельную строку кода для умножения. Что то типа этого:
float temp;
temp = ((float)50000/data):
return (uint16_t)(temp*3600);
Больше ничего в голову не приходит. Результат по формуле выдается правильный.
Код:
Думаю, что лучше задать режим работы таймера по сравнению с автосбросом и привязать к 1мс динамическую индикацию.
OCR1A=F_CPU/1000-1; 1мс
TCCR1B=ICES1+WGM12+CS10; CTC F_CPU/1

Про динамическую индикацию думал, но не успел добратся


Вернуться наверх
 
Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Измеритель скорости на ATMEGA8.
СообщениеДобавлено: Ср апр 05, 2017 08:51:39 
Друг Кота

Карма: 64
Рейтинг сообщений: 966
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4220
Откуда: Ижевск
Рейтинг сообщения: 0
Не понимаю в ваших кыржиках, но почему нельзя сделать так
Код:
3600*50000/data


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Измеритель скорости на ATMEGA8.
СообщениеДобавлено: Чт апр 06, 2017 16:35:41 
Родился

Зарегистрирован: Вс янв 09, 2011 22:16:11
Сообщений: 12
Откуда: Узбекистан
Рейтинг сообщения: 0
Эту формулу я скопировал с термометра. Подставил только свои значения. Но следуя вашей формуле умножение можно убрать совсем, оставив только деление.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Измеритель скорости на ATMEGA8.
СообщениеДобавлено: Пт апр 07, 2017 02:42:04 
Друг Кота

Карма: 64
Рейтинг сообщений: 966
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4220
Откуда: Ижевск
Рейтинг сообщения: 0
Именно так, объявив константой.
viewtopic.php?p=2988312#p2988312


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: azhel12 и гости: 12


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y