| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| PIC16F84A включване с обърнат поляритет http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=12585 |
Страница 1 от 7 |
| Автор: | X0rrify [ Сря Яну 01, 2014 10:24 pm ] |
| Заглавие: | PIC16F84A включване с обърнат поляритет |
Здравейте, знаете ли дали този контролен има вградена защита от обръщане на поляритета. По погрешка включих PIC16F84A +5V на Vss, а GND на Vdd. След което успях многократно да го програмирам, да го прочитам и да трия флаш паметта, но така и не може да сет-не RA и RB портовете във високо ниво. Когато го захраня и измеря с мултитестер портовете, напрежението между тях и GND е около 0.7V. Възможно ли е да е повреден, но не напълно? Записвам проста програма колкото да тествам, това е кода: list p=16F84A #include <p16F84a.inc> ; processor specific variable definitions __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC w_temp EQU 0x0C ; variable used for context saving status_temp EQU 0x0D ; variable used for context saving goto start Interrupt: movwf w_temp ; save off current W register contents movf STATUS,w ; move status register into W register movwf status_temp ; save off contents of STATUS register movf status_temp,w ; retrieve copy of STATUS register movwf STATUS ; restore pre-isr STATUS register contents swapf w_temp,f swapf w_temp,w ; restore pre-isr W register contents retfie ; return from interrupt start: clrf PORTA movlw 0x00 movwf TRISA bsf PORTA,1 bsf PORTA,2 bsf PORTA,3 clrf PORTB movlw 0x00 movwf TRISB bsf PORTB,0 bsf PORTB,1 bsf PORTB,2 bsf PORTB,3 bsf PORTB,4 bsf PORTB,5 bsf PORTB,6 bsf PORTB,7 goto $ END |
|
| Автор: | CarBeta [ Чет Яну 02, 2014 10:49 am ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
С обръщане на захранването няма да убиеш пик, поне аз не съм успял. Проблема ти е в "простата програма", в която всички портове са входове. Трябва малко да я усложниш. От време на време сменяй банките, поне от кумова срама. TRIS регистрите са в банка 1. Началото на програмата е на адрес 0х000, в твоя случай по случайност съвпада. Прекъсванията са на адрес 0х004, а не къде си написал "interrupt:" |
|
| Автор: | Wise [ Чет Яну 02, 2014 10:50 am ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
TRIS и PORT са в различни банки! //CarBeta ме е изпреварил |
|
| Автор: | X0rrify [ Чет Яну 02, 2014 12:58 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Ок, това е така, защото сега започвам да уча асемблер. Харесва ми иронията, с която пишеш, но вместо това можеше да редактираш кода. А за interrupt: не съм го писал аз, а го взех от темплейт за PIC16F84A от MPLAB, което значи че би трябвало да е ок. Но както и да е, разбрах как да сменям банките. |
|
| Автор: | CarBeta [ Чет Яну 02, 2014 1:47 pm ] | |||||||||
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет | |||||||||
Оказва се, че проблема ти не е в банките а между ушите:
С bsf STATUS, RP0 - избираш банка 1 С bcf STATUS, RP0 - избираш банка 0 TRIS регистрите са в банка 1, PORT регистрите са в банка 0 Повече не мога да ти помогна. След като си сътворил някакъв код ще намериш начин да набуташ в него и тия два реда. interrupt: е етикет, който сам по себе си не означава абсолютно нищо за компилатора, и може да се плесне навсякъде в програмата. Ако искаш обаче с него да започва подпрограма за обработка на прекъсвания трябва да е на точно определен адрес - ORG 0x004. |
||||||||||
| Автор: | X0rrify [ Чет Яну 02, 2014 1:56 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Направих грешка, че питах в тоя форум, по-добре да пиша в чужди форуми, там хората не са такива надути селяндури, които използват селски лафчета от рода "кумова срама". Както казах сам разбрах как да сменям банките, няма нужда да се потиш, вече е късно. Явно си много велик... комплексар... |
|
| Автор: | stoyanoff [ Чет Яну 02, 2014 2:00 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Мога ли да попитам защо за Бога през 21 век 2014 година се занимавате с Асемблер, особено при положение, че няма да се прави някакъв критичен процес?! Човек изтегли си C18, CCS, MicroC или там каквото си харесаш! За сега няма нужда да си блъскаш главата с Асемблер! Поздрави! |
|
| Автор: | X0rrify [ Чет Яну 02, 2014 2:03 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Знам за MicroC, наясно съм с нещата, които каза, но просто искам да науча асемблер. Искам да знам как нещата стават на ниско ниво. |
|
| Автор: | palavrov [ Чет Яну 02, 2014 3:06 pm ] | |||||||||
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет | |||||||||
Ами прав ти път, поне ще попрактикуваш английския, тук със "надути селяндури" и "комплексар"-и като нас няма какво да си губиш безценното време, о велики програмисте с жълто по устата и гащите ... |
||||||||||
| Автор: | X0rrify [ Чет Яну 02, 2014 3:16 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Явно и ти се възприемаш за селяндур, не съм казал, че съм велик, сега започвам и исках съвет, но такива комплексарчета като вас искате да покажете колко много знаете, а не да помогнете, има много да учите докато стигнете чужденците, ако въобще празната ти глава знае английски разгледай разни чужди форуми и виж хората как се отнасят дори с хора, които питат за елементарни неща. Бай Ганъовци, където и да отидете все си оставате същите. |
|
| Автор: | michev [ Чет Яну 02, 2014 3:27 pm ] | |||||||||
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет | |||||||||
Ъхъ Не разбирам от какво се оплакваш? Кое тук отключи твоята агресия? Не ти дадоха решение на проблема ли? Или може би трябваше да ти напишат цялата програма без да си мръднеш сивото в-во (ако го има де)? Ти ако от една "кумова срама" "откачаш", как ще оцелееш в тоя живот бре младеж? ПП - Няма нужда да отговаряш.. така или инъче темата ще отиде в /dev/null |
||||||||||
| Автор: | X0rrify [ Чет Яну 02, 2014 3:37 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Амй да, не съм баннат точно щото е бай-ганъовски махленски форум и трябва да се говори просташки и селски. Явно и ти си още едно селянче, което се е засегнало и със сищия манталитет и ти е трудно да разбереш, мръдни си ти сивото вещество малко. Ти не се притеснявай, оцелявам отлично в условия, в които тлъстия ти задник няма да оцелее. Просто като форум за електроника очаквах по-интелигентни хора и без селски лафчета и ирония, обаче не са ми оправдани очакванията... Ако не довиждаш съм си написал програмата, липсват й няколко реда просто. |
|
| Автор: | palavrov [ Чет Яну 02, 2014 4:14 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Ей, изчаткал народ ... преди време един подобен индивид беше дошъл при мен на работа - познавахме се от университета, зарадвах му се - на 3-тия ден не дойде на работа ... и се започна едно псуване и обиждане как съм искал да му проваля живота (?!) ... тук ми намирисва на същата диагноза. Жалка работа, не си струва дори да се забавлява човек с такива ... няма чувство за хумор, няма респект ... но очакванията големи, всички са му длъжни с нещо. Колко има да го блъска живота не ми се мисли ... и всички ще карат в насрещното ... |
|
| Автор: | Цецо [ Чет Яну 02, 2014 4:58 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Що му се връзвате? Човека бори акнето... Макар, че първия му пост ме накара да се замисля... процесор със защита от обратно свързване... яко. |
|
| Автор: | ike [ Чет Яну 02, 2014 5:02 pm ] |
| Заглавие: | Re: PIC16F84A включване с обърнат поляритет |
Няма ли някой добър администратор, да премести темата в кощето? |
|
| Страница 1 от 7 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|