Radio Controlled (RC) Computer Klok
De seriële interface voor Radio Controlled (RC) Computer Klok
1. Inleiding tot de seriële interface voor Radio Controlled (RC) Computer Klok
De seriële interface bestaat uit een data-invoer lijn en een data-uitgang lijn.
Het dataverkeer snelheid van de seriële interface is 300 bps. Vanwege de beperkte middelen van de RC Computer Clock micro-controller alleen een gemakkelijke software protocol kan worden gebruikt.
Er zijn geen hand schudden lijnen. Synchronisatie met de gastheer via de tekenmelding.
2. Voedingsspanning van de seriële interface
De RC Computer Clock is een op batterijen werkende RC klok die wordt aangedreven door twee 1.5V cellen. Dit zorgt voor een batterijduur van ongeveer twee jaar. De voeding van de seriële interface is onafhankelijk van deze batterijen. De RS232 seriële standaard interface bestaat niet alleen uit de seriële ingang (RxD) en output (TxD) lijnen, maar ook een aantal extra regels die worden gebruikt in sommige toepassingen voor handshaking doeleinden, de RC Computer Clock gebruikt deze extra regels voor de levering van de interne seriële interface circuit met de vereiste elektrische spanning. Deze aanvullende regels zijn niet nodig voor de uitwisseling van gegevens.
De RC Computer Clock vereist zowel een positieve als een negatieve spanning uit het serienummer van de PC-interface. De positieve spanning wordt geleverd door de DTR lijn.
Er zijn twee manieren om de negatieve spanning:
a) De PC "communiceert" met de RC Computer Clock door het sturen van ASCII karakters om de RC computerklok zoals hieronder beschreven (zie 5.). Hierdoor kan de negatieve spanning worden door de TxD lijn. Wanneer de pc karakters stuurt deze lijn wordt geschakeld tussen een positieve en negatieve spanning. Als de PC is het wachten op de RC Computer Klok om de TxD lijn beantwoorden is altijd laag bij een negatieve spanning. De RC Computer klok hoeft niet de TxD negatieve spanning tijdens het ontvangen van tekens alleen tijdens het verzenden.
b) De RC Computer klok kan worden geactiveerd om de tijd / datum informatie te verzenden door het trekken van de gegevensinvoer lijn naar hoog spanningsniveau zoals hieronder beschreven (zie 3.3). Deze lijn moet worden hoog gehouden totdat de overdracht van gegevens uit de RC Computer klok is begonnen. Daarom kan leveren de negatieve spanning. De mogelijkheid bestaat om de negatieve voedingsspanning uit de RTS lijn. Deze lijn moet worden ingesteld op laag niveau door de programmeur die wil de RC Computer Klok veroorzaken aan de tijd / datum informatie te verzenden door te oordelen TxD op hoge spanningsniveau.
3. Datawoord formaat
3.1 Gegevens die naar de radio gecontroleerde klok van de computer
Interface parameters
- Snelheid: 300 bps
- Gegevens Bit Count: 7
- Pariteit: zelfs, oneven, mark, ruimte (niet gecontroleerd door de PC Radio Klok)
- Stop Bit Count: 2
Functie van gegevensinvoer
De RC Computer Clock accepteert commando's van maximaal drie tekens, inclusief de parameters. Het karakter carriage return (hex 0d) zorgt ervoor dat de RC Computer Klok om de opdracht uit te voeren. Alleen de vier lagere bits van alle opdrachten en parameters karakter worden gebruikt. Bijvoorbeeld de karakters "?", "O" en "o" hetzelfde effect. De uitzondering is de laatste carriage return die wordt gedecodeerd door te kijken naar de zeven lagere bits (volledig gedecodeerd).
3.2 Reacties van de Radio gecontroleerde klok van de computer
Interface parameters
- Snelheid: 300 bps
- Gegevens Bit Count: 7
- Pariteit: zelfs
- Stop Bit Count: 2
Functie van gegevensinvoer
Het antwoord van de RC Computer klok bestaat uit een opeenvolging van ASCII-tekens beëindigd door een laatste harde return karakter cr. De tekenset die gebruikt is door de RC Computer Clock is beperkt tot de nummers 0 ... 9 en de personages:; =?. De informatie wordt opgenomen in de onderste vier bits.
De bits 4 en 5 van elk antwoord karakter zijn binaire enen, de bit 6 is binair nul en de bit 7 bevat de even pariteitsbit. Dit resulteert in de zestien verschillende karakters die door de RC Computer Clock, zoals hierboven beschreven. de seriële uitgang van de RC Computer klok kan niet worden onderbroken tijdens haar antwoord. Daarom moeten alle tekens moeten worden genomen door de host computer onmiddellijk.
3.3 Ondersteuning van een vereenvoudigde gegevensuitwisseling
Een vereenvoudigde gegevensuitwisseling mogelijk is.
De tijd / datum informatie te verzenden commando ((o cr) zie hieronder 5. 1.) Is niet de enige manier om een reeks van ASCII-tekens te initiëren. Een eenvoudiger methode is om trek de TxD (TxD van de PC) spanningsniveau hoog. Normaal gesproken TxD spanningsniveau is laag (niet actief). Als de TxD lijn hoog is aan het begin van een tweede dan is de RC Computer Clock zendt zijn tijd / datum informatie. Dit kan duren een tweede omdat de eerste startbit van de tijd / datum stelt het begin van een tweede. Als de TxD lijn wordt hoog gehouden continu dan is de RC Computer klok zal de tijd datum informatie te verzenden per seconde. Maar zorg moet worden genomen: Het stroomverbruik van de RC Computer Klok neemt gedurende de tijd / datum informatie output tot 600 A. (duur ongeveer 200 ms.)
4. Handshaking
Elk personage ontvangen door de RC Computer Clock wordt weerspiegeld. De volgende teken mag niet worden doorgegeven aan de RC Computer Klok voor de echo van het voorafgaande teken en een extra duur van 10 ms.
Erkenning ingevoerde tekens is door het correcte verschijning van zowel de startbit en twee stopbits. De acht herhaalde databits ongewijzigd onder alle omstandigheden, ongeacht of pariteit even of oneven is.
5. Beschrijving van opdrachten
5.1 Transmit tijd / datum informatie
syntaxis ASCII: o cr Character "o" mag worden vervangen indien nodig door een karakter waarvan de code bevat de laagste vier bits f (hex), bv. ook /? O _
syntaxis binaire: xxxx1111 00001101
De RC Computer Clock antwoordt op deze opdracht met een opeenvolging van 15 karakters die de hele tijd informatie en een laatste cr bevatten. Het maken van 16 tekens in totaal.
De RC Computer klok zal niet onmiddellijk antwoorden op deze opdracht, omdat de startbit rand van het eerste antwoord teken markeert het begin van de tweede. Dus de RC Computer Klok zal antwoorden op deze opdracht aan het begin van de volgende seconde.
De karakters hebben de volgende betekenis:
- 1. uur tientallen
- 2. uur-eenheden
- 3. minuten tientallen
- 4. minuut eenheden
- 5. seconden tientallen
- 6. seconden eenheden
- 7. dag van de week 1 (maandag) ... 7 (zondag)
- 8. dag van de maand tientallen
- 9. dag van de maand eenheden
- 10. maanden tientallen
- 11. maand eenheden
- 12. jaar tientallen
- 13. jaar-eenheden
- 14. BST / UTC-status
- bit7 pariteit
- bit6 altijd 0
- bit5 altijd 1
- bit4 altijd 1
- bit3 altijd 0
- bit2 = 1 als UTC is in feite een aanvulling op de BST bit
- bit1 = 1 als BST van kracht is, op basis van de BST bit
- bit0 BST / UTC wijzigen dreigende bit = 1 in geval van wijziging dreigende
- 15. staat
- bit7 pariteit
- bit6 altijd 0
- bit5 altijd 1
- bit4 altijd 1
- bit3 = 1 als lage accuspanning wordt gedetecteerd
- bit2 = 1 als de allerlaatste receptie poging mislukte en een geldig time informatie al bestaat (bit0 = 1)
- bit2 = 0 als de laatste ontvangstpoging is gelukt
- bit1 = 1 als ten minste een receptie poging sinds 2: 30 am was succesvol
- bit1 = 0 als er geen ontvangst poging sinds 2: 30 am was succesvol
- bit0 = 1 als de RC Computer Klok bevat een geldige tijd informatie
- Dit bit nul is na een reset en een na de eerste succesvolle ontvangst poging.
5.2 Transmit ontvangststatus
syntaxis ASCII: g cr
Character "g" mag worden vervangen door een personage waarvan de code bevat de laagste vier bits 7, bijvoorbeeld ook '7 GW w
syntaxis binaire: xxxx0111 00001101
Het antwoord op deze opdracht bestaat uit twee personages en de uiteindelijke cr.
De karakters hebben de volgende betekenis:
1. Status van ontvangst en lijn
- bit7 pariteit
- bit6 altijd 0
- bit5 altijd 1
- bit4 altijd 1
- bit3 altijd 0
- bit2 altijd 0
- bit1 altijd 1
- bit0 = 0 als er geen ontvangst poging vindt plaats op het moment
- bit0 = 1 als een receptie poging vindt plaats op het moment
2. ontvangstkwaliteit kenmerkend nummer van 0 naar 5
- 5 duidt op een goede ontvangst zonder te worden gestoord
- 0 geeft zeer slechte ontvangst
Als het nummer in het bereik van 0 tot 2 geen succesvolle ontvangst normaal worden verwacht.
Tijdens de ontvangst pauzes dit nummer is altijd 0.
5.3 Start ontvangstpoging inclusief tijd vergelijking
syntaxis ASCII: h cr
Character "h" kan worden vervangen andere tekens waarvan de code bevat de laagste vier bits 8, bijvoorbeeld ook (8 HX x syntax binaire: xxxx1000 00001101
Dit commando zorgt ervoor dat de RC Computer Klok op de ontvanger IC te activeren en een receptie poging welke ingang van de volledige AZG time informatie en het synchroniseren van de RC computerklokken interne tijd volgens de MSF seconden pulsen omvat starten. De nauwkeurigheid is beter dan 20 ms. Als deze poging eindigt zonder succes uit 2: 00 uur tot 3: 00 ben beetje 1 van de 15th tijd / datum informatie karakter wordt gereset (zie 5.1.). Dit bit wordt altijd ingesteld na het beëindigen van de receptie poging met succes.
5.4 Start ontvangstpoging zonder tijd vergelijking
syntaxis ASCII: i cr
Character "i" mag worden vervangen door alle andere karakters die code bevat de laagste vier bits 9, bv ook) 9: Y y syntax binaire: xxxx1001 00001101
Dit commando zorgt ervoor dat de RC Computer Klok op de ontvanger IC te activeren en een receptie poging te starten. Alleen de interne seconde timing worden gesynchroniseerd volgens de MSF seconden pulsen. De nauwkeurigheid is beter dan 20 ms. Instellen van de status bits in overeenstemming is met 5.3.
Let op: Als de voorgaande ontvangst is mislukt of als dit commando blijkt uit 12: 00 uur tot 3: (. Zie 00) 5.3 ben het zal een receptie poging die volledige tijd vergelijking omvat veroorzaken