PIC16F870 hur stänger jag av t1cki t0cki

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

PIC16F870 hur stänger jag av t1cki t0cki

Inlägg av netrunner »

Jag har lite problem med min PIC16F870, 28pin. Skriver i mikroBasic och vill använda RC0 och RA4 som ut-portar.
http://www.robotstore.com/download/246895.pdf


Det går inte och det är troligen för att dom även är t1cki t0cki.

Jag kör TRISC.0 = %0 och TRISA.4 = %0 men det är tydligen någon klock funktion (kanske?) som sätter dom till något annat?

Finns det något register som stänger av detta och i så fall hur ändrar jag det?
Niklas-k
Inlägg: 354
Blev medlem: 10 mars 2004, 15:59:21
Ort: Katrineholm

Inlägg av Niklas-k »

RA4 är enligt datablad "Open-drain when configured as output" och är lite speciell att använda som utgång rakt av.

Och jag progar inte Mikrobasic men skall det inte se så här:
TRISC.0 = 0 eller TRISC = %???????0
Användarvisningsbild
netrunner
Inlägg: 5510
Blev medlem: 4 februari 2005, 12:26:05
Ort: 127.0.0.1

Inlägg av netrunner »

Tack för svaret, jag kör 8 utgångar för att styra lika många fotoblixtar från engångskameror. Alla funkar utom dessa 2. Tyvärr har jag ganska akut brist på pinnar och det är lite sent att byta till en större PIC.

Är det ett problem att den är "Open-drain when configured as output" allt jag behöver är att skicka en TTL - 1:a under några millisekunder.
Användarvisningsbild
Icecap
Inlägg: 26659
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Du kanske skulle kolla lite på vad "open drain" betyder?

OK, snabbt svar här: Det finns ingen transistor som "kastar ut" en '1' på en "open drain"-utgång. Det finns däremot en transistor som släpper '0'an och ska man då ha den att gå '1' måste man montera ett motstånd till att dra till VDD.

Och detta står TYDLIGT i databladet.
Användarvisningsbild
netrunner
Inlägg: 5510
Blev medlem: 4 februari 2005, 12:26:05
Ort: 127.0.0.1

Inlägg av netrunner »

Jaha, är det DET det betyder! Tack!
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

För att svara på din ursprungliga fråga...

Först så måste du kolla att du har stängt av alla analoga funktioner.
Se kodexempel 4-1 på sidan 33 i databladet. Du kanske inte kör assembler,
men du gör bara exakt samma sak i det verktyg du använder.

> Finns det något register som stänger av detta och i så fall hur ändrar jag det?

Se T0CS i OPTION_REG på sidan 46 i databladet. Jag är dock osäker
på om det har någon betydelse...

Jag tror inte heller att Timer1 inställningarna ska spela någon roll,
men sätt dom gärna "rätt" i alla fall, så är du säker.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Förresten, glömde det kanske viktigaste. Från ditt första inlägg :

> Det går inte...

Och vad *exakt* betyder det?
Vad är det som inte går? Och hur vet du det?
Vad ser du för symptom?
Skriv svar