Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
09.07.2011, 15:40
|
|
Частый гость
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
Вставил токоограничивающие резисторы в катодные цепи индикатора в протеусе - все пошло без проблем.
Честно говоря не очень понимаю почему так получается, тем более, что в интернете видел не раз, что народ включает при динамической индикации без резисторов и все работает.
|
|
|
|
09.07.2011, 15:51
|
|
Частый гость
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
Еще раз благодарю всех откликнувшихся.
|
|
|
|
09.07.2011, 17:16
|
|
Гражданин KAZUS.RU
Регистрация: 14.11.2008
Сообщений: 701
Сказал спасибо: 298
Сказали Спасибо 283 раз(а) в 193 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
|
|
|
|
09.07.2011, 17:57
|
|
Частый гость
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
Да, соврал. ![Обижен](images/smilies/icon_beee.gif) Но не со зла. Видимо где-то в результате экспериментов что-то в коде наделал. Сейчас найду что натворил и напишу. Спасибо.
|
|
|
|
09.07.2011, 18:22
|
|
Вид на жительство
Регистрация: 07.09.2007
Адрес: Дерёвня Ишимбай
Сообщений: 419
Сказал спасибо: 65
Сказали Спасибо 136 раз(а) в 87 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
В протеусе есть кнопочка - Шаг, там если переключать то видно что могут гореть одновременно 2 цифры. Посчитайте какая частота переключения цифр и сделайте задержку. Был у меня похожий проект, но я на ассемблере писал (во вложении). В протеусе работало, а на плате засвечивались цифры - не успевали отключаться. Старайтесь если протеус позволяет ставить PRIMITIVE=DIGITAL , цифровые обрабатываются быстрее.
|
|
|
Сказали "Спасибо" Slava-martyn
|
|
|
09.07.2011, 18:30
|
|
Частый гость
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
Да я знаю про шаг. А задержки пробовал делать, дело не в них. Пока нашел только одно отличие в последних исходниках: я добавил еще один пин, для точки. Но его на схеме не подключал. Но почему-то при его появлении в массиве pins прграмма начинает работать верно. Сейчас все еще раз перепроверяю, что бы не запутаться и опять не ввести ни кого в заблуждение.
За программу на асм спасибо, гляну. Всегда полезно посмотреть как другие делали.
|
|
|
|
09.07.2011, 18:41
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,508 раз(а) в 956 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
Странно, вроде бы все особенности по косточкам разобрал (п.8.9)
https://kazus.ru/forums/showthread.php?t=13198&page=11
В ветке Протеус все прочитали и успокоились. Теперь здесь началось на ту же тему...
|
|
|
Сказали "Спасибо" Halex07
|
|
|
09.07.2011, 18:49
|
|
Частый гость
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
Извините, не совсем на ту. Я спросил тут где у меня ошибка была в программе, так как лишние сегменты отображались как в протеусе, так и на реальном железе и не была связана с теми моментами, что описаны у вас на сколько я могу судить.
К стати спасибо за ссылку, это в факах я как-то пропустил, чего греха таить.
|
|
|
|
09.07.2011, 19:09
|
|
Частый гость
Регистрация: 26.06.2011
Адрес: SPB
Сообщений: 25
Сказал спасибо: 11
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: 7-ми сегментный индикатор, atmega и динамическая индикация
Расставляя точки над "i":
Ошибка была грубая и старая как мир (блин, давно на C не писал, вот видать и лоханулся).
for(char mask=0b00000001; i‹8; mask‹‹=1) // цикл маски битов
Этот цикл "перебирает" все биты включаемых сегментов. Делает он 8 итераций, вместо положенных 7, которые я хотел изначально. Поэтому добавление еще одного пина решило проблему. В итоге сделал "правильно":
for(char mask=0b00000001; i‹sizeof(pins); mask‹‹=1) // цикл маски битов
В общем всем спасибо. Ошибку нашел хоть и сам, но все равно вы все помогли. ![Улыбка](images/smilies/icon_smile.gif) Удачи!
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
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, время: 19:48.
|
|