Behöver hjälp med min kod!

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

Behöver hjälp med min kod!

Inlägg av Crille93 »

Nu har jag skaffat mig en moppe och blinkersen fungerade inte som den skulle så jag tänkte istället göra en egen blinkers med lysdioder och en picprocessor. Men sedan så tänkte jag ha lite mer lyse också (som blinkar under moppen osv.).
Men vad jag har förstått så kommer blinkersen ta 4kanaler, 2kanaler till strömbrytare till blinkersen och sedan själva blinkersen.

Så då har jag 14kanaler kvar och 1kanal ska gå till en tryckströmbrytare och resten av kanalerna ska vara lysdioder.
Och jag tänkte att man skulle göra så att varje gång man trycker till på tryckströmbrytaren så hoppar picen till nästa kod jag har gjort.

Ett exempel hur jag vill att det ska se ut:

Kod: Markera allt

________*Blinkers*________
"Om kanal 1 får ström"
Kanal 2 blinkar
"Om kanal 1 inte får ström"
Kanal 2 slocknar

"Om kanal 3 får ström"
Kanal 4 blinkar
"Om kanal 3 inte får ström"
Kanal 4 slocknar

________*Lyset*__________
"Om kanal 5 får strömsignal" (ej konstant ström eftersom man bara klickar till på tryckströmbrytaren)
kanal 6-18 blinkar (alla lampor blinkar utom blinkersen)

"Om kanal 5 får strömsignal" (ej konstant ström eftersom man bara klickar till på tryckströmbrytaren)
kanal 2, 4, 6-18 blinkar (alla lampor blinkar inkl. blinkersen)

"Om kanal 5 får strömsignal" (ej konstant ström eftersom man bara klickar till på tryckströmbrytaren)
Alla kanaler slocknar
Kan man göra så? Eller kommer det inte fungera?

Edit: Jag har en PIC16F690
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

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

Inlägg av sodjan »

Tja, fungerar och fungerar... :-)
Du har ju bara beskrivit hur du *vill* att det ska fungera och så
långt är det ju inget problem. Sen gäller det bara att skriva ihop en
liten kod som gör samma sak också, och då kan vi börja diskutera
och det fungerar eller inte... :-)
Inte för att det är något större problem att göra det, tänkt bara
på hur knapparna ska kännas av o.s.v. Några tips :

* Ett antal statusflaggor som håller reda på aktuellt status. D.v.s
- Vilka knappar är tryckta ?
- Vilka lampor (blinkers o.s.v) är tända (eller inte) ?

* En timer-snurra som löper hela tiden för att kolla knappar, räkna ner
"debounce" tiden för knappar och "blinka" med blinkers, uppdatera
status-flaggorna inför nästa varv o.s.v.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

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

Inlägg av v-g »

Bygg på en labbplatta först. Annars kan det säkert fungera, ovanstående är föga match för vilken PIC som helst.
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

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

Inlägg av Crille93 »

Okej! Men nu så behöver jag hälp om någon vet var jag kan hitta en kod som gör så att picen hoppar mellan olika "blinkprogram" varje gång jag trycker till på tryckknappen?
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

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

Inlägg av v-g »

Vaddå? Koden gör du ju själv?
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

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

Inlägg av Crille93 »

v-g skrev:Vaddå? Koden gör du ju själv?
Jomen det är lite svårt att göra en kod när du inte vet vad du gör :roll:
Så jag tänkte om det fanns någon guide till hur man gjorde eller nåt :mrgreen:
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

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

Inlägg av v-g »

Börja med en LED få den att lysa, sätt dit två få dem att blinka. Koppla in en knapp som släcker den ena medan den andra blinkar osv. Bara att lära sig från grunden allt finns i forumet om du söker.

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 »

v-g skrev:Börja med en LED få den att lysa, sätt dit två få dem att blinka. Koppla in en knapp som släcker den ena medan den andra blinkar osv. Bara att lära sig från grunden allt finns i forumet om du söker.

Lycka till!
Jag har lärt mig sånna saker redan men det är just den där biten att du skickar in en signal en kort stund med hjälp av en tryckströmbrytare och det ska säga åt picen att hoppa till nästa program.
Men jag ska söka och se om jag hittar något
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 »

Som jag har skrivit tidigare, LED:ar är väldigt tacksamma att börja labba med. Din variant med olika program och olika möjligheter ger väldigt stora chanser att lära sig olika tekniker att lösa problem. Mycket lämpligt som nybörjarprojekt!

Jag antar att du med "kanaler" menar I/O på mikrokontrollern. Kanaler är väl kanske inte en helt lämplig benämning. Man använder kanaler för att benämna utgångar för t.ex PWM-styrning, men allmänna styrningar av LED:ar och inläsning av knappar brukar bara benämnas ingångar och utgångar, eller kort I/O.
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

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

Inlägg av Crille93 »

vfr skrev:Som jag har skrivit tidigare, LED:ar är väldigt tacksamma att börja labba med. Din variant med olika program och olika möjligheter ger väldigt stora chanser att lära sig olika tekniker att lösa problem. Mycket lämpligt som nybörjarprojekt!

Jag antar att du med "kanaler" menar I/O på mikrokontrollern. Kanaler är väl kanske inte en helt lämplig benämning. Man använder kanaler för att benämna utgångar för t.ex PWM-styrning, men allmänna styrningar av LED:ar och inläsning av knappar brukar bara benämnas ingångar och utgångar, eller kort I/O.
Okej!

Men nu har jag sökt på forumet och jag kan inte hitta någon som har hållt på med picprocessor och tryckknapp så om någon vänlig själ kunde länka till någon sida som har en guide till det och helst att den har fler guider :mrgreen:
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

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

Inlägg av v-g »

Kan du redan det i mitt förra inlägg så fila på koden bara?

Pseudokod:

Kod: Markera allt

Blinksekvens1
blinka så här
om knapp nedtryckt
   gå till Blinksekvens2

Gå till Blinksekvens1

Blinksekvens2
blinka så här
om knapp nedtryckt
   gå till Blinksekvens3

Gå till Blinksekvens2

osv osv osv
till slutet där det står
om knapp nedtryckt
   gå till BlinksekvensX

Gå till Blinksekvens1
edit:
Knapp nedtryckt kan du lösa med många olika tekniker, ett (ganska dåligt men enkelt) sätt är att bara ha en om nedtryckt gå till vänta efter varje ställe man känner av om knappen är nedtryckt. Man kan även lösa detta i interupt (bäst) och säkert på flera andra vis också.
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

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

Inlägg av Crille93 »

Okej! Men hur ser en sån kod ut? "om knapp nedtryckt-> gå till xxxxxxx" :roll:

EDIT:
Tryck inte på citera när du ska svara på ett inlägg, detta är väl upptaget i forumet "regel 1"!
Tagit bort fel citerning. //lgrfbs
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

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

Inlägg av sodjan »

Sluta dubbelposta allt som någon annan redan har skrivit !
Ser du inte hur det skräpar ner i tråden ?
Det är väldigt enkelt, sluta bara att klicka på citera-knappen.
Och sen dessutom bara för att lägga *en* enda rad själv... :roll:

Sen får du nog också se till att göra lite själv. Du har ju redan beskrivit
ganska exakt vad du vill att koden ska göra i första inlägget. Så det är
bara att sätta igång och "hacka kod". Om du sedan kör fast så kan du
gärna ropa på hjälp, men du måste faktiskt försöka först...
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

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

Inlägg av v-g »

I början:

Kod: Markera allt

#DEFINE Button PORTA, 5
Sen någonstans i koden

Kod: Markera allt

   BTFSS Button
      GOTO Again_1

  CALL Delay_A_While

Wait_4_Button_Release
   BTFSC Button
      GOTO Wait_4_Button_Release

Again_2
  osv osv

Men detta är ju ingen raketvetenskap direkt precis som sodjan skriver utan detta fixar du om du trevar på lite.
Crille93
Inlägg: 96
Blev medlem: 2 maj 2009, 19:40:12

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

Inlägg av Crille93 »

Tack! Jag hoppas verkligen att jag får ihop det här nu :D

Men det är alltså såhär:

Kod: Markera allt

**Kod1**
Alla blinkar
   BTFSS Button
      GOTO Kod1

  CALL Delay_A_While

Wait_4_Button_Release1
   BTFSC Button
      GOTO Wait_4_Button_Release1


**Kod2**
Alla blinkar förutom blinkers
   BTFSS Button
      GOTO Kod2

  CALL Delay_A_While

Wait_4_Button_Release2
   BTFSC Button
      GOTO Wait_4_Button_Release2

**Kod3**
osv......
Men då måste man hålla in knappen tills blinkkoden är slut? Eller avbryts koden när jag trycker in strömbrytaren?
Skriv svar