Behöver hjälp med min kod!

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Behöver hjälp med min kod!

Inlägg av vfr »

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!
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Behöver hjälp med min kod!

Inlägg av jesse »

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?
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

Re: Behöver hjälp med min kod!

Inlägg av Crille93 »

Oj! Vilken tur att inget gick sönder :o 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 :roll:
Pajn
Inlägg: 1160
Blev medlem: 6 juni 2008, 19:14:29
Ort: Nyköping
Kontakt:

Re: Behöver hjälp med min kod!

Inlägg av Pajn »

jesse skrev:(EDIT: syftningen är nog på något som fanns inne i Pajn's huvud :wink: )
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.
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.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Behöver hjälp med min kod!

Inlägg av vfr »

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å.
Användarvisningsbild
E85
Inlägg: 1274
Blev medlem: 29 maj 2007, 16:24:19
Ort: Övik

Re: Behöver hjälp med min kod!

Inlägg av E85 »

"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
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Behöver hjälp med min kod!

Inlägg av vfr »

Så här lite snabbt, så låter det ju riktigt användbart!
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

Re: Behöver hjälp med min kod!

Inlägg av Crille93 »

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 :roll:

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 :mrgreen:
Användarvisningsbild
E85
Inlägg: 1274
Blev medlem: 29 maj 2007, 16:24:19
Ort: Övik

Re: Behöver hjälp med min kod!

Inlägg av E85 »

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?
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Behöver hjälp med min kod!

Inlägg av jesse »

Ä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?
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

Re: Behöver hjälp med min kod!

Inlägg av Crille93 »

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:
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
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Behöver hjälp med min kod!

Inlägg av vfr »

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.
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Behöver hjälp med min kod!

Inlägg av jesse »

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!
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

Re: Behöver hjälp med min kod!

Inlägg av Crille93 »

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 :roll:

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 :oops: Snacka om skumt att alla mina har varit 0,6V mer och mindre än rekomenderat (har 5st olika lysdioder) :roll:
Användarvisningsbild
E85
Inlägg: 1274
Blev medlem: 29 maj 2007, 16:24:19
Ort: Övik

Re: Behöver hjälp med min kod!

Inlägg av E85 »

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...
Skriv svar