szavazogep

Szima Gábor sygma at tesla.hu
Fri May 5 10:58:26 CEST 2006


On Fri, 5 May 2006, MG wrote:

> En is RS485-ben gondolkodtam, de 40-50 terminal kell.

Nem gond. A szabvany 32 HOST-ot enged meg, de megfelelo (igaz, nem olcso) 
vezerlovel 128 is elerheto.

Ajanlott: MAX487 (EESA, ez 15 kV ESD vedett).
600..900 HUF/db + AFA...

> CAN-nel nem foglalkoztam meg, es nem tudom, hogy az 1
> honapos hatarido eleg-e a kitanulasahoz. Ugyanis kb ennyi
> ido van az egesz elkeszitesere... :-(( Ja, es ha lehet
> ATMEL, nem PIC...

Ha gyorsan nekiugrasz, akkor bevallalhato. Par "know-how"-t tudunk adni a 
nagy szivasok elkerulese vegett (pl. RS485 alapkapcsolas, nem egeszen 
ugy, ahogy szoktak :).

> Nem "ki az elso" tipusu rendszer kell, hanem osszeszamlalni
> az egyes gombok "allasat". A polling nem akadaly, 1-2mp
> alatt kiertekelheto az eredmeny, persze nem mindenki
> egyszerre nyomja a gombot, lehet, hogy 5-10 mp. is eltelik
> az elso es utolso kozott. Vagy 10mp. utan inditani a pollt,
> vagy tobbszor lekerdezni, aki volt mar azt kihagyni...

Ez nagyon egyszeru. Minden slave lekerdezi a gombokat, es a valaszban 
visszakuldi a gombok allapotat. Kb. 3 sor ASM-ben, C-ben 2. :)

A Master 1-tol 40..50-ig vegigrugdossa az egeszet. Mindenki valaszol. 
Egyszeruen osszeadja a valaszokat. Mire a vegere ert, tudja, hogy A-bol 3, 
B-bol 13, C-bol 11 (13..23 hianyzik).
Aki nem valaszol, az "halott", lehet hivni a szervizest. :))

Ez 5-6 sor ASM-ben, C-ben pedig egy mezei for-ciklus. :)

> A fizikai reteg is jatszik, ugy gondoltam kihuzok egy kabelt
> es arra dugom a terminalokat, pl. RS485, de ott meg csak 32
> a max.

MAX487, 128 host. RET/HTeurep, vagy a gyartotol kozvetlenul beszerezheto.

> Koszi megegyszer az eddigieket, ha meg van valakinek valami,
> varom!

RS485 IC (MAX487, SN75176 (olcso, teszthez jo)) "szabvany" bekotesu:

  - 8-as lab: +5V (+100 nF kondi szuresnek)
  - 5-os: GND
  - 6: COMM-A
  - 7: COMM-B
  - 1: Rx, 10 k-val felhuzva +5V -ra! (TX eseten ne lebegjen). ATmega8
    2-es labara kotve (Rx)
  - 2,3: osszekotve, adatirany, 10 k-val foldre huzva (ha kifagy a proci,
    akkor ne lebegjen!), _Rx/Tx (0: Rx, 1: TX) Ez mehet az ATmega8
    4-es labara (adatirany)
  - 3: Tx, ATmega8 3-as laba (Tx)

A buszt ket vegen le kell zarni 120-120 ohm-al. Illetve!!!
Egy helyen (celszeruan a master oldalon) a COMM-A-t a +5V-ra, a COMM-B-t a 
GND-re kell egy-egy 470 ohm-os ellenallasal kotni!
Ez alapesetben egy 300 mV-os "elofeszitest" ad a buszra, igy az RX magas 
szinten lesz.

A kommunikacio HW oldala lenyegeben ennyi. :)

Kell talalni egy "emberi" bitratat (nem kell "szabvanyos", hanem olyan, 
amit a kvarc orajelebol szepen le tud osztani. Pl. 10 vagy 50 kBPS.

10 kBPS-nal 50 host eseten kb. 0,5 masodperc egy "kor" (4-4 byte-os 
csomagokkal szamolva).

Amig gyartonal vannak a (proba)NYAK-ok, addig nezd at az AVR-ek UART-jat, 
kulonosen az "MPCM" bit jelenteset.



 								-Sygma




More information about the Elektro mailing list