Перейти к содержанию

Частотомер На Atmega8


Ylia

Рекомендуемые сообщения

На писал прошивку для частотомера в CodeVisionAVR. Смоделировал в протеусе. Маленько привирает. Я в микроконтроллерах не силён. Не подскажете, в чём проблема? Архив с проектом прикрепил.:)

проект.rar

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

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

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

А ты говоришь сейчас о протесовском моделировании или о железном устройстве? А то ведь в протеусе твой частотомер моделируется без проблем. Как всегда, даже слишком(я про верхний порог частоты:)).

skryn_240.jpg

Ссылка на комментарий
Поделиться на другие сайты

О протеусе говорю :) У меня какую-то ерунду показывает... А какая у вас версия? Не подкинете ссылку на установочник?

P.S. А кварц так, как у меня, можно использовать? Т.е. на PB6 и PB7 повесить кварц, а остальные выводы использовать на индикацию? Порт сконфигурирован ка выход.

Вот что показывает :)

post-30421-097059900 1288779621_thumb.jpg

Изменено пользователем Ylia
Ссылка на комментарий
Поделиться на другие сайты

скачай Proteus 7.6, если у тебя не он,и попробуй.

Что касается кварца - он в протеуе может ставиться только для того, чтоб потом удобнее было при разводке платы, на самом деле модель микроконтроллера его не видит и частота тактирования будет такой, которую ты в настройках самого кристала поставишь (у тебя 16 МГц там было). Короче со схемой там всё нормально, исходник я просмотрел, не смотрел детально в рассчёты, ибо код простой очень, думаю там сложно было ошибиться, да и работает же у меня без проблем.

Если такая ситуация повторяется только на определённых промежутках значений частот, или усугубляется с ростом частоты - проверь ещё раз установку фузов, не поставил ли деление тактирующего сигнала на восемь.

Протеус качнуть с хор. скоростью можно тут

а если есть такая возможность, то лучше паяй в железе и пробуй, я думаю, что будет работать. Не захочет - заставим)))

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

А вот моя версия частотомера. Микроконтроллер atmega8535. Сигнал подается на счетный вход таймера T0 и на вход захвата таймера Т1. Частота выводится на lcd. Если кому нужно схему могу скинуть. Вот проект.

Cymometer2.rar

Изменено пользователем -Pashgan-
Ссылка на комментарий
Поделиться на другие сайты

По идеи, в протеусе вообще ни чего не должно отображаться (хотя наверное один символ должен), так как индикация сделана динамическая, а такое в реальном времени протеус отобразить не может.

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно.

Ссылка на комментарий
Поделиться на другие сайты

По идеи, в протеусе вообще ни чего не должно отображаться (хотя наверное один символ должен), так как индикация сделана динамическая, а такое в реальном времени протеус отобразить не может.

С чего это вы такое придумали ?

Ссылка на комментарий
Поделиться на другие сайты

Не знаю, у меня протеус простоял на компе пару дней, так вот он не отображал. Может сломан был криво, но динамическая индикация на семи сегментном индикаторе не работала.

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно.

Ссылка на комментарий
Поделиться на другие сайты

Этот проект, только ноль отображает в протеусе.

Куда вы сигнал подавали?

Схему взял с первого поста.

Переподключил на PD5

Протеус показывает 7516 при поданной частоте 1М

и 60128 при частоте 8М, правда проц загружен на 100%.

Если в свойствах индикаторов (Minnimum trigger time) выставить 100us , они перестают мигать.

Изменено пользователем codenamehawk
Ссылка на комментарий
Поделиться на другие сайты

  • 8 месяцев спустя...
  • 6 месяцев спустя...

Как изменить прошивку?, что б если я подаю на вход например 10234 Гц, он показывал 10234, а не как в этой прошивке показывает только 10. Или это только в протеусе так показывает?

Изменено пользователем Александр Тузков
Ссылка на комментарий
Поделиться на другие сайты

Не знаю, у меня протеус простоял на компе пару дней, так вот он не отображал. Может сломан был криво, но динамическая индикация на семи сегментном индикаторе не работала.

Так же было это какой то глюк протеуса.Поставил на плюс подтяжку общего контакта для каждого разряда - стал показывать.Даже динамику видно - загрузка не дает в реальном времени работать.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 года спустя...

Здравствуйте! Пришлось поднять старую тему, ибо всю голову изломал. Собрал частотомер по схеме из этой темы, прошивку чуть модифицировал под кварц 8 МГц, и столкнулся с проблемой. В протеусе все работает как нельзя лучше, а в железе устройство отказывается измерять частоту ниже 6000Гц (примерно). То есть 20 000 Гц показывает точно, а с уменьшением частоты растет погрешность, 1000 Гц померять вообще нельзя, на экране случайные цыфры. Почему - никак не пойму. Проект в протеусе и исходники выкладываю.

Разобрался сам. дело было в формирователе, подобрал конденсатор, поставил четыре инвертора.

частотомер 8МГц.zip

Изменено пользователем Pavel_Pochivalov
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Сообщения

    • параллельно изучать по фото платы, сервис мануал (схема) если будет, то на него и ориентировать покупку. Цена определяет качество, резонансный всегда дороже. Про нагрузку Вы не написали, что там будет?
    • Спасибо! Сегодня буду смотреть почему проседает... Хотя аккум нормальный, 11.1v, максимальный долговременный ток до 20А... Вообщем разбираюсь.
    • Ловите, как раз на широкую полосу для Палника рисовали, автора не знаю. Все, что нужно.   
    • @Андрей0З9  Это что за учитель и где, такой по трудовому обучению, задает задачи по физике 10 класса.?!  Бред полный.
    • Румынский дядька - перфекционист-фенечник. Бисера и бусин - дофига, вот и ставит куда не попадя, в данном случае бусинками выставил единую высоту ряда конденсаторов. Подобное встречалось, когда на ножки впаиваемых элементов одевались короткие кембрики одинаковой высоты, чем задавалась единая высота монтажа. Ну видимо румынскому дядьке лень было нарезать кучу одинаковой мелочёвки, зато было вналичии много бисера..., и креативно и желаемого достиг. С уважением, Сергей. 
    • О, это очень полезные регистры! в 88 только GPIOR0 сохранил свои полезные свойства. использую их как флаги событий прерываний. для GPIOR0 адрес порта ввода-вывода 0х1Е, а значит к нему применяются команды cbi, sbi, sbic, sbis   ну и   in, out. Когда происходит прерывание, процессор переходит на адрес обработки прерывания, вот там-то мы и располагаем код: sbi   GPIOR0, 0     ;установить в 1 бит 0 в регистре GPIOR0 reti                        ;вернуться из прерывания   Без использования регистра GPIOR0, а с использованием обычного регистра код выглядел бы иначе: push   R0                          ;освобождаем регистр R0 для SREG и сохраняем его in        R0, SREG               ;сохраняем SREG в R0, все флаги операций текущей программы sbr     R23, 1<<0             ;выставляем флаг признака прерывания, например бит 0 в регистре R23 out    SREG, R0               ;восстанавливаем SREG, все флаги операций текущей программы pop   R0                          ;восстанавливаем значение R0 reti                                  ;вернуться из прерывания   Нетрудно заметить......!   А, да команда: sbr     R23, 1<<0 в идеале изменяет флаги в SREG, потому и такая длинная цепочка команд. Далее, из всего сказанного выше... в АТмега8 до адреса ввода / вывода 0x1F, находятся некоторое количество регистров, которые крайне редко (...никогда...) используются, например: TWBR, TWSR, TWAR, SPCR, ....... их можно (... нужно...) использовать как GPIOR регистр. До связи.
×
×
  • Создать...