pic Malá úprava kódu

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
eXilim
Příspěvky: 44
Registrován: 19 kvě 2010, 02:00

pic Malá úprava kódu

#1 Příspěvek od eXilim »

Zdravim, mám kód, který přijme přes tx/rx 8bitové číslo, zpracuje ho a naloží s ním následovně:

XCCCCBBB

BBB - číslo portu který se vybere e přiřadí se mu log. 1, nebo log. 0 (podle X)
CCCC nevyužité
X - Bud 1, nebo 0 - podle tohodle se přidělí na BBB log 1/0.

Používám 16F84A a vzhledme k tomu že jich tu mám víc tak bych chtěl využít piny i CCCC a přidat do toho další PIC a ovládat dalších 8Portů na PORTB na druhém picu.

Příklad:
Mám dva PIC 16F84, na PORTA0 přivádim TX/RX (Na oba to samé - jsou zkratlé) a posílám na ně čísla


10000011 - Přiřadí na první pic na PORTB,3 log 1
00000111 - Přiřadí na první pic na PORTB,7 log 0
-> Tohle mi to dělá ted a potřebuju kod upravit následovně:

10001011 - Přiřadí se na druhý pic na PORTB,3 log 1
10000011 - Přiřadí se na první PIC na PORTB,3 log 1
00001010 - Přiřadí se na druhý PiC na portb,2 log 0...


Snad mě chápete... TX/RX se přivádí na PORTA,0, ty budou zkratlé

zdroj v příloze... Díky
Přílohy
uart.pic.txt
(2.33 KiB) Staženo 117 x

Uživatelský avatar
procesor
Příspěvky: 5284
Registrován: 02 říj 2009, 02:00
Bydliště: PO

#2 Příspěvek od procesor »

Použi voľné vstupy portu A na adresovanie jednotlivých PIC. Jednoduchy dekodér ti umožní adresovať jeden zo štyroch, alebo binárne až 16.
Tu je program pre dva PICe
Adresovanie picu0 na porteA1: skrat na OV(VSS)
Adresovanie picu1 na porteA1: pripojiť 5V (VDD) môže byť aj cez odpor 10k.
Přílohy
uart.pic_123x.txt
(2.52 KiB) Staženo 115 x
Naposledy upravil(a) procesor dne 15 čer 2010, 20:16, celkem upraveno 1 x.

Uživatelský avatar
eXilim
Příspěvky: 44
Registrován: 19 kvě 2010, 02:00

#3 Příspěvek od eXilim »

procesor píše:Použi voľné vstupy portu A na adresovanie jednotlivých PIC. Jednoduchy dekodér ti umožní adresovať jeden zo štyroch, alebo binárne až 16.

Adresovanie picu na porteA1 skrat na OV(VSS) pre nultý PIC,
pripojiť 5V (VDD) prvý PIC.
nějak nechápu :(

Uživatelský avatar
procesor
Příspěvky: 5284
Registrován: 02 říj 2009, 02:00
Bydliště: PO

#4 Příspěvek od procesor »

V prijatých datách sa porovná bit3 a bit1 portuA. Ak sú rovnaké tak sa zmení príslušný bit portuB. Ak sú rôzne, čaká sa na ďalšie data.
Jednotlivé pice sa rozlišujú pripojením nuly, alebo jedničky na porte A1. Jeden tu musí mať nulu, druhý musí mať jednotku.

Uživatelský avatar
eXilim
Příspěvky: 44
Registrován: 19 kvě 2010, 02:00

#5 Příspěvek od eXilim »

procesor píše:V prijatých datách sa porovná bit3 a bit1 portuA. Ak sú rovnaké tak sa zmení príslušný bit portuB. Ak sú rôzne, čaká sa na ďalšie data.
Jednotlivé pice sa rozlišujú pripojením nuly, alebo jedničky na porte A1. Jeden tu musí mať nulu, druhý musí mať jednotku.
stejně nechápu... Máš icq prosím ? bude to rychlejší


//edit: máš to namysli takhle? Viz příloha
Přílohy
com.jpg
(68.85 KiB) Staženo 85 x

Uživatelský avatar
procesor
Příspěvky: 5284
Registrován: 02 říj 2009, 02:00
Bydliště: PO

#6 Příspěvek od procesor »

presne tak.

Uživatelský avatar
eXilim
Příspěvky: 44
Registrován: 19 kvě 2010, 02:00

#7 Příspěvek od eXilim »

procesor píše:presne tak.
ok du to zkusit a teda


0000x000


X urcije prvni/druhy pic jo?

Uživatelský avatar
eXilim
Příspěvky: 44
Registrován: 19 kvě 2010, 02:00

#8 Příspěvek od eXilim »

procesor píše:Použi voľné vstupy portu A na adresovanie jednotlivých PIC. Jednoduchy dekodér ti umožní adresovať jeden zo štyroch, alebo binárne až 16.
Tu je program pre dva PICe
Adresovanie picu0 na porteA1: skrat na OV(VSS)
Adresovanie picu1 na porteA1: pripojiť 5V (VDD) môže byť aj cez odpor 10k.
Je lepší když je to přes odpor nebo ne? dík

Uživatelský avatar
procesor
Příspěvky: 5284
Registrován: 02 říj 2009, 02:00
Bydliště: PO

#9 Příspěvek od procesor »

Ked dáš odpor, môžeš potom prepojkou na GND nastavovať nulu alebo jednotku.
Daj na každý pic portA1 odpor. Prepojkou na GND sa určí, ktorý pic je prvý, ktorý druhý.
Přílohy
PICPIC.jpg
(41.19 KiB) Staženo 69 x

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“