| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| въпросче от начинаещите.... http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=2876 |
Страница 1 от 1 |
| Автор: | Emo [ Пон Сеп 11, 2006 6:19 pm ] |
| Заглавие: | въпросче от начинаещите.... |
ЗДР на всички взех си на скоро книга за 16ф84а пробвах да реализирам следния код: list p=16f84a #include <p16f84a.inc> __config _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC w equ 0 f equ 1 counter equ h'0c' org h'0000' goto start start bsf STATUS,RP0 movlw B'11010111' movwf OPTION_REG bcf STATUS,RP0 clrf PORTB bsf STATUS,RP0 movlw B'11111110' movwf TRISB bcf STATUS,RP0 goto main wait movlw d'7' movwf counter clrf TMR0 again bcf INTCON,T0IF loop btfss INTCON,T0IF goto loop decfsz counter,f goto again return main bsf PORTB,0 call wait bcf PORTB,0 call wait goto main end (pic на млад конструктор) тва кара един светодиод да мига -- елементарно предполагам флашнах чипа чрез ponyprog , но като го свързах с необходимите външни елементи не стана нищо. Гледах -има необходимото напрежение на крачетата на чипа , на MCLR ima +5V ама не бачка пущината.... Някакви идеи? направи ми впечатление че при компилацията на кода (c MPLAB) дава следното съобщение Message[302] D:\EMIL\SVETODIOD.ASM 12 : Register in operand not in bank 0. Ensure that bank bits are correct. при положение че банката е избрана (bsf STATUS,RP0) Също така като наблюдавам регистрите PORTB не променя състоянието си предварително благодаря за вниманието |
|
| Автор: | darkyp [ Пон Сеп 11, 2006 7:49 pm ] |
| Заглавие: | |
Съобщението на MPLAB е нормално. Просто предупреждава. Понеже е компилатор и не може да предвиди дали програмата ти (макар и елементарна) като стъпи на дадения ред ще е сетната правилно банката за съответния регистър. Относно защо не работи програмата - предполагам си верифайнал след програмирането с ponyprog-а? Как наблюдаваш регистрите PORТB? През симулатора на MPLAB? Ако е така ги наблюдавай в дебъг режим, т.е. изпълнение стъпка по стъпка. Не съм сигурен как е в новите версии, но при стартиране мисля, че не си опресняваше екрана... дори stopwatch-а. |
|
| Автор: | Desert Leo [ Вто Сеп 12, 2006 7:21 am ] |
| Заглавие: | |
Емо, след __config _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC сложи това: errorlevel -302 ; suppress message 302 from list file и няма да имаш повече проблеми с въпросното съообщение, но гледай наистина да си в правилната банка. Гледай да осмислиш всеки пример, който правиш и се настройвай към нещо по-сериозно, пък макар и PIC. |
|
| Автор: | didofen [ Вто Сеп 12, 2006 8:15 am ] |
| Заглавие: | hardware |
Аз лично не виждам проблем в програмата. Затова остава само хардуера. +5В на Вцц и МКЛР, маса на Всс, и кварца с кондензаторите към маса. Тъй като си забранил вътрешните резистори на ПортБ, пробвай да свържеш светодиода през 220 Ом към +5В (със съответната посока). Не знам и на каква честота ти е кварца, чака6 ли достатъчно? Да не би това закъснение дето си го задал в Салл уейт да е голямо? Дано да ти тръгне тази малка програмка, голям кеф е да ти тръгне първата програма. Защото има опасност да загубиш интерес към контролерите въобще. Питай при проблеми. |
|
| Автор: | bobyk [ Вто Сеп 12, 2006 9:04 am ] | |||
| Заглавие: | ||||
Абе пич всичко си работи ок (компилирах ти сорса (даже без да се зачитам в него че нямам време да се занимавам), пуснах една симулациика в протеуса, мига RB0 - около 2 херца при кварц на 4 MHz). Taka че си оправи хардуера, ама на твое място ще се радвам дори само симулацията да върви, сигурно не си написал чипа нещо.
|
||||
| Автор: | bobyk [ Вто Сеп 12, 2006 9:05 am ] | ||
| Заглавие: | |||
ето
|
|||
| Автор: | bobyk [ Вто Сеп 12, 2006 9:08 am ] |
| Заглавие: | |
e не съм видял последния ти пост, ама нищо:oops: |
|
| Страница 1 от 1 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|