помогите с мегой8

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

делаю устройство на меге8. к ней подключаю 3-х циферный восьми сегментный индикатор вывод на него с помощью динамической индикацией

portb.0 -> A
portb.1 -> B
portb.2 -> C
portb.3 -> D
portb.4 -> E
portb.5 -> F
portb.6 -> G
portb.7 -> DP
катоды на портD но не вних дело
в некоторых символах негорит сегмент B а в протеусе горит
перерыл весь инет нечего не нашол помогите очень надо уже неделю парюсь
да и ещё пишу на Bascom-avr
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

Если индикация динамическая, то одним и тем же сегментом в разных разрядах управляет один и тот же выход - так? Следовательно, м/к тут ни при чем - так? Проверь семисегментники, вероятно, в них проблема. Или уточни, что значат слова "в некоторых символах" - в некоторых разрядах, или во всех разрядах, при выводе в них этих самых некоторых символов?
Реклама
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

не горит сегмент B как я уже говорил в некоторых символах(цифрах) в "3" "1" "4" а вот "8" горит вся. в ПРОТЕУСЕ работает всё нормально
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

bill писал(а):в ПРОТЕУСЕ работает всё нормально
Проект прицепи если не трудно.

Точно ли ноги выходами назначены ?
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

Ты не до конца ответил на вопрос - ошибка одинакова в любом разряде, или нет? И что еще тебе известно о ситуации?
ikarab писал(а):Точно ли ноги выходами назначены ?
Так ведь в восьмерках-то эти ноги - выходы:
bill писал(а):... а вот "8" горит вся.
Последний раз редактировалось Yellow Tiger Чт апр 16, 2009 12:39:46, всего редактировалось 1 раз.
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

.
Последний раз редактировалось Yellow Tiger Чт апр 16, 2009 12:40:55, всего редактировалось 3 раза.
Реклама
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

вот проект и вырезка назначения портов
Config Portb = Output
Config Portd.0 = Output
Config Portd.1 = Output
Config Portd.2 = Output
Config Portd.3 = Output
Config Portd.4 = Output
Config Portd.5 = Output
Config Portd.6 = Output
Config Portd.7 = Output
Config Scl = Portc.5
Config Sda = Portc.4
Вложения
11111111111.rar
(65.16 КБ) 157 скачиваний
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

bill писал(а):вот проект и вырезка назначения портов
исходник хорошо - а код в МК лучше. Я про проверку в PROTEUSe например - т.е. как в самой прошивке.
Контактная информация:
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

Yellow Tiger писал(а):Ты не до конца ответил на вопрос - ошибка одинакова в любом разряде, или нет? И что еще тебе известно о ситуации?
ikarab писал(а):Точно ли ноги выходами назначены ?
Так ведь в восьмерках-то эти ноги - выходы:
bill писал(а):... а вот "8" горит вся.
да влюбом разряде
вот у меня еть мысль что portb.1 поумолчанию фьюзами назначен но я незнаю как это исправить
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

извините но в коде прошивки не чего не понимаю
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

bill писал(а):извините но в коде прошивки не чего не понимаю
если .hex то в PROTEUS в свойствах МК выбирает дизассемблировать, а потом просто с мотрите что в регистрах МК вписано - например в DDR-ах.
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

Такое впечатление, что в распайке индикатора ошибка.
А чем массив Х инициализируется?
bill писал(а):вот у меня еть мысль что portb.1 поумолчанию фьюзами назначен
Чем-чем он назначен?
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

массив инициализируется

Restore Sigment
For I = 1 To 10
Read X(i)
Next I

Sigment:
Data 63 , 6 , 91 , 79 , 102 , 109 , 125 , 7 , 127 , 111
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

Yellow Tiger писал(а):
bill писал(а):вот у меня еть мысль что portb.1 поумолчанию фьюзами назначен
Чем-чем он назначен?
не спорю возможно фигню ляпнул
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

Присмотрись к процедуре таймера - какая-то странная последовательность:
1. Зажигаем Portd.4 и гасим Portd.2
2. Зажигаем Portd.2 и гасим Portd.3 - то есть, Portd.4 продолжает гореть?
3. Зажигаем Portd.3 и гасим Portd.4 - то есть, Portd.2 продолжает гореть... Не тут ли собака порылась?

Код: Выделить всё

Tim_isr:
Portd.4 = 1
Portd.2 = 0
Portb = Seg1
Portb = Seg1
Waitms 2
Portd.2 = 1
Portd.3 = 0
Portb = Seg2
Portb = Seg2
Waitms 2
Portd.3 = 1
Portd.4 = 0
Portb = Seg3
Portb = Seg3
Waitms 2

Return
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

да так оно и есть только не зажигаем а гасим на светящийся сегмент выходит ноль а на не светящиеся 1
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 36
Зарегистрирован: Чт май 15, 2008 07:18:52

Сообщение bill »

карочи проще наверно попробывать пересадить этот сегмент на другую ногу
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

bill писал(а):да так оно и есть только не зажигаем а гасим
Ясно, общий катод. Распайку индикатора проверил? Хотя бы определить, где ошибка - в железе или в прошивке.
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»