[mikrobasic] BLINK-A-LED, problem med PORTB, GPIO och TRISIO

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
netrunner
Inlägg: 5510
Blev medlem: 4 februari 2005, 12:26:05
Ort: 127.0.0.1

[mikrobasic] BLINK-A-LED, problem med PORTB, GPIO och TRISIO

Inlägg av netrunner »

Jag sitter och bygger på min nya RGB-lampa. Kör med 12F675 och PWM funkar riktigt bra.

En sak fattar jag dock inte. I alla andra program jag pulat med så använder man "PORTB" för benen men har GPIO.

Från mitt testprogram:

Kod: Markera allt

 
TRISIO = %000
GPIO = %000
delay_ms(500)
GPIO = %111
delay_ms(500)
En extra funkation är att lampan ska veta om det är ljust i rumet eller inte. Om det är mörkt (troligen natt) så ska lampan glida över till svagt rött i nästa växling och stanna där tills det blir ljust i rumet.
Man ska kunna tassa iväg till toan i halen på natten utan att sabba mörkersendet och utan att snubbla på alla skor som står där. :evil:

LDR och lite mer saker funkar bra föratt ge logisk etta vid lagom lite ljus. Men tyvärr så kan jag inte läsa av status på pinnarna jag provar på. Alla exempel pratar om PORTB (som jag inte har) och även om man byter det till GPIO så funkar det inte...

Vad gör jag för fel? Hur läser jag av pinna på ett bra sätt?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Alla 8-pinnare har bara ett "port-register" och det heter just GPIO.

Dina övriga frågor går inte att svara på eftersom du inte
tycker att vi behöver veta hur du har gjort...
Användarvisningsbild
netrunner
Inlägg: 5510
Blev medlem: 4 februari 2005, 12:26:05
Ort: 127.0.0.1

Inlägg av netrunner »

Hmm... jag missade visst det, sorry... :oops:


Jag har en strömbrytare (GND/5V) (som jag senare ska byta mot min LDR-koppling) på pinne 4.

Har försökt med olika kombinationer av:

Kod: Markera allt

TRISIO = %000111
if GPIO.4 = %1 then
Här finns det lite olika sätta att räkna på och jag har testat alla jag tror är vettiga. Är det rätt sätt att köra överhuvudtaget med "if GPIO.4 = %1 then"?

Har utan framgång även testat med:

Kod: Markera allt

"sub function Button(dim byref port as byte, dim pin, time, active_state as byte) as byte"
Hur gör ni?
Användarvisningsbild
lgrfbs
Inlägg: 7320
Blev medlem: 28 januari 2005, 15:48:53
Ort: X-län
Kontakt:

Inlägg av lgrfbs »

Kan du inte använda A/D funktionen till att läsa av din LDR-koppling?
Sen kan du styra i programmet hur utgången ska bete sig.

Typ:
Läs LDR via A/D.
kollar om A/D värdet om det är morgon/kväll eller Natt/Dag värden
Styr utgångarna efter A/D värdet.
loopa åter till första program raden.
Användarvisningsbild
netrunner
Inlägg: 5510
Blev medlem: 4 februari 2005, 12:26:05
Ort: 127.0.0.1

Inlägg av netrunner »

BAAA!!!! LALA, TJOHOOO DING-DONG-DING-DONG!!! ¤%&@£ ****** **** ****

man kan tydligen inte använda pin 3 som input. :evil: :evil: :evil:

Nu har jag pin 2 och båda teknikerna funkar.

lgrfbs: Ja, det låter bra. Har inte lärt mig hur man gör för att fånga A/D värden. Programet PWM:ar alla tre färger hela tiden så att man i mjukvara ska kunna kompensera för om en av lysdioderna är starkare än dom andra. Bör även kunna användas till att steglöst reglera ljusstyrka efter hur ljust det är i rumet. Det är steg2 helt klart.

Nu ska jag gå och vårda min psykiska hällsa lite! :x
Användarvisningsbild
lgrfbs
Inlägg: 7320
Blev medlem: 28 januari 2005, 15:48:53
Ort: X-län
Kontakt:

Inlägg av lgrfbs »

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

Inlägg av sodjan »

> man kan tydligen inte använda pin 3 som input.

Menar du GP4 ? Och i så fall, varför inte ??
Hade du den satt som analog pinne ?
Användarvisningsbild
netrunner
Inlägg: 5510
Blev medlem: 4 februari 2005, 12:26:05
Ort: 127.0.0.1

Inlägg av netrunner »

Inte den blekaste. Desperat som man var så testar man att göra exakt samma sak men med en annan pinne, så "vipps" så funkar allt. Allt jag testar funkar på pinne 2 men inte på pinne 3. Har inte kommit så långt som till A/D än.

Lampan är klar och funkar utmärkt i alla fall...
Användarvisningsbild
Marta
EF Sponsor
Inlägg: 7487
Blev medlem: 30 mars 2005, 01:19:59
Ort: Landskrona
Kontakt:

Inlägg av Marta »

Har Du config-wordet rätt? Pinnen kan ha funktioner som måste väljas bort där för att den skall fungera som vanlig I/O.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Antingen gör du fel eller så är det fel på kretsen.
Om det inte spelar någon roll för dig så gör det
det inte för mig heller...

> Har inte kommit så långt som till A/D än...

Förrutom att du har stängt av den, eller hur ?
Skriv svar