Fler portar på PIC
Re: Fler portar på PIC
Om man har ett helt vanligt skiftregister behöver man bara 2 pinnar. Det är en ful lösning men det fungerar.
Om vi antar att det rör sig om en PIC kommer den att kunde skifta ut bits med ung. 8 CPU-cyklar per bit.
Vid 8 MHz kristall och 8 bit tar en full uppdatering alltså ung. 32 µs.
Uppstartsdelen är viktig och där måste man se till att t.ex. inte använda externt kristall, ska man ha något externt kan man ha en resonator. Orsaken är att kristallen tar längre tid på sig att starta. Man ska även välja bort all startfördröjning. Om man samtidig säkra sig att vilken kombination som helst inte kan elda upp något kan man känna sig mindre osäker.
Om vi antar att det rör sig om en PIC kommer den att kunde skifta ut bits med ung. 8 CPU-cyklar per bit.
Vid 8 MHz kristall och 8 bit tar en full uppdatering alltså ung. 32 µs.
Uppstartsdelen är viktig och där måste man se till att t.ex. inte använda externt kristall, ska man ha något externt kan man ha en resonator. Orsaken är att kristallen tar längre tid på sig att starta. Man ska även välja bort all startfördröjning. Om man samtidig säkra sig att vilken kombination som helst inte kan elda upp något kan man känna sig mindre osäker.
Re: Fler portar på PIC
Vissa varianter av latch/shift har även en OE "Output Enable" pinne.
Den kan användas för att se till att utgångarna inte "driver" förrens
de har kända och kontrollerade nivåer. Den ger normalt pinnarna ett
high-Z läge och extern pullup/down ger ett känt startläge.
Även OE pinnen behöver dock ett externt pull up/down så att den
inte aktiveras innan processorn har startat...
Den kan användas för att se till att utgångarna inte "driver" förrens
de har kända och kontrollerade nivåer. Den ger normalt pinnarna ett
high-Z läge och extern pullup/down ger ett känt startläge.
Även OE pinnen behöver dock ett externt pull up/down så att den
inte aktiveras innan processorn har startat...

Re: Fler portar på PIC
Definitivt den mindre osäkra lösningen men mycket hänger ju på vilket säkerhetsnivå kontra bekvämlighetsnivå som efterfrågas.
- SeniorLemuren
- Inlägg: 8424
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Fler portar på PIC
Den är redan utdragen till skiftregistret. (enligt mitt första inlägg).Swech skrev:javisst men då försvinner ju en pinne till på PIC
Swech
Re: Fler portar på PIC
Hur tänker du nu?!?SeniorLemuren skrev:Då slipper jag latchen men åker på en pinne mer från PIC för att styra den inbyggda latchen så nettot blir väl det samma? (4 pinnar till 8 reläer eller 3 pinnar till 7 reläer.)
Klocka, data, latch. 3 pinnar.
(Sedan kan du sätta 100st efter varandra och fortfarande går det bara åt 3st pinnar.)
Re: Fler portar på PIC
Det låter lite som att Lemuren har tittat på en "adressable latch" där man har
adresspinnar istället för data/clock pinnar. De har väl sina fördelar (snabbare
att ändra en pinne utan att samtidigt mata ut alla andra), men de är å andra
sidan inte möjliga att seriekoppla för att utöka antalet I/O.
adresspinnar istället för data/clock pinnar. De har väl sina fördelar (snabbare
att ändra en pinne utan att samtidigt mata ut alla andra), men de är å andra
sidan inte möjliga att seriekoppla för att utöka antalet I/O.
Re: Fler portar på PIC
Kanske kan man koppla en liten kondensator mellan jord och "reset" på en I/O utökare? då borde man få ett känt utgångsläge.
Man kan ju också använda en billig MCU som I/O utökare
Man kan ju också använda en billig MCU som I/O utökare

Re: Fler portar på PIC
Varför bara inte klocka ut ett känt tillstånd så fort man vaknat?
Det går rätt fort.
Det går rätt fort.
- Swech
- EF Sponsor
- Inlägg: 4750
- Blev medlem: 6 november 2006, 21:43:35
- Ort: Munkedal, Sverige (Sweden)
- Kontakt:
Re: Fler portar på PIC
ja men om du inte vaknar.... om reset på processorn är aktiv t.ex.
Swech
Swech
Re: Fler portar på PIC
> Det går rätt fort.
Det kan också gå fel rätt fort.
Man kan självklart (om det faktiskt är kritiskt) förlita sig
på att det "bör fungera" eller något liknande.
Det kan också gå fel rätt fort.
Man kan självklart (om det faktiskt är kritiskt) förlita sig
på att det "bör fungera" eller något liknande.
Re: Fler portar på PIC
Jag visste inte att det skulle vara failsafe, att det kan hända något farligt om något går fel.
Om det behöver vara failsafe, löser en resetkonding inte heller problemet och gör varken från eller till.
Normalt vill man skydda sig mot ett singelfel.
Ett huvudrelä som bryter alla kanalreläerna, vi antar att det är säkert att bryta reläerna.
Drivsteg på båda sidorna om alla reläer, med avkänning om signalen ligger hög/låg eller mittemellan.
2x100k eller dyl som balanserar insignalen till reläerna mittemellan, avläses hela tiden med AD.
När man drar relät måste båda sidorna dras, eftersom en brunnen fet eller styrning inte får bli farligt.
I serie med mosfetgatearna som drar reläerna sitter det en seriekondensator som skyddar mot I/O som fastnat, och vidare till en diod som likriktar gatespänningen.
För att dra ett relä skickar man alltså ut ett pulståg konstant.
I alla de olika stegen läser man hela tiden av om något skiljer sig mot hur det borde vara och kontrollerar matningsspänningen. Om något är dåligt så bryter man huvudreläet.
Ganska enkelt, men det blir mycket jobbigare om man skall klara ett dubbelfel.
Om det behöver vara failsafe, löser en resetkonding inte heller problemet och gör varken från eller till.
Normalt vill man skydda sig mot ett singelfel.
Ett huvudrelä som bryter alla kanalreläerna, vi antar att det är säkert att bryta reläerna.
Drivsteg på båda sidorna om alla reläer, med avkänning om signalen ligger hög/låg eller mittemellan.
2x100k eller dyl som balanserar insignalen till reläerna mittemellan, avläses hela tiden med AD.
När man drar relät måste båda sidorna dras, eftersom en brunnen fet eller styrning inte får bli farligt.
I serie med mosfetgatearna som drar reläerna sitter det en seriekondensator som skyddar mot I/O som fastnat, och vidare till en diod som likriktar gatespänningen.
För att dra ett relä skickar man alltså ut ett pulståg konstant.
I alla de olika stegen läser man hela tiden av om något skiljer sig mot hur det borde vara och kontrollerar matningsspänningen. Om något är dåligt så bryter man huvudreläet.
Ganska enkelt, men det blir mycket jobbigare om man skall klara ett dubbelfel.
Re: Fler portar på PIC
Osäker vad du mena med in data
Men om du försöker läsa massa pinnar seriellt så är 4021 att rekommendera, den shiftar in resultatet på alla parallela ingångar till seriella porten vid varje clockpuls och går även att hänga på flera i rad för fler pinnar.
Men om du försöker läsa massa pinnar seriellt så är 4021 att rekommendera, den shiftar in resultatet på alla parallela ingångar till seriella porten vid varje clockpuls och går även att hänga på flera i rad för fler pinnar.
- SeniorLemuren
- Inlägg: 8424
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Fler portar på PIC
Om du syftar på "data in " i mitt första inlägg så menar jag seriell data in till skiftregistret (SIPO). Jag skall dra ett antal reläer, tända lysdioder m.m med PIC'en. Något PISO behövs inte, till indata har jag tillräckligt med portar, direkt på PIC'en.
Jag hittade en 74LS299 i min pryttelsamling. Den har ju inbyggd latch och går även att kaskadkoppla så den verkar ju Ok. att använda om jag inte fattat helt fel.
Jag hittade en 74LS299 i min pryttelsamling. Den har ju inbyggd latch och går även att kaskadkoppla så den verkar ju Ok. att använda om jag inte fattat helt fel.
Re: Fler portar på PIC
> Den har ju inbyggd latch...
Nej, det ser den inte ut att ha. Vid "shiftning" så flipprar alla utgångar.
Eller så stänger man av utgångarna (med OE-pinnarna) under tiden,
men då "faller" också alla funktioner under tiden som shiftningen sker.
Inte helt idialisk med andra ord. Du behöver en modell som har ett extra
steg mellan D-vipporna och utgångs drivarna, som de som har nämnts här.
Nej, det ser den inte ut att ha. Vid "shiftning" så flipprar alla utgångar.
Eller så stänger man av utgångarna (med OE-pinnarna) under tiden,
men då "faller" också alla funktioner under tiden som shiftningen sker.
Inte helt idialisk med andra ord. Du behöver en modell som har ett extra
steg mellan D-vipporna och utgångs drivarna, som de som har nämnts här.
- SeniorLemuren
- Inlägg: 8424
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Fler portar på PIC
Du har rätt. Frågan är då om det är som Swech tidigare nämnde, att reläerna aldrig hinner reagera under dom få µS det tar att skifta 8 bitar. Får nog göra lite praktiska tester. 
Edit: Nu beror det ju på vad man skall driva med ett relä, och vilken typ av reläer man använder så frågan kanske är lite hypoptetisk.
Ett 5 Volts reed-relä har en frånslagstid på ca. 1 mS så det hinner säkert att reagera, men i mitt fall skulle de användas till olika larmsignaler så det är betydelselöst om det blir ett avbrott på någon mS.
Ett annat fall är om man skall driva ett större relä som hanterar flera ampere, då blir spolen i reläet så pass stor att reläet aldrig hinner reagera.

Edit: Nu beror det ju på vad man skall driva med ett relä, och vilken typ av reläer man använder så frågan kanske är lite hypoptetisk.
Ett 5 Volts reed-relä har en frånslagstid på ca. 1 mS så det hinner säkert att reagera, men i mitt fall skulle de användas till olika larmsignaler så det är betydelselöst om det blir ett avbrott på någon mS.
Ett annat fall är om man skall driva ett större relä som hanterar flera ampere, då blir spolen i reläet så pass stor att reläet aldrig hinner reagera.