Vs: Kontrolleri kokkujooksmine, miks?
Esiteks suured tänud heade näpunäidete eest. Sain jälle hulka targemaks.
Katsetustest. Komplekt stendil kus pikk andurite juhe lahti, töötab järjepanu siiamaani häireteta. Homme pusin sellega edasi, panen vist ühe CAT-5 kaabli, kus RS on keerupaari peal ja toide kahel ülejäänud paaril. Seni olen nii talitanud ja on töötanud. Side kiirus on madal - 9600 bd. Megabittide puhul muidugi nii ei teeks.
Topoloogiast. Seni oli täht: 2 +3 andurit. Seega ei pan'd ka terminaatorit. Olen aru saanud et nii madalatel kiirustel pole eriti vahet. Või kuidas?
Simuleerisin kodus ka asja, häireallikaks kopterimudeli pilusilmne akulaadur (päris vinge plära tekitab, raadio kahiseb nagu Vaikne ookean...). Peale mõningaid koodi täiustusi jäi silma riivama vaid I2C bussil oleva ekraani solkimine. Mõningane, vähem kui enne! Samal siinil on veel kell, SD-kaart ja EEPROM. Võib-olla sealt tule midagi...
Leidsin ka lahtise eelpingestustakisti RS485-liinil. Testin edasi kuid hakkas silma asjaolu (peale vigade parandamist), et E2060 termoandurite konverterid annavad väga kummalist signaali (nad kõik). Eelpingestatud RS-liinil on pinge kuskil 2V, signaal kõigub mõlemale poole. Massa M300 UH-sügavusemõõtja saadab normaalselt (signaal kõigub tolle keskjoone ümber 1V amplituudiga). Termomeetrid aga lasevad ainult nivood allapoole !? Nii ükshaaval proovides kui ka kõik 4 tk. liinil. Peabki nii olema??? Seni olen arvanud et see on viga. Samas kontroller loeb seda küll.
Nii et...pean vist ikkagi simuleerima lasuvigasid liinil (mingi PICiga) et veenduda oma koodi suutlikkuses. Võimalik tõesti et seal on veel kala.
Väliste elektriliste häirete kohta kuulan huviga soovitusi edasi.
/Felch
PS. Side toimub bit-bäng UARTiga kahel kiirusel: 9600 ja 19200 (kuna andurid on sellised ja paremat proset hetkel pole). Seega frame overrun jms lipud puuduvad.
Esiteks suured tänud heade näpunäidete eest. Sain jälle hulka targemaks.
Katsetustest. Komplekt stendil kus pikk andurite juhe lahti, töötab järjepanu siiamaani häireteta. Homme pusin sellega edasi, panen vist ühe CAT-5 kaabli, kus RS on keerupaari peal ja toide kahel ülejäänud paaril. Seni olen nii talitanud ja on töötanud. Side kiirus on madal - 9600 bd. Megabittide puhul muidugi nii ei teeks.
Topoloogiast. Seni oli täht: 2 +3 andurit. Seega ei pan'd ka terminaatorit. Olen aru saanud et nii madalatel kiirustel pole eriti vahet. Või kuidas?
Simuleerisin kodus ka asja, häireallikaks kopterimudeli pilusilmne akulaadur (päris vinge plära tekitab, raadio kahiseb nagu Vaikne ookean...). Peale mõningaid koodi täiustusi jäi silma riivama vaid I2C bussil oleva ekraani solkimine. Mõningane, vähem kui enne! Samal siinil on veel kell, SD-kaart ja EEPROM. Võib-olla sealt tule midagi...
Leidsin ka lahtise eelpingestustakisti RS485-liinil. Testin edasi kuid hakkas silma asjaolu (peale vigade parandamist), et E2060 termoandurite konverterid annavad väga kummalist signaali (nad kõik). Eelpingestatud RS-liinil on pinge kuskil 2V, signaal kõigub mõlemale poole. Massa M300 UH-sügavusemõõtja saadab normaalselt (signaal kõigub tolle keskjoone ümber 1V amplituudiga). Termomeetrid aga lasevad ainult nivood allapoole !? Nii ükshaaval proovides kui ka kõik 4 tk. liinil. Peabki nii olema??? Seni olen arvanud et see on viga. Samas kontroller loeb seda küll.
Nii et...pean vist ikkagi simuleerima lasuvigasid liinil (mingi PICiga) et veenduda oma koodi suutlikkuses. Võimalik tõesti et seal on veel kala.
Väliste elektriliste häirete kohta kuulan huviga soovitusi edasi.
/Felch
PS. Side toimub bit-bäng UARTiga kahel kiirusel: 9600 ja 19200 (kuna andurid on sellised ja paremat proset hetkel pole). Seega frame overrun jms lipud puuduvad.
Comment