Некоректная робота PIC16F877A.
|
|
xxxmonejall |
Дата: Чт, 15.09.2011, 14:14 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
139
Замечания:
±
На сайте с 17.05.2008
Статус:
Offline
|
Доброго времени суток. Столкнулся с проблемой. Простейшая программа, мигающий светодиод. Некорректно работает, диод может просто светится, может не светится иногда может мигать. В протеусе все работает. Вот код программы: @ device pic16f877a, xt_osc, wdt_off, protect_off, pwrt_on DEFINE OSC 20 TRISB = %00000000 TRISD = %00000000 TRISA = %00000000 main: portb.5 = 1 pause 500 portb.5 = 0 GOTO main Кварц 20Мгц, MCLR через 10Ком на +5в кондеры на кварце по 15Пф. Что-то мне кажется что дело имен о в кварце, или в кондерах. Кондеры подключены к кварцу и на землю. Какие должны быть кондеры? И резистор на MCLR ? И еще читал что вывод PGM должен быть подключен на землю через резистор, правда ли это?
|
|
|
|
Matrix252005 |
Дата: Чт, 15.09.2011, 14:38 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
Приятного времени суток. xxxmonejall, Вы забыли добавить еще одну "задержку":
main: portb.5 = 1 pause 500 portb.5 = 0 pause 500 ' без этого, он просто очень быстро переходит с "0" на "1". И Вам кажется, что он постоянно светится. GOTO main
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|
terrarus |
Дата: Чт, 15.09.2011, 15:29 | Сообщение # 3 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
451
Замечания:
±
На сайте с 21.08.2008
Статус:
Offline
|
Quote (Matrix252005) Какие должны быть кондеры? Я обычно использовал 15 пф. или 18 пф. Иногда попадались конденсаторы с большими токами утечки и тогда кварцевый генератор работал неустойчиво (то запускался. то нет).
Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
|
|
|
|
Matrix252005 |
Дата: Чт, 15.09.2011, 15:59 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
terrarus, здесь вышла ошибка !!!! Я не спрашивал про емкость!!!
xxxmonejall, рез на MCLR, на 10к. Конденсаторы от 22 - 33р (Обычно использую эти номиналы.). Ваша вся проблема, заключалась в отсутствии паузы и все, остальное тут не причем...
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|
mikhail09p |
Дата: Пт, 16.09.2011, 00:20 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 04.05.2010
Статус:
Offline
|
Quote (Matrix252005) Конденсаторы от 22 - 33р (Обычно использую эти номиналы.) Я тоже.
Quote (terrarus) Иногда попадались конденсаторы с большими токами утечки и тогда кварцевый генератор работал неустойчиво (то запускался. то нет). И это правда. Тогда не поймёшь, то ли программа некорректно работает, то ли из-за кварца задержки плавают...
Сообщение отредактировал
mikhail09p - Пт, 16.09.2011, 00:22
|
|
|
|
xxxmonejall |
Дата: Пт, 16.09.2011, 18:03 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
139
Замечания:
±
На сайте с 17.05.2008
Статус:
Offline
|
Большое спасибо. А где кондеры берете?
|
|
|
|
mikhail09p |
Дата: Пт, 16.09.2011, 20:16 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 04.05.2010
Статус:
Offline
|
Quote (xxxmonejall) Большое спасибо. А где кондеры берете? Да где придётся! С плат выпаиваю чип детальки в последнее время...
|
|
|
|
xxxmonejall |
Дата: Сб, 17.09.2011, 00:51 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
139
Замечания:
±
На сайте с 17.05.2008
Статус:
Offline
|
И снова я со своими проблемами. Все таки проблема наверное в кондерах. Прогу переписал пере зашил. А проблема все та же то работает то нет. И еще заметил, просто случайно дотронулся до вывода кварца пальцем, и диод засветился. При каждом следующем прикосновение то включается то вырубается.
|
|
|
|
rvstar |
Дата: Сб, 17.09.2011, 11:19 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
69
Замечания:
±
На сайте с 09.10.2007
Статус:
Offline
|
Я бы посоветовал для 16Ф877А добавить в начало программы ставить код ADCON1 = %10000111
выключаем компаратор
|
|
|
|
xxxmonejall |
Дата: Сб, 17.09.2011, 15:42 | Сообщение # 10 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
139
Замечания:
±
На сайте с 17.05.2008
Статус:
Offline
|
Еще раз большое всем спасибо. Проблема решена. Она заключалась в xt_osc. Так как кварц на 20Мгц нужно было поставит hs_osc. Иногда внимательное чтение книжек помогает:) Поменял и все заработало.
|
|
|
|
ADMIN |
Дата: Вс, 18.09.2011, 07:42 | Сообщение # 11 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Quote (rvstar) Я бы посоветовал для 16Ф877А добавить в начало программы ставить код ADCON1 = %10000111 выключаем компаратор
Это неверное утверждение! Рекомендую почитать даташит. Компаратор выключается строкой CMCON=%00000111
|
|
|
|
MiXaS |
Дата: Пн, 19.09.2011, 12:01 | Сообщение # 12 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
549
Замечания:
±
На сайте с 02.10.2010
Статус:
Offline
|
Здравствуйте! Я извиняюсь! Не хочу создавать новую тему. Помогите пожалуйста в обозначении PIC18f2550-20i/p. НУ ТУТ ВСЕ понятно, пик 18 серии, имеет флеш память, модель 2550, макс тактовая частота 20 Мгц... А Если PIC18f2550-i/p??? Какая у него тактовая частота??? Заранее спасибо!!!
|
|
|
|
holyuser |
Дата: Пн, 19.09.2011, 13:32 | Сообщение # 13 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
228
Замечания:
±
На сайте с 12.12.2007
Статус:
Offline
|
Quote (MiXaS) в обозначении PIC18f2550-20i/p. НУ ТУТ ВСЕ понятно Тут как-раз есть непонятки, поскольку для этого пика обозначение 20I/P вообще никчему, P - это корпус PDIP, а PIC18F2550 в стандартном PDIP никогда не выпускался. Он выпускается в SDIP (SP) и SOIC (SO).
Quote (MiXaS) А Если PIC18f2550-i/p??? Какая у него тактовая частота??? Максимальная тактовая частота PIC18F2550 - 48 МГц.
|
|
|
|
ADMIN |
Дата: Пн, 19.09.2011, 13:44 | Сообщение # 14 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
В даташите, кстати, указано, что есть pdip корпуса для этого девайса. И для 2450 тоже. А в живую не попадались
|
|
|
|
holyuser |
Дата: Пн, 19.09.2011, 14:08 | Сообщение # 15 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
228
Замечания:
±
На сайте с 12.12.2007
Статус:
Offline
|
В даташите после PDIP в скобках написано Skinny DIP, узкий (300 mil), который обозначается SP. В стандартном 28-выводном PDIP (600 mil) в живую можно встретить флэш-версии старых пиков, например PIC16F57, для совместимости с PIC16C57.
|
|
|
|