RS485, automaattinen kuljettaja poistaa / mahdollistaa signaalin sukupolven

B

buenos

Guest
hei

varten RS485 puoli duplex tai multidrop järjestelmät, meidän täytyy poistaa TX kuljettajaa, jos emme lähettävä.Yleensä se tehdään jonka DTR tai RTS-signaali sen UART-, valvonta-puskurin kanssa lähetinvastaanottimen.

Onko tapa tuottaa automaattisesti jonka UART ilman ohjelmiston väliintuloa?on se, että standardiin PC 16550 UART?

 
Äskettäin UARTs on mahdollista tuottaa RS485 TE automaattisesti,
esim. EXAR ST16C650, mutta standardi 16550 ei.Yhteinen ratkaisu on aa ajastin, joka mahdollistaa lähettimen määriteltyjen ajan jälkeen TX bit.On periaatteessa kaksi vaihtoehtoa:
-
Käyttäjätilastot pitkä TE intervall (> 1 merkki frame).Sisältyy törmäysvaaraa, jos peer reagoi liian nopeasti.
-
Lyhyt TE intervall, juuri riittävän ajaa kaapelin kapasitanssi on päinvastainen tasolla.Toiminta riippuu mielekäs mittakaavio bias vastuksia, että irtisanominen verkko-ja ei realiable pitkiä kaapeleita.

Tarkka, kuvatarkkuus lähetin valvonta voidaan saavuttaa alkaen UART syntyy TE-signaalia (kuten sanoi ST16C550), jonka kuljettaja ohjelmisto tuotetaan TE (ainakin alhainen ja keskisuurten nopeus) ja ulkopuolisen laitteiston, joka on dekoodauksella protokollan ( kuten jotkut RS485 toistimet).

 
hei

thanx.
itse löysin mukava ratkaisu Internetistä:
-dont poistaa RX aikana siirtää toiminta
-enable/disable toimitettava GPIO (RTS PIN-tunnus superio)
-lähettää irtisanominen carácter viimeisenä Joka liiketoimi.
käyttöön tx ennen välittää käynnistyy, poistaa RX-keskeytä rutiinia kun irtisanominen merkin sai takaisin.niin ole siinä TX täydellinen irq rutiini beceuse on unaccurate.
-aikana TX tilassa heittää pois kaikki vastaanotetut tiedot RX-keskeytä rutiinia.

 

Welcome to EDABoard.com

Sponsor

Back
Top