Микроконтролери и електроника
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 включване с обърнат поляритет

Оказва се, че проблема ти не е в банките а между ушите:
X0rrify написа:
...може да редактираш кода и да видя разликите или пък ще си намеря примерен.

С 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 написа:
Направих грешка, че питах в тоя форум, по-добре да пиша в чужди форуми, там хората не са такива надути селяндури, които използват селски лафчета от рода "кумова срама". Както казах сам разбрах как да сменям банките, няма нужда да се потиш, вече е късно. Явно си много велик... комплексар...

Ами прав ти път, поне ще попрактикуваш английския, тук със "надути селяндури" и "комплексар"-и като нас няма какво да си губиш безценното време, о велики програмисте с жълто по устата и гащите ...

Автор:  X0rrify [ Чет Яну 02, 2014 3:16 pm ]
Заглавие:  Re: PIC16F84A включване с обърнат поляритет

Явно и ти се възприемаш за селяндур, не съм казал, че съм велик, сега започвам и исках съвет, но такива комплексарчета като вас искате да покажете колко много знаете, а не да помогнете, има много да учите докато стигнете чужденците, ако въобще празната ти глава знае английски разгледай разни чужди форуми и виж хората как се отнасят дори с хора, които питат за елементарни неща. Бай Ганъовци, където и да отидете все си оставате същите.

Автор:  michev [ Чет Яну 02, 2014 3:27 pm ]
Заглавие:  Re: PIC16F84A включване с обърнат поляритет

X0rrify написа:
... разгледай разни чужди форуми и виж хората как се отнасят дори с хора, които питат за елементарни неща.

Ъхъ :) Още на "селяндури" щеше да бъдеш изтрит и баннат завинаги.
Не разбирам от какво се оплакваш? Кое тук отключи твоята агресия? Не ти дадоха решение на проблема ли? Или може би трябваше да ти напишат цялата програма без да си мръднеш сивото в-во (ако го има де)?
Ти ако от една "кумова срама" "откачаш", как ще оцелееш в тоя живот бре младеж?

ПП - Няма нужда да отговаряш.. така или инъче темата ще отиде в /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/