Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

7-ми сегментный индикатор, atmega и динамическая индикация

Непрочитано 08.07.2011, 13:15  
ollycat
Частый гость
 
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
ollycat на пути к лучшему
По умолчанию 7-ми сегментный индикатор, atmega и динамическая индикация

Просьба сильно не бить ногами начинающего. Вернее на старости лет решившего побаловаться с микроконтроллерами, захотелось вспомнить молодость.

В общем есть atmega, есть индикатор. Набросал небольшую программку в arduino, которая бы по нажатию кнопки прибавляла единицу к младшему разряду. По таймеру происходит отрисовка цифр на индикаторе. Вроде все работает, но на некоторых цифрах загораются "лишние" сегменты. Например 4 отображается как "H". При "6" (кажется) вообще во всех разрядах загорается "-" и все нули превращаются в "8".

Вроде проверил все, а багу так и не нашел. Думаю я чего-то недоглядел или не правильно понимаю как с таймером работать. Просьба умных людей ткнуть носом в мою ошибку.

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

Сам по себе проект сделан исключительно для "разобраться как это делается" и практического применения сам по себе не имеет.
Вложения:
Тип файла: rar led7.rar (54.9 Кб, 316 просмотров)
Реклама:
ollycat вне форума  
Сказали "Спасибо" ollycat
warel (28.06.2019)
Непрочитано 08.07.2011, 14:18  
jump
Почётный гражданин KAZUS.RUN
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 8,011
Сказал спасибо: 0
Сказали Спасибо 4,955 раз(а) в 2,379 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

а исходник в асм, С есть - чевой-то не вижу, а шпротеусов не держим
jump вне форума  
Эти 2 пользователя(ей) сказали Спасибо jump за это сообщение:
ollycat (09.07.2011), warel (28.06.2019)
Непрочитано 08.07.2011, 14:46  
ollycat
Частый гость
 
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
ollycat на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

Так до асм мне далеко еще. Когда-то в институте лет 20 назад писал на нем, но до написания под МК на нем еще не добрался. В ардуине нкаропал, в архиве pde лежит. Могу в принципе дезассемблировать если это поможет...

А протеус поставил - так как надо было что-то для симуляции, вот и взял, что первое нашел. Вроде нормально эмулирует те мелочи, что я пробую собрать.
ollycat вне форума  
Сказали "Спасибо" ollycat
warel (28.06.2019)
Непрочитано 08.07.2011, 14:52  
niXto
Почётный гражданин KAZUS.RUN
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

Перед началом вывода следующей цифры гасить предыдущую - то есть писать туда единицы или нули, сразу после этого переключать новый разряд, и после этого загружать сегменты
niXto вне форума  
Эти 2 пользователя(ей) сказали Спасибо niXto за это сообщение:
ollycat (09.07.2011), warel (28.06.2019)
Непрочитано 08.07.2011, 15:20  
ollycat
Частый гость
 
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
ollycat на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

Попробовал сейчас переделать программу. Гашу сначала разряд, потом устанавливаю сегменты и включаю анод. Так же фигня: все равно на цифрах 2, 4, 6 - горит лишний сегмент.
ollycat вне форума  
Сказали "Спасибо" ollycat
warel (28.06.2019)
Непрочитано 08.07.2011, 16:10  
niXto
Почётный гражданин KAZUS.RUN
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

Попробуйте выводить одинаковые цифры. 2222 например. Или 2422
niXto вне форума  
Сказали "Спасибо" niXto
warel (28.06.2019)
Непрочитано 08.07.2011, 16:14  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

да не, там косяк в программе, которой никто не видел. Выключите деление частоты на 8, симмуляция пойдет красивее.
Easyrider83 вне форума  
Эти 2 пользователя(ей) сказали Спасибо Easyrider83 за это сообщение:
ollycat (09.07.2011), warel (28.06.2019)
Непрочитано 08.07.2011, 16:38  
ollycat
Частый гость
 
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
ollycat на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

Увы, тут проблема не в симуляции. Я тоже подумал сначала, что косяк в протеусе. Собрал на макетке, подключил, залил - реально такая фигня! То есть где-то косяк у меня в программе (но по логике вроде все нормально), или я чего-то не учел в особенностях атмеги.
ollycat вне форума  
Сказали "Спасибо" ollycat
warel (28.06.2019)
Непрочитано 08.07.2011, 17:03  
ollycat
Частый гость
 
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
ollycat на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

Попробовал одинаковые повыводить. На цифрах 2 и 4 - косяк. На 2 горит лишний сегмент "C", на 4 - сегмент "E". В битовых масках в программе нормально все стоит, эти биты не должны гореть, сейчас еще раз проверил.
ollycat вне форума  
Сказали "Спасибо" ollycat
warel (28.06.2019)
Непрочитано 08.07.2011, 17:08  
ollycat
Частый гость
 
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
ollycat на пути к лучшему
По умолчанию Re: 7-ми сегментный индикатор, atmega и динамическая индикация

Сообщение от Easyrider83 Посмотреть сообщение
да не, там косяк в программе, которой никто не видел. Выключите деление частоты на 8, симмуляция пойдет красивее.
А вы имеете в виду, что мою программу ни кто не видел? Так я ж вложил ее в архив, led7_plus.pde. Это скетч ардуиновский, но по сути сишная прога, разве что без инклюдов. Но я в ней ни каких "родных" ардуиновских библиотек не использовал, так что это не важно. По сути отличие от чистого C, что там вместо main есть две функции: setup, в которой началная инициализация идет и loop - бесконечный цикл. Вот и все.
Текст скетча я прокомментировал чуть ли не каждую строку, там все тривиально в общем то...
ollycat вне форума  
Сказали "Спасибо" ollycat
warel (28.06.2019)
 

Метки
atmega32, вопросы чайника, начинающий, помогите
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Еще динамическая индикация Kabron Микроконтроллеры, АЦП, память и т.д 22 29.09.2010 16:12
Динамическая индикация mironov Микроконтроллеры, АЦП, память и т.д 4 02.07.2010 17:37
Динамическая индикация ПОМОГИТЕ 7Fantomas7 Микроконтроллеры, АЦП, память и т.д 2 27.03.2008 23:53
Динамическая индикация dosikus Микроконтроллеры, АЦП, память и т.д 3 16.02.2008 19:09
Сегментный ЖК индикатор MT10T71. К каким пинам AVR присоед. retcom Микроконтроллеры, АЦП, память и т.д 10 07.11.2007 19:42


Часовой пояс GMT +4, время: 08:13.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.