Tegin plaadi PIC16F84A testimiseks. Nägi päris kena välja. Proovisin igasugu asju selle peal, ei töödanud.
Avastasin siis, et olen kõik valesti teinud: olin ajanud Vss(GND) ja Vdd(+5v) sassi. Nii, kraapisin siis MCLR ja Vss jalgade vahelt raja katki ning vahetasin toitel poolused. Testisin - midagi juba toimus (vilguti töötas), kuid lülitiga oli probleeme (lüliti ei tohtinud olla otsapidi +5v küljes).
Kraapisin siis MCLR ja lüliti vahelt raja pooleks ning ühendasin juhtmega GND rajale. Oigasin juba, kuna olin jälle saanud hakkama täieliku plökerdisega.
Olen ühendanud ühe rohelise valgusdioodi RB0, ühe punase RB3 jala külge.
Tekitasin koodi, mis pidi idee pärast RA0 sisendiks, PORTB väljundiks sättima. RA0 alla vajutamise korral RB0 High ja RB3 Low sättima. RA0 lahti laskmise puhul pidi vastupidi tegema(RB0 Low ja RB3 High).
Testisin: muidu nagu töötab, kuid RB0 küljes olev punane LED põleb koguaeg, lüliti pressimisel läheb heledamaks. RB3 küljes olev roheline LED aga töötab täpselt nii, nagu vaja.
Ei tea, kas koodis on viga, mäletan, et proovisin vist ka koodinäidet, mis reageerib nupuvajutusele ning paneb valgusdioodi RB0 jala küljes põlema..
Või on viga skeemis? PCB-d vast ei hakkaks peintis järgi joonistama...
Võibolla olen suutnud kuidagi kiipi valetpidi sisse pannes ja teisi taolisi vigu tehes kiibil RB0 ära lõhkuda?
Igatahes suured tänud...
Avastasin siis, et olen kõik valesti teinud: olin ajanud Vss(GND) ja Vdd(+5v) sassi. Nii, kraapisin siis MCLR ja Vss jalgade vahelt raja katki ning vahetasin toitel poolused. Testisin - midagi juba toimus (vilguti töötas), kuid lülitiga oli probleeme (lüliti ei tohtinud olla otsapidi +5v küljes).
Kraapisin siis MCLR ja lüliti vahelt raja pooleks ning ühendasin juhtmega GND rajale. Oigasin juba, kuna olin jälle saanud hakkama täieliku plökerdisega.
Olen ühendanud ühe rohelise valgusdioodi RB0, ühe punase RB3 jala külge.
Tekitasin koodi, mis pidi idee pärast RA0 sisendiks, PORTB väljundiks sättima. RA0 alla vajutamise korral RB0 High ja RB3 Low sättima. RA0 lahti laskmise puhul pidi vastupidi tegema(RB0 Low ja RB3 High).
Testisin: muidu nagu töötab, kuid RB0 küljes olev punane LED põleb koguaeg, lüliti pressimisel läheb heledamaks. RB3 küljes olev roheline LED aga töötab täpselt nii, nagu vaja.
Kood:
INCLUDE "P16F84.INC" ;look up file for MPASM LIST P=16F84 ERRORLEVEL -302 ;SUPPRESS BANK SELECTION MESSAGES __config _RC_OSC&_PWRTE_ON & _WDT_OFF;RC oscillator, power on timer ;and watchdog timer off status equ h'03' ;status register trisb equ h'86' ;set up register for port B trisa equ h'85' ;set up register for port B count1 equ h'0e' ;general purpose register count2 equ h'0f' ;general purpose register portb equ h'06' porta equ h'05' ;****set up portA and portB**** bsf status,5;switch to bank1 to set up ports movlw h'00' movwf trisb movlw b'00000011' movwf trisa bcf status,5;switch back to bank0 to use ports ;****main program**** start bsf portb,0 bcf portb,3 start2 btfss porta,0 goto start bcf portb,0 bsf portb,3 goto start2 ;do it all over again end;
Või on viga skeemis? PCB-d vast ei hakkaks peintis järgi joonistama...
Võibolla olen suutnud kuidagi kiipi valetpidi sisse pannes ja teisi taolisi vigu tehes kiibil RB0 ära lõhkuda?
Igatahes suured tänud...
Comment