Behöver hjälp med min kod!
Re: Behöver hjälp med min kod!
Jag kopplade in min multimeter där på och vad jag har förstått så gör man ingen kortslutning med multimeter när man gör så
Det beror helt på vad du skall mäta för någonting. Mäter man spänning så kopplar du mätaren parallellt över där du ska mäta. Då kan du inte kortsluta någonting.
Skall du mäta ström så kopplar du mätaren i serie med den ledningen som du vill mäta strömmen i.
Om du däremot sätter mätaren i strömläge, men ansluter parallellt över en spänning (t.ex en utgång), så kortsluter du utgången. I strömläge så är mätaren i princip en kortslutning. Det låter som att du behöver läsa på lite om grunläggande ellära innan du fortsätter med mikrokontroller. Klarar man inte av att koppla in en multimeter rätt för att mäta, så har man tyvärr inte rätt kunskaper.
Det låter hårt, men låt inte det nedslå dig. Kavla upp ärmarna och läs på lite om grundläggande ellära så kommer det att funka mycket bättre. Det har du alltid nytta av!
Det beror helt på vad du skall mäta för någonting. Mäter man spänning så kopplar du mätaren parallellt över där du ska mäta. Då kan du inte kortsluta någonting.
Skall du mäta ström så kopplar du mätaren i serie med den ledningen som du vill mäta strömmen i.
Om du däremot sätter mätaren i strömläge, men ansluter parallellt över en spänning (t.ex en utgång), så kortsluter du utgången. I strömläge så är mätaren i princip en kortslutning. Det låter som att du behöver läsa på lite om grunläggande ellära innan du fortsätter med mikrokontroller. Klarar man inte av att koppla in en multimeter rätt för att mäta, så har man tyvärr inte rätt kunskaper.
Det låter hårt, men låt inte det nedslå dig. Kavla upp ärmarna och läs på lite om grundläggande ellära så kommer det att funka mycket bättre. Det har du alltid nytta av!
Re: Behöver hjälp med min kod!
Gå till biblioteket och låna någon bok om "digitalteknik" och läs den. Är det en vettig bok så brukar de gå igenom det där med nivåer och spänningar mm. i början. Läser du resten sen så fattar du en massa som du sen kommer att ha nytta av om du ska pyssla med mikroprocessorer.
En sådan bok brukar innehålla:
* talsysystem och binär aritmetik.
* logisk algebra
* grindar (och hur de är uppbyggda)
* sen kommer de mer avancerade digitala avsnitten, om vippor, latchar, register, multiplexer, räknare osv.. och mot slutet brukar man även nämna lite om mikroprocessorer.
Det brukar också finnas lite att läsa om "interface" eller "nivåanpassning" osv.. dvs.. hur kopplar man in en digital krets mot t.ex. en lysdiod, ett relä eller en lampa? Eller en ingång till en knapp eller sensor?
Å andra sidan, för att man ska förstå de "elektriska" avsnitten i en bok om digitalteknik så måste man ha grundkunskaper i elektronik. Ohms lag och lite kretsteori (vart tar strömmen vägen i en krets?). Kanske "elektronik för alla, del 1" eller nåt?
En sådan bok brukar innehålla:
* talsysystem och binär aritmetik.
* logisk algebra
* grindar (och hur de är uppbyggda)
* sen kommer de mer avancerade digitala avsnitten, om vippor, latchar, register, multiplexer, räknare osv.. och mot slutet brukar man även nämna lite om mikroprocessorer.
Det brukar också finnas lite att läsa om "interface" eller "nivåanpassning" osv.. dvs.. hur kopplar man in en digital krets mot t.ex. en lysdiod, ett relä eller en lampa? Eller en ingång till en knapp eller sensor?
Å andra sidan, för att man ska förstå de "elektriska" avsnitten i en bok om digitalteknik så måste man ha grundkunskaper i elektronik. Ohms lag och lite kretsteori (vart tar strömmen vägen i en krets?). Kanske "elektronik för alla, del 1" eller nåt?
Re: Behöver hjälp med min kod!
Oj! Vilken tur att inget gick sönder
Första gången man testar en multimeter så går det så illa.... Bäst att läsa på lite hur man ska göra, som tur är så har vi lite elkurser i skolan så det blir att sno dom böckerna och läsa igenom 


Re: Behöver hjälp med min kod!
Vfr ville ha en simullator som klarade att emulera lite olika extern hårdvara och du beskrev en för avr. Pic simulator IDE klarar iprencip samma sak men är för pic istället.jesse skrev:(EDIT: syftningen är nog på något som fanns inne i Pajn's huvud)
Det blev väldigt otydligt märker jag nu när jag läser det igen, undra om jag bara skrev slutet eller vad som hände? aja.
Re: Behöver hjälp med min kod!
Då hänger jag med bättre. Kanske läge att kolla närmare på vid tillfälle. Hade den även möjlighet att skriva moduler för egen extern hårdvara? Annars blir det ju lite halvhjärtat ändå.
Re: Behöver hjälp med min kod!
"PIC Simulator IDE is an automation (ActiveX) server/client application. This feature enables communication with external simulation modules that can be developed by home developers and third parties using various Development Systems for Windows."
http://www.oshonsoft.com/picexternalmodules.html
http://www.oshonsoft.com/picexternalmodules.html
Re: Behöver hjälp med min kod!
Nu har jag testat med en annan strömkälla och sedan tog en lysdiod med en resistor och testade en I/O i taget. Den lös svagt på dom flesta men sedan så lös den så starkt som den ska lysa på några. Kan kolla upp vilka om det har någon betydelse
Jag använde mig av ett 3V batteri och jag kopplade "+" på Vdd och sedan jord på Vss.
Och med lysdioden så satte jag katod på jord sen anod satte jag en resistor på som sedan kopplades till pinnarna på PIC processorn.
På mitt experimentkort så har jag 4st lysdioder som redan är inkopplade på RC0-3 så jag hade alltså 5st lysdioder som var tända hela tiden

Jag använde mig av ett 3V batteri och jag kopplade "+" på Vdd och sedan jord på Vss.
Och med lysdioden så satte jag katod på jord sen anod satte jag en resistor på som sedan kopplades till pinnarna på PIC processorn.
På mitt experimentkort så har jag 4st lysdioder som redan är inkopplade på RC0-3 så jag hade alltså 5st lysdioder som var tända hela tiden

Re: Behöver hjälp med min kod!
Jag tycker det låter väldigt märkligt att den lyser olika starkt. Vad är det för värde på motståndet och färg på lysdioden? Har du räknat nåt på motståndet? Det finns en formel (ohms lag U=R*I) som lyder att resistansen i motståndet, R = (Matningsspänningen - Diodspänningsfallet) / Strömmen. Om vi säger att det är en röd lysdiod så brukar dom ligga kring 2V och vilja ha 20mA (0.02A) så i det här fallet blir alltså:
R = (3 - 2) / 0.02 = 50 ohm.
Här finns en sida som förklarar lite bättre, http://www.kpsec.freeuk.com/components/led.htm
Det finns ingen möjlighet att du kan ta en bild på din setup?
R = (3 - 2) / 0.02 = 50 ohm.
Här finns en sida som förklarar lite bättre, http://www.kpsec.freeuk.com/components/led.htm
Det finns ingen möjlighet att du kan ta en bild på din setup?
Re: Behöver hjälp med min kod!
Är det inte bara så att vissa pinnar är konfigurerade som ingångar med aktiverade pull-up som gör att lysdioderna lyser lite? Och de som lyser ordentligt är utgångar?
Re: Behöver hjälp med min kod!
Jag tog 10ohms resistor (det minsta jag hittade) till en 3,2V grön lysdiod till ett 3V batteri. Men det ska väl inte ha någon betydelse eftersom jag använde samma resistor och samma lysdiod på alla pinnar?
> Det finns ingen möjlighet att du kan ta en bild på din setup?
Visst, här har du en bild:

Jag har kopplat såhär på bilden:
I/O RA5->sladd->resistor->lysdiod->jord
Så flyttar jag sedan sladden till nästa pinne, sen nästa pinne osv.
jesse: Jag tror inte det då jag har skrivit likadan kod för att sätta dom till utgångar och sedan gjort dom hög.
Här är koden:
> Det finns ingen möjlighet att du kan ta en bild på din setup?
Visst, här har du en bild:

Jag har kopplat såhär på bilden:
I/O RA5->sladd->resistor->lysdiod->jord
Så flyttar jag sedan sladden till nästa pinne, sen nästa pinne osv.
jesse: Jag tror inte det då jag har skrivit likadan kod för att sätta dom till utgångar och sedan gjort dom hög.
Här är koden:
Kod: Markera allt
#include <p16F690.inc>
__config (_INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOR_OFF & _IESO_OFF & _FCMEN_OFF)
cblock 0x20
Delay1 ; Define two file registers for the
Delay2 ; delay loop
endc
org 0
Start:
bsf STATUS,RP0 ; select Register Page 1
clrf TRISC ; make IO Pin C0 an output
clrf TRISB
clrf TRISA
bcf STATUS,RP0 ; back to Register Page 0
;START__________________________________________________
Beginning:
;LED1___________________________________________________
LED1
;RA_____________________________________________________
bsf PORTA,0
bsf PORTA,1
bsf PORTA,2
bsf PORTA,4
bsf PORTA,5
;RB_____________________________________________________
bsf PORTB,4
bsf PORTB,5
bsf PORTB,6
bsf PORTB,7
;RC_____________________________________________________
bsf PORTC,0
bsf PORTC,1
bsf PORTC,2
bsf PORTC,3
bsf PORTC,4
bsf PORTC,5
bsf PORTC,6
bsf PORTC,7
;LED2___________________________________________________
goto Beginning
end
Re: Behöver hjälp med min kod!
Har du någon som helst aning om hur man kopplar in en lysdiod?
Utan att vara taskig, så låter det inte så. En lysdiod är strömstyrd, inte spänningsstyrd. Att den är märkt 3.2V betyder att den har framspänningsfallet 3.2V. Inte att du ska driva den med 3.2V. Man matar den med högre spänning, sedan beräknar du motståndet efter strömmen du vill ha. 10 ohm är alldels för lågohmigt. Med matningsspänning nästan lika med framspänningsfallet så blir strömmen väldigt osäker.
Läs på lite om lysdioddrivning. Det finns massor. Både här och på nätet.
Utan att vara taskig, så låter det inte så. En lysdiod är strömstyrd, inte spänningsstyrd. Att den är märkt 3.2V betyder att den har framspänningsfallet 3.2V. Inte att du ska driva den med 3.2V. Man matar den med högre spänning, sedan beräknar du motståndet efter strömmen du vill ha. 10 ohm är alldels för lågohmigt. Med matningsspänning nästan lika med framspänningsfallet så blir strömmen väldigt osäker.
Läs på lite om lysdioddrivning. Det finns massor. Både här och på nätet.
Re: Behöver hjälp med min kod!
Japp. det är som vfr säger - en lysdiod på 3.2 volt måste matas med mer än 3.2 volt och ett motstånd som begränsar strömmen. Är spänningen under 3.2 volt så lyser den knappast alls. Om du bara hade 3 volt så borde den inte lysa alls.
Försök att skaffa en lysdiod på t.ex 2.0 volt. Då får du spänningen över motståndet 3-2 = 1 volt. Nu ska motståndet beräknas. Lysdioden tål max 20 mA, men går bra på t.ex 10 mA, så vi vill ha ca 10 mA.
R = U / I
U = 1 volt
I = 0.010 A
R = 1 / 0.010 = 100 ohm.
(om du skulle använda 10 ohm och en 2V diod här skulle strömmen bli 100 mA. Lysdioden skulle lysa väldigt starkt ett tag (plus att PIC:en inte heller tål att man försöker dra 100mA ur den) tills antingen PIC-en eller lysdioden går sönder. Därför är det noga med värdet på motståndet och spänningarna!)
Ett alternativ är att du använder 5 volts matningsspänning - om din modul tål det. (Och då är det noga - det ska vara exakt 5 volt... eller max 5.5 volt... annars kan processorn brinna).... Om du kan använda 5 volts matning så kan du använda din 3.2 volts lysdiod:
spänningen över dioden är 3.2 volt
matningsspänningen är 5.0 volt
spänningen över motståndet blir då 5V - 3.2V = 1.8 volt
Du vill fortfarande driva lysdioden med 10 mA
R = U / I
R = 1.8 / 0.010
R = 180 ohm.
Lycka till!
Försök att skaffa en lysdiod på t.ex 2.0 volt. Då får du spänningen över motståndet 3-2 = 1 volt. Nu ska motståndet beräknas. Lysdioden tål max 20 mA, men går bra på t.ex 10 mA, så vi vill ha ca 10 mA.
R = U / I
U = 1 volt
I = 0.010 A
R = 1 / 0.010 = 100 ohm.
(om du skulle använda 10 ohm och en 2V diod här skulle strömmen bli 100 mA. Lysdioden skulle lysa väldigt starkt ett tag (plus att PIC:en inte heller tål att man försöker dra 100mA ur den) tills antingen PIC-en eller lysdioden går sönder. Därför är det noga med värdet på motståndet och spänningarna!)
Ett alternativ är att du använder 5 volts matningsspänning - om din modul tål det. (Och då är det noga - det ska vara exakt 5 volt... eller max 5.5 volt... annars kan processorn brinna).... Om du kan använda 5 volts matning så kan du använda din 3.2 volts lysdiod:
spänningen över dioden är 3.2 volt
matningsspänningen är 5.0 volt
spänningen över motståndet blir då 5V - 3.2V = 1.8 volt
Du vill fortfarande driva lysdioden med 10 mA
R = U / I
R = 1.8 / 0.010
R = 180 ohm.
Lycka till!
Re: Behöver hjälp med min kod!
Men jag förstår fortfarande inte vad det har med att lysdioden lyser svagare på vissa?
Jag hade förstått om lysdioden inte lös någonting alls vilken pinne jag än stoppade den på. Men nu så lyser den bra på några och så lyser den svagare på resten.
Kan ni förklara för mig varför det spelar någon roll vad jag använder för resistor till lysdioden nu?
Sedan så vet jag hur man gör med en lysdiod för 3,2V var vad som var rekomenderat (trodde man alltid skrev endast den rekomenderade), sedan så har den max 3,8V och minst 2,6V
Edit: kollade upp andra lysdioder och det var visst inte likadant på alla visst, trodde det alltid var 0,6V mer och mindre än rekomenderat
Snacka om skumt att alla mina har varit 0,6V mer och mindre än rekomenderat (har 5st olika lysdioder) 
Jag hade förstått om lysdioden inte lös någonting alls vilken pinne jag än stoppade den på. Men nu så lyser den bra på några och så lyser den svagare på resten.
Kan ni förklara för mig varför det spelar någon roll vad jag använder för resistor till lysdioden nu?
Sedan så vet jag hur man gör med en lysdiod för 3,2V var vad som var rekomenderat (trodde man alltid skrev endast den rekomenderade), sedan så har den max 3,8V och minst 2,6V

Edit: kollade upp andra lysdioder och det var visst inte likadant på alla visst, trodde det alltid var 0,6V mer och mindre än rekomenderat


Re: Behöver hjälp med min kod!
Det handlar inte om rekommenderat. Det är helt enkelt hur mycket spänning som ligger över lysdioden när den lyser. Resten av spänningen tas upp av motståndet. Läs ovanstående inlägg...