Jak ztohoven - Reentrancy not allowed :-(
CNCnet.info
hwnews@cncnet.info
Sobota Září 8 19:06:16 CEST 2007
Ja bych to nemusel ani nijak moc komplikovat. V hlavni smycce potrebuji
vyvolat komunikaci na LAN a jakmile to udelam zapnu preruseni na USARTu
a dokud mi to preruseni nenastavi flag ze vsechny znaky prisly tak
proste znovu na LAN komunikovat nebudu. Mel jsem takovou ideu, ze
odpoved z webu budu sypat znak po znaku do FRAMky, protoze tohle do RAM
v zadnem pripade nedostanu a pak si je v klidu nekdy zobrazim na LCD.
Takze ja presne vim kdy se mi co uvolnuje.
Jinak zatim o nic nejde zatim si jen tak hraju.
Radek Vicek
======================================================================
http://www.cncnet.info - problematika CNC a automatizace
http://www.jakjevenku.info - webová meteostanice
Miroslav Sinko napsal(a):
> Neviem, co s tym, ked to uz linker poklada za chybu (nepoznam ten
> prekladac), ale normalne sa problem casovej vylucnosti vstupu do
> nejakej rutiny vola kriticka sekcia. Budete mat globalny flag, ktory si
> kazda volajuca rutina (main, interrupt..) pred vstupom do kritickej
> sekcie overi. Ak je "volno", nastavi ho na "obsadene" a vstupi. Po
> ukonceni vykonu kodu v kritickej sekcii ho opat uvolni. Teda ak druha
> rutina zisti, ze je "obsadene", bude cakat na zmenu na "volno". Flag
> samozrejme musi byt volatile a musi sa zabezpecit "atomicnost" krokov
> 'kontrola vratila volno' a 'nastav na obsadene'. 8051 ma na to krasnu
> instrukciu JBC bit,rel (Jump if Bit is set and Clear bit)
>
> Co sa tyka zdielaneho vyuzivania I2C, tak asi jedine buffer.
>
> miro
>
>
Další informace o konferenci Hw-list