Как запустить PIC16F873A
26.12.2014, 19:23
|
|
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,762
Сказал спасибо: 76
Сказали Спасибо 1,840 раз(а) в 668 сообщении(ях)
|
Re: Как запустить PIC16F873A
Сообщение от Vigvam13
|
|
Да у меня программный осциллограф, от звуковой карты, т.е. до 20кГц
|
Совсем не обязательно, например у меня на звуковухе спокойно можно поставить частоту 192 КГц, т.е. (теоретически) сигналы до 95 КГц увидеть можно.
Сообщение от Vigvam13
|
|
Я смотрю на базах транзисторов-ключей, вижу четкие импульсы, как и на Меге. Работает генератор!
|
Автор прошивки накосячил, значит, скорее всего... Это уже в программе ковыряться надо.
|
|
|
|
26.12.2014, 19:34
|
|
|
Прописка
Регистрация: 12.03.2014
Адрес: Новосибирск
Сообщений: 102
Сказал спасибо: 25
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: Как запустить PIC16F873A
При каждом включении питания, сегменты зажигаются хаотически, но на всех шести комбинация одинаковая. И не меняется. Куда копать?
|
|
|
|
26.12.2014, 20:01
|
|
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,762
Сказал спасибо: 76
Сказали Спасибо 1,840 раз(а) в 668 сообщении(ях)
|
Re: Как запустить PIC16F873A
Сообщение от Vigvam13
|
|
При каждом включении питания, сегменты зажигаются хаотически, но на всех шести комбинация одинаковая. И не меняется. Куда копать?
|
А эта "комбинация" представляет из себя что-то похожее на буквы/цифры?
Если нет, то копать в сторону микросхем DD3-DD4 и ногами 21, 17 и 18 МК. Очень похоже, что у Вас на индикаторах отображается тот мусор, что присутствовал в этих буферах при включении, а новыми данными они не заполняются.
|
|
|
|
26.12.2014, 20:15
|
|
|
Прописка
Регистрация: 12.03.2014
Адрес: Новосибирск
Сообщений: 102
Сказал спасибо: 25
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: Как запустить PIC16F873A
Сообщение от RECTO
|
|
А эта "комбинация" представляет из себя что-то похожее на буквы/цифры?
|
Нет, не представляет. Могут загореться два сегмента на всех, а могут 8 или 10 сегментов, причем на всех шести индикаторах одинаково.
"новыми данными они не заполняются" А вот почему и как такое возможно?
Последний раз редактировалось Vigvam13; 26.12.2014 в 20:17.
|
|
|
|
26.12.2014, 21:01
|
|
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,762
Сказал спасибо: 76
Сказали Спасибо 1,840 раз(а) в 668 сообщении(ях)
|
Re: Как запустить PIC16F873A
Сообщение от Vigvam13
|
|
Нет, не представляет. Могут загореться два сегмента на всех, а могут 8 или 10 сегментов, причем на всех шести индикаторах одинаково.
|
Значит, в DD3-DD4 дело, вероятнее всего.
Сообщение от Vigvam13
|
|
"новыми данными они не заполняются" А вот почему и как такое возможно?
|
Проверяйте 17, 18 и 21 ногу МК. Сигналы на них есть? Далее, смотрите ногу 14 DD3 и ноги 11, 12 обоих микросхем. Сигналы есть? Они повторяют сигналы на ногах МК, к которым они подсоединены? Низкий уровень на входах OE присутствует? На ноги 8 и 16 питание подаётся?
ЗЫ. И высокий уровень на входы R надо бы через резистор в несколько кОм подавать, а не напрямую от 5 вольт. Переделайте обязательно! А то, может, эти микрухи уже того...
Когда поставите резисторы, проверьте - замкните кратковременно эти входы на "землю", при этом должны зажечься подсоединенные к этой МС сегменты. Значит, выжили...
Последний раз редактировалось RECTO; 26.12.2014 в 21:16.
|
|
|
|
26.12.2014, 21:31
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Re: Как запустить PIC16F873A
Исходники фейк :
|
Код:
|
void vivod (unsigned int x);
void indic (void) {
unsigned char raz;
raz++; if (raz›5) raz = 0;
switch (raz){
case 0: r1 = 1;
vivod(arr_seg [0]);
r1 = 0; break;
case 1: r2 = 1;
vivod(arr_seg [1]);
r2 = 0; break;
case 2: r3 = 1;
vivod(arr_seg [2]);
r3 = 0; break;
case 3: r4 = 1;
vivod(arr_seg [3]);
r4 = 0; break; |
Мало того что написано все безграмотно , так в добавок отсутствует этот
самый vivod. Есть прототип а самой функции нет ...
__________________
Осторожно , злой кот
|
|
|
|
Сказали "Спасибо" dosikus
|
|
|
27.12.2014, 07:57
|
|
|
Прописка
Регистрация: 12.03.2014
Адрес: Новосибирск
Сообщений: 102
Сказал спасибо: 25
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: Как запустить PIC16F873A
Сообщение от RECTO
|
|
Проверяйте 17, 18 и 21 ногу МК. Сигналы на них есть? Далее, смотрите ногу 14 DD3 и ноги 11, 12 обоих микросхем. Сигналы есть? Они повторяют сигналы на ногах МК, к которым они подсоединены? Низкий уровень на входах OE присутствует?
|
RECTO, Вы как в воду смотрели! Мне стыдно, но я все равно признаюсь - поскольку плата двухсторонняя, отсутствовал переход со стороны на сторону в одном из отверстий.
Схема ожила, заработала, только в некоторых разрядах сегменты загораются неправильно, и так бежит по строке. Это не программно? И скорость, с которой бежит строка очень высокая...
Сообщение от RECTO
|
|
И высокий уровень на входы R надо бы через резистор в несколько кОм подавать, а не напрямую от 5 вольт.
|
Это верно. Вечером переделаю обязательно, спасибо за совет.
dosikus,
Сообщение от dosikus
|
Мало того что написано все безграмотно , так в добавок отсутствует этот
самый vivod. Есть прототип а самой функции нет ...
|
а что такое vivod? И как это все переделать?
|
|
|
|
27.12.2014, 14:07
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,284
Сказал спасибо: 441
Сказали Спасибо 1,040 раз(а) в 701 сообщении(ях)
|
Re: Как запустить PIC16F873A
|
Цитата:
|
|
в некоторых разрядах сегменты загораются неправильно, и так бежит по строке. Это не программно?
|
Если не правильные сегменты на одних и тех же символах в одном и том же месте, значит ошибка в коде. Если Вы уже видите бегущую строку, 99,9 % что электрических ошибок в схеме уже нет.
|
Цитата:
|
|
а что такое vivod? И как это все переделать?
|
Это какая-то последовательность команд (в терминах языка С "функция"), которую автор не написал. Т.к. картинка появилась, можно считать, что это не нужно.
__________________
misterdi<@>i.ua
Последний раз редактировалось MisterDi; 27.12.2014 в 14:11.
|
|
|
|
27.12.2014, 14:34
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Re: Как запустить PIC16F873A
Сообщение от MisterDi
|
|
Т.к. картинка появилась, можно считать, что это не нужно.
|
Есть предположение, что исходник намеренно запоганен , ибо этот самый vivod(тьфу, аж противно) табличный конвертер ASII в сегментный код и без него работать не будет. Да и отзывы о самой конструкции далеко не радужные...
__________________
Осторожно , злой кот
|
|
|
|
27.12.2014, 15:07
|
|
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,762
Сказал спасибо: 76
Сказали Спасибо 1,840 раз(а) в 668 сообщении(ях)
|
Re: Как запустить PIC16F873A
Сообщение от Vigvam13
|
|
RECTO, Вы как в воду смотрели! Мне стыдно, но я все равно признаюсь - поскольку плата двухсторонняя, отсутствовал переход со стороны на сторону в одном из отверстий.
|
Да ничего, в общем, страшного...
По симптомам - это типичная неисправность схемы динамической индикации, потому и понятно стало, что к чему.
Сообщение от Vigvam13
|
|
Схема ожила, заработала, только в некоторых разрядах сегменты загораются неправильно, и так бежит по строке. Это не программно? И скорость, с которой бежит строка очень высокая...
|
Ну, можете попробовать кварц пониже частотой поставить, чтобы строка бежала помедленнее. Поскольку ход часов всё равно привязан к DD1, так можно сделать, но может появиться мерцание из-за низкой частоты развёртки. А остальное - только в программе исправлять...
Вообще смущает ещё и то, что на той страничке нет фото работающих часов. У меня есть подозрение, что сам автор не смог оживить свою конструкцию (учитывая ХТ-генератор в конфиге и всё остальное), переложив эту часть работы на последователей. То бишь, на Вас в частности.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 13:46.
|
|