| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Програмиране на PIC16F877 http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=11207 |
Страница 1 от 2 |
| Автор: | Камен Пецов [ Вто Мар 19, 2013 11:05 pm ] |
| Заглавие: | Програмиране на PIC16F877 |
Здравейте, от Няколко дена се мъча с един контролер. Направил съм една ладер диаграма с LDMicro и съм я компилирал за PIC16F877(ползвам него заради големия брой входове и изходи). Записвам го с един JDM програматор. наредил съм и една платака. Симулациите в Proteus работят(почти както аз искам Проблема е че платката не тръгва.Навързал съм всички необходими компненти правилно - кварц,MCRL, Pull-up resistor...... Има ли нещо в програмирането което е по специфично и аз пропускам.... |
|
| Автор: | ToHu [ Вто Мар 19, 2013 11:32 pm ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
Конфигурационни битове, настройка на осцилатор, ресет и др. вкл. и WDT. Не збаравяй ресета, как си го вързал/конфигурирал. |
|
| Автор: | Камен Пецов [ Сря Мар 20, 2013 12:13 am ] | |||
| Заглавие: | Re: Програмиране на PIC16F877 | |||
Схемата е тази. Има си 10к то първи крак към Vdd кварц между 13 и 14 Битовете са направени така:
|
||||
| Автор: | stefan63 [ Сря Мар 20, 2013 8:10 am ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
бутоните са ти към +, тоя контролер има ли входни съпротивления към маса? ако нямат - силно подозирам,че четенето на бутоните е прекалено елементарно. релетата имат нужда от блокиращи диоди, или поне общия пин на драйвера трябва да е свързан към обюия плюс на релетата. |
|
| Автор: | Cekins [ Сря Мар 20, 2013 9:12 am ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
На този порт няма никакви пулъп/даун - демек в този случай трябва да се сложат 3-4 к към маса на всеки бутон. С ULN-ката обаче няма нужда от диоди - само трябва плюса на релетата да го подаде и към COM на интегралката - вътре тя си има защитни диоди вързани към тоя пин. Колкото до физическото програмиране - зарежи тоя JDM - тука във форума има поне 100 теми изписани по въпроса. И ако искаш да разбереш дали работи, си напиши първо една програма дето през 1 секунда да ти превключва някое реле (да размигаш светодиод още му се вика). Иначе пак ще трябва да го играем врачки тука... |
|
| Автор: | Камен Пецов [ Сря Мар 20, 2013 10:32 am ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
Ами сложил съм 10к на всеки бутон към маса просто не съм ги нарисувал на схемата. А за JDM~а - няма за сега друг, знам ,че не е най доброто което има на пазара ама за сега не ми се инвестира в нещо по-читаво. Все пак ми трябват само няколко бройки от това изделие |
|
| Автор: | didofen [ Сря Мар 20, 2013 10:36 am ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
а провери ли дали на самите пинове се изменя коретно? и предполагам, че имаш кварц до 4МХц |
|
| Автор: | Камен Пецов [ Сря Мар 20, 2013 10:59 am ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
Ами кварца е 8Mhz А на самите пинове(входовете) се изменя коректно. Явно Пика не е много читав |
|
| Автор: | sparkybg [ Сря Мар 20, 2013 12:35 pm ] | |||||||||
| Заглавие: | Re: Програмиране на PIC16F877 | |||||||||
И аз да натъртя:
Microchip, въпреки всичките си останали простотии, имат едно доволно голямо предимство пред доста други, и това е програмирането. Взимаш един PICKIT 3, и можеш да програмираш и дебъгваш всичко, що излиза от тая фирма, и то директно от IDE-то, дето ползваш, вместо да се чудиш кое работи и кое - не. |
||||||||||
| Автор: | CarBeta [ Сря Мар 20, 2013 12:43 pm ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
За 8MHz трябва да избереш HS в конфигурацията. В общи линии аз не разбрах какво си направил до момента, какво очакваш да се случи и какво се случва всъщност. Редно е да пуснеш схема, по която работиш и си изпълнил, а не схема "по принцип". Хората ти посочват грешки а ти казваш, че то не е грешка щото си го има ама не е нарисувано. Подходи малко по-сериозно ако искаш да получиш помощ! Дори да не пускаш цялата схема пусни поне основното свързване. Пусни и код с инициализацията на контролера! |
|
| Автор: | Камен Пецов [ Сря Мар 20, 2013 9:17 pm ] | ||
| Заглавие: | Re: Програмиране на PIC16F877 | ||
Идеята на схемата е да чете едни датчици(бутоните) и да влкючва релетата по определен алгоритъм. Нямам код защото ползвам Ldmicro за да направя сравнително проста ладер диаграма. Това е схемата на връзване за сега
|
|||
| Автор: | ToHu [ Сря Мар 20, 2013 10:01 pm ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
Добре схемата ясно, но какво точно се случва, какво не му работи ? Пробвай да добавиш нещо което лесно се дебъгва. Примерно един мигащ светодиод, и един изход който да се управлява директно от вход. п.с. я си дай hex файла най-добре |
|
| Автор: | Камен Пецов [ Сря Мар 20, 2013 10:09 pm ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
Така, явно аз не обяснявам както трябва. За сега искам да го накатам като натисна бутон 1 да включи реле 1. Натискането на бутон 2 да изключи релето. натискането 3 пъти на бутон 3 да включи реле 2 натискането на бутон 4 да изключи всичко реле 3 и 4 са за бъдещи опции Това е .hex~a за който не претендирам ,че ще работи точно както съм го описал. Схемата просто не тръгва Има ли значение,че не съм вързал никъде неизползваните портове? |
|
| Автор: | ToHu [ Сря Мар 20, 2013 10:26 pm ] |
| Заглавие: | Re: Програмиране на PIC16F877 |
Хекса не го виждам. За портовете няма занчение, въпроса е обаче какво не му работи, проблемите може да са всякакви, от грешно конфигуриране и от там да не тръгва, до грешен хекс, не знам какво изпозлваш, но едно време много отдавна пробвах да изпозлвам нещо подобно, не работеше читаво. |
|
| Автор: | Камен Пецов [ Сря Мар 20, 2013 10:36 pm ] | ||
| Заглавие: | Re: Програмиране на PIC16F877 | ||
Извинявам се Ето го:
|
|||
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|