Stránka 1 z 2

Spolupráce 2 procesorů

Napsal: 10 čer 2019, 06:22
od Luděk
Dobrý den, měl by někdo řešení, jak by mohly spolupracovat spolu dva procesory?
Ev. oba s přístupem na EEPROM?
Jeden procesor by řídil nějaký proces a druhý mu připravil data a zpětně četl výsledky.
Existuje řešení?

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 08:34
od jrt
Propojit je sériovou linkou a posílat si ta data navzájem. Viz serin a serout.

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 10:23
od Luděk
Jrt, to by taky šlo, ale spíš řeším, aby si oba procesory sahaly na EEPROM, třeba co je u RTC...
První CPU připraví data a pak je zase čte a zobrazuje, jak je ten druhý mění, třeba 32 Byte.
Tak to zkouším na jedné i2c a řeším, aby nekolidovaly. Co myslíš?

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 10:35
od jrt
Zásadně nemyslím, tím jsem všeobecně známý! :D

Zato tak nějak tuším, že existují dvouportové paměti, ovšem zda mají rozhraní I2C nevím. Ale jejich obsluha bude nejspíš tak náročná, že výměna dat mezi dvěma PICAXE proti tomu bude hračka...

A jen pro připomenutí: PICAXE je 20 let starý projekt, určený pro jednoduché úkoly na základních školách, nikoli výkonný mikrokontrolér, kterým by se mohly snadno řešit podobné úlohy.

Nechceš se zastavit tuto sobotu na Malostranském Robodoupěti, kam chodí kromě mě i chytří lidé?

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 10:50
od Dex
Já mám takový pocit, že pokud by se úloha, o níž vlastně nic nevíme, pořádně promyslela, nebude to dost možná až taková divočina :-)

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 10:53
od Luděk
Jo díky :-) mě to myslí méně než Tobě... Ale jinak jsem z jihu Čech, takže se tam nedostanu :-(
Ale budu dál bastlit... občas se oba poperou a nějak si ověřím, že data jsou validní.
Třeba pochopí, že jim nic jiného nezbývá, že mají jednu samičku..... :-)
( 2x TEN procesor a 1x TA paměť ), uvidím...

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 12:09
od fulda
Luděk píše: 10 čer 2019, 06:22 Dobrý den, měl by někdo řešení, jak by mohly spolupracovat spolu dva procesory?
Pokaždé, když se bavíme o spolupráci dvou procesorů, motají se kolem toho slova jako "síť", nebo alespoň "sběrnice". Je hodně otázka designu, kterou "síť" nebo "sběrnici" si zvolíš. Celá řada z nich je velmi jednoduchá a implementovatelná i na picaxe.
Luděk píše: 10 čer 2019, 06:22 Ev. oba s přístupem na EEPROM?
Jeden procesor by řídil nějaký proces a druhý mu připravil data a zpětně četl výsledky.
Existuje řešení?
Nejjednodušší řešení je, když si nastavíš sběrnici I2C v multi-master režimu. Bohužel nevím, jestli je pro tento režim podpora v picaxe, normálně ty procesory multimaster zvládají na hardware, ale jestli se podpora dostala i do picaxe, to nevím. Pokud ne, budeš si muset nějak sám implementovat semafory. Jinak I2C jako sběrnice s tím nemá problém a "stačí to zapojit".

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 12:35
od Dex
Pokud vím, tak PICAXE "multi-master" neumí a slave jen třeba 20X2 a podobné.

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 13:14
od Luděk
Lidi, myslíte to asi dobře, ale jen teorie :-) Myslel jsem, jestli to někdo nemá opravdu vyzkoušené.
Jde mi o to, že jeden procesor bude mít na starosti display, všechny texty MENU, všechny nastavení - setup..... atd
proměnné uloží do EEPROM. Druhý procesor bude makat, přečte si ty proměnné z EEPROM, pužije, pozmění a zase
uloží do EEPROM a ten první to zobrazí.
Důvod? Mám složitý systém, jen pitomé MENU (skromné a optimalizované) má 1600 znaků, kompletní setup pro RTC má taky skoro 1000,
atd atd... a vlastní program má přes 2000. Takže proto to řeším.
Jde o to, jak prostřídat přístup na i2c sběrnici, abych procesory nenašval :-). Budu hledat nějaký digitální switch

Re: Spolupráce 2 procesorů

Napsal: 10 čer 2019, 13:18
od fulda
Luděk píše: 10 čer 2019, 13:14 Důvod? Mám složitý system...
Pokud máš složitý a sofistikovaný systém, tak si ještě jednou přečti TUHLE Jirkovu poznámku.