Zapoceo sam jedan jednostavan projekt koji se tokom vremena zakomplicirao i sada sam u nedostatku portova na PIC 18f452 procesoru.Trebam neku ideju za prosirenje porta.Znaci imam 10 komada DS18b20 senzora koji mjere temperaturu na 10 tocaka i svaki taj senzor mora palit ili gasit relej ovisno u temperaturi.Trebam kontrolirati 16 releja ali vise nemam mjesta na PIC-U fali mi za 6 komada.
Razmisljao sam u 74HC595 cipu ali na njemu neznam kako da palim ili gasim pojedini izlaz-kod njega moram slati cijeli bajt .
Na PIC-u mi je to jednostavno napaviti ako temperatura predje zadanu granicu samo postavim zadani port na HIGH ili LOW.Da li se nesto takvo moze napravit i s HC595 chipom.
Ima li tko iskustva s port extender chipovima i da li se kod njih moze paliti i gasiti pojedini izlaz a da ne moram slati cijeli bajt podataka,nesto slicno kako kod pic procesora.
Prosirenje porta pic procesora
Moderators: pedja089, stojke369, [eDo], trax
Re: Prosirenje porta pic procesora
Pozdrav,
ideja sa 74595 ti nije loša. Ne znam koliku brzinu trebaš, ali mislim da 74595 može dosta visoko, reda MHz. Sam program nemora biti specijalno zahtijevan. Očitaš stanja senzora, svakom senzoru dodjeliš jedan bit u nekom registru i jednostavno vrijednost tog registra pošalješ vanka k 74595. I sve to redovno osvježavaš u petlji
ideja sa 74595 ti nije loša. Ne znam koliku brzinu trebaš, ali mislim da 74595 može dosta visoko, reda MHz. Sam program nemora biti specijalno zahtijevan. Očitaš stanja senzora, svakom senzoru dodjeliš jedan bit u nekom registru i jednostavno vrijednost tog registra pošalješ vanka k 74595. I sve to redovno osvježavaš u petlji
Re: Prosirenje porta pic procesora
Code: Select all
ideja sa 74595 ti nije loša
Re: Prosirenje porta pic procesora
da li bi to trebalo onda ovako izgledati:
Code: Select all
reley var byte
temp var byte
reley.0 = 1
reley.1 = 1
reley.2 = 1
reley.3 = 1
reley.4 = 1
reley.5 = 1
reley.6 = 1
reley.7 = 1
if tempA>25 then
reley.0=0
else
reley.0=1
gosub send_data
endif
send_data:
LOW LPIN ; Latch Idles LOW
Shiftout DPIN, CPIN, MSBFIRST,[reley]
HIGH LPIN ; Latch data to 595's outputs
LOW LPIN
Low DPIN ; Set Data to 0
Re: Prosirenje porta pic procesora
Da.
Edit:
S time da skačeš na petlju za slanje kad prođeš sve if-ove sa temp. Ukoliko je razmak između tih if-ova poveći onda je ovo gore u redu.
100 komada ?
Hehehe, sad sve preko njih vozit
Edit:
S time da skačeš na petlju za slanje kad prođeš sve if-ove sa temp. Ukoliko je razmak između tih if-ova poveći onda je ovo gore u redu.
100 komada ?
Hehehe, sad sve preko njih vozit
Re: Prosirenje porta pic procesora
zahvaljujem na pojasnjenju
Re: Prosirenje porta pic procesora
Temp. senzori su ti spojeni svaki na svoj pin ili? Jer svaki DS18B20 ima jedinstvenu adresu i mozes ih vise spojiti na isti pin.
Re: Prosirenje porta pic procesora
DS18b20 svi su na jednom pinu i svaki se poziva po svojoj adresi i to mi radi.Nisam se uopce sjetio da mogu pojedini bit mjenjati u Varijabli relej,Maki me je uputio u dobrom pravcu.
Re: Prosirenje porta pic procesora
Ako bas hoces kako si ti hteo, mozes upotrebiti 74HC259.