Paano sumulat ng maaasahang komunikasyon interface?

M

msmax

Guest
Ko na ginawa ng isang multiPIC sistema iusing F628 na aparato at malambot UART.Ginamit RB0 bilang comms pin.

Ngayon na tumatakbo na may tungkol sa 16 PIC sa 1 bus sa 1 master.

Ang perdible ay palaging sa makatanggap mode at switch sa output para sa ihatid.

Wrote ilang assembler na gawain sa TX / Rx 5 bytes ng data Inc.checksum at paggamit ng makatakip para matanggap.

Lahat ng parang gumagana ng maayos.Ngunit ang ...

Maaari ne1 ipaliwanag kung ano ang eksaktong ang karapatan na paraan ay ang programa maaasahang comms sa pagitan ng ilang processors wher palaging comms ay sinimulan ng 1 master?

Ano ang mga hakbang na dadalhin sa account kapag programming?
Ano ang mga hakbang para i-check para sa?

Salamat sa iyong input!

 
Projektant Dazi Zheng stworzył dla Nokii prototyp telefonu, który jest zasilany cukrem z napojów takich jak coca-cola.

Read more...
 
Maaari mong subukan ang ilang mga software at / o hardware solusyon.

Manipis / makapal ang kawad Ethernet ay gumagamit ng isang solong cable, at nagpapatupad ng CSMA / CD - pagbangga-unawa ng Maramihang Access / Colllision tiktikan.Na kung ano ang kailangan mo.

1.Unang bagay ay, kapag ang isang node gustong xmit, ito ay gumagawa sigurado linya ay libre sa pamamagitan ng pagsuri para sa idle para sa mas mahaba kaysa sa ilang mga bit-panahon.Ito itinitigil ng isang node jumping sa kalagitnaan ng ibang paghahatid.
2.Kapag ito ay nagpasiya na linya ay libre, ito ay nagsisimula Ipinapadala ng isang paunang salita, siguraduhin kung ano ang makikita sa linya ay kung ano ito ay Ipinapadala.Ikaw ay maaaring ipatupad ito sa pamamagitan ng paggawa ng bawat istasyon magpadala ito
ay sariling address (kaya sila
ay ang lahat ng mga natatanging) at ang xmitting istasyon ay maaaring i-check ang linya na ito ay kung ano ito ay pagpapadala.Kailangan mong siguraduhin na max haba ng paulit-ulit na 1s o 0s sa paunang salita na ito ay hindi magbibigay ng isa pang node sa tingin ng linya ay walang ginagawa at simulan xmitting.
3.Kung ang isang xmitting istasyon nakikita ng isang banggaan, ito backs off para sa isang 'random' oras at pagkatapos ay nagsimula ang lahat nang muli -
kaya't dalawang colliding nodes ay hindi sa pamamagitan ng paulit-ulit banggain sinusubukan muli sa parehong panahon.
4.Lahat ng transmissions magkaroon ng CRC, kaya ang rx istasyon ay maaaring itapon ang packet kung sira.

H / w ay maaaring makakuha ng tulong sa pagbangga tiktikan, sa ethernet bawat Ipinapadala istasyon inilalagay DC kasalukuyang papunta sa 75-oum terminate linya, pati na rin ang AC signal, kaya kung ang dalawang nodes ihatid sa parehong oras ang DC voltage goes up sa pamamagitan ng dalawang beses kung ano ito ay normal, kaya karambola ay maaaring napansin ng comparator.

Lahat-ng-sa-lahat, ito ay maaaring maging mas madali para sa mga sanay na sa poll ang mga alipin sa ilang mga paraan.

Kung ka got ang isang ekstrang linya upang ibahagi sa paligid, maaari mong makuha ang anumang alipin kinukulang pansin sa pull ito upang bumuo ng isang tumakip sa master, at pagkatapos ay kumuha ng mga master sa pag-scan sa paligid ng mga alipin ng isa sa pamamagitan ng isa.

HTH
Barny

 
Barny Salamat para sa iyong mahalagang input.

Ang aking sistema ay 1 master-scan ang tungkol sa 127 pinakamataas na alipin.
Master address 1 alipin at hihintayin para sa 1 byte na panahon para sa isang sagot.Kung hindi, pagkatapos ay sumusubok muli.Kung hindi pa rin sagot na natanggap, i-check ang susunod na address.

Kailangan ko ng info sa kung ano ang oras pagkontra ay dapat na (at kung paano kinakalkula ang mga ito) para sa:
Ipinapadala:
- Sa pagitan ng 2 bytes sa 1 packet (kung kinakailangan na magkaroon ng isang oras sa labas)
- Sa pagitan ng 2 packets

Tumatanggap ng:
- Sa pagitan ng 2 bytes bago itapon byte
- Sa pagitan ng 2 packets

Ako gumamit 9600, n, 8,1 bilang comms parameter.

Ako ay hindi maaaring gumamit collission detection sa paraan ng makatanggap ng likod at ihambing sanhi ko bang gamitin ang parehong para sa pin RX bilang TX.

Anumang isa ay may ilang mga halimbawa sa assembler kung paano ipatupad ng packet data makatanggap & ihatid para sa PIC processors?

 

Welcome to EDABoard.com

Sponsor

Back
Top