AVR97: Baudot kodas ir AVR

Mano turimas agregatas naudoja archaiškus greičius ir visiškai nesuprantamą Baudot (Bodo) kodą. Kodą sugalvojo toks Jean-Maurice-Émile Baudot, dar 19-tam amžiuje. Kai nebuvo jokių kompiuterių, megahercų ir tranzistorių. Tik geros patikimo rėlės ir visokios svirtys. Tačiau kaip sakoma- dėkui dėl backward compatibility, daugelis įrenginių palaiko nesamoningus formatus. Nes mūsų teletaipui reikia 50 bodų (čia irgi Baudot) ir 5 bitų perdavimo. Šį formatą palaiko AVR. Tačiau mano projektui reikėjo dviejų greičių: 115200 bitų/s ir 50 bitų/s. Kadangi AVR greičio daliklis turi ribotą bitų skaičių, tiesiogiai negalima turėtį abu greičius. Naudojant 3.6864 Mhz procesoriaus taktinį dažnį didžiausias greitis 115200 (su dalikliu lygiu 1) ir mažiausias 100 (su 2303 dalikliu). O reikia 50. Todėl prieš naudojant teletaipą, reikia mažinti procesoriaus dažnį du kartus, o bendraujant dideliu greičiu- vėl atstatyti greitį.

Elektriškai suderinti senovę ir naujovę galima taip:
TTY circuit diagram teletype

Teletaipas dirba su srovės kilpa. Atvira grandinė rodė apie 56V, o srovės nematavau, nes mano srovės šaltinis tai originalus “modemas” iš pilno telegrafo komplekto. Visiškai nesinori galvaniškai surišti kompiuterį ir telegrafo aparatą, todėl naudoju mikroschemos dydžio SSR (elektroninę rėlę LT210, 400V DC, 100mA, 600mA peek). D1, D2 ir R21 su C23 tai apsauga nuo viršįtampių. Nes komutuojam visokias rėles ir net šiaip junginėjant laidelius visiškai aiškiai matosi kibirkštys. O ir laido induktyvumas turi įtakoti- mano laidas, tai senas žoliapjovės prailgintuvas, nes teletaipas rusyje, o kompas jau pirmam aukšte.

O štai ir telegrama ir AVR (ATMEGA162) kontroleriuko:
TTY telegrama teletype test
Tikrai nesuprantu, kodėl atsirado tas kablelis pačiam gale. Kažkoks gliukas išeinat iš darbo režimo. O ir “štepseliai” nekokybiški. Kaip ištiesinti raides?

O source kode telegrama kiek kitokia:
TTY baudot 5bit AVR source code

Ir kaip visada, visas demonstracinis source kodas AVR ATMEGA16 (ir sukompiliuotas hex):
source code.

Techniniai TTY / ITT parametrai (spėtini):
40mA 80-120V DC current loop with 50 (Europe) or 45.45 (US) baud, using the 5-bit Baudot-code.
The communication protocol is 5N2, in today’s terminology. That’s 1 start bit, 5 data bits, no parity, and two stop bits.
(actually, teletype theory says 1.5 stop bits [anyone else remembering that ‘bit’ always meant ‘smallest unit’ 😉 ], but as the stop bit is the same as the idle state, this doesn’t matter).

Iš kito šaltinio:
Single-current working [coil] will require 30 to 45mA with a line voltage of 50 to 120V. The receive margin is at least +/- 42% at 50 Bauds.

RFT T-63

3 replies on “AVR97: Baudot kodas ir AVR”

  1. Nepamenu ar m162 neturi x2 ?
    Pagaliau 50 BAUD ir SoftwareSerial paveza.
    Persijungiant i fast/low reiktu palaukti kol baig siustis paskutinis simbolis, o ir priimant gali gautis klaidu.

  2. UX2 yra, jis pagreitina UART režimą. Apie jį nepagalvojau. Bet tamstos komentaras davė mintį, iš kur parazitinis kabelis.
    Kol kas tai tik eksperimentai.

Leave a Reply

Your email address will not be published. Required fields are marked *