PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 455kHz - Takt erzeugen



sigo
07.03.2006, 23:11
Hallo, ich brauche einen 455kHz - Takt an einem ATmega8L.
ICh betreibe den m8L mit 3,684...MHz, was bei einer Teilung durch 8 ca. 460kHz ergibt. Das wäre genau genug für meine Schaltung..

Frage:

Kann ich die o.g. Teilung durch 8 mit dem Timer unabhängig von der Programmausführung erzeugen, ohne CPU-Zeit (ISR) zu verbrauchen.
Wenn ja, wäre ich für einen Prog,-Tipp dankbar. Ideal wären ein Puls-Pausenverhältnis von 3:1, 1:1 geht aber auch.

Die Alternative wäre ggf. ein 455kHz Resonator (Quelle?) und den m8L dann gleich damit betreiben, synchronisieren oder abgleichen? (interner Oszillator?)

Als 3. Alternative käme ggf. noch ein 14,x MHz Quarz mit entsprechendem 1:32 Teiler in betracht. Hier dürfte in jedem Fall Rechenleistung übrig bleibem..

Vielen Dank für Tipps und Hinweise.

Gruß Sigo

ruediw
10.03.2006, 00:32
Wozu brauchst Du diesen Takt mit 455 kHz ?
Was willst Du machen ?

sigo
10.03.2006, 08:20
Ich muss Daten mit dieser Frequenz modulieren..
sigo

sigo
10.03.2006, 08:33
Kann man denn nur CPU-schonend (1 / 8) des CPU-Takts auf einen Pin bringen?

Alternativ könnte man evtl. mit einer ISR-den Tx-Pin des UART einfach zwischendurch auf "0" ziehen, dann wieder in seinen vorherigen Zustand.

?? kann man den Pin setzen, während der UART munter an den Pin sendet?

ISR, die mit jeder steigenden Flanke des Tx-Pins folgendes tut:

Tx Port - bit --> in Register
Port für 2 Takte auf "o"
Port-Bit wieder schreiben
Reti

Hierfür stehen nur max. 7 Takte zur Vefügung.
Oder 15, bei 7,3MHz
ich würde gern die "L" Version nehmen, um wenig Energie zu brauchen.
Zur Not muss es aber eben die 20MHz Version @18,32 MHz sein

Ich muss leider mit dem AVR Assember wieder bei (fast) null anfangen.

Daher sind tipps sehr willkommen


Eine Alternative, wäre den Takt exterm mit einem Gatter teilen und damit dann den UART modulieren. Dazu brächte ich ein Teiler und eine Gatter..also 2 74HCxx Teile

sigo

Gruß Sigo

ruediw
10.03.2006, 21:09
Musst Du eine Amplituden- oder Frequenzmodulation machen ?
Eine Möglichkeit währe eine PLL (4046). Die kannst Du direkt Frequenzmodulieren. Oder irgend einen VCO oder den Oszillator mit
diskreten Bauelementen aufbauen.
Erzähl mal etwas mehr davon was Du genau machen willst...

sigo
10.03.2006, 23:44
ICh muss eine Amplitudenmodulation machen.

"1"-Bit = 15 Perioden lang 455kHZ, mit Puls-Pausenverhältnis von 25-50%


"0" - Bit = nix senden

Ein Objekt sollte in etwa folgende Infos enthalten:

Präambel / Startbit möglichst kurz
4Bit ID
4-8 Bit Check-Bits
8-12Bit Daten (min. 8, 12 wär toll)
Stopbit

z.B. in Manchester-Coding
oder ich nehme einfach 3 UART-OBjekte, also 3 x Byte + Overhead.
Hier müsste ich aber selbst für die Check-Bits sorgen...


Kann man auch was mit dem SPI anfangen? Evtl. die Bits ins Schieberegister dann dann raustrakten?
Muss ich mir noch ansehen

Ic hab jetzt den Takt per Hardware erzeugt, indem ich die 3,6MHz durch 8 geteilt habe. Mit einem Gatter, kann ich nun die Tx Leitung oder ein anderes Portbit modulieren..

Ich möchte mit IR-Dioden Reichweiten von ca. 10-20m erreichen. Kann gern auch mehr sein, zru Not reichen auch 3-5m.

Natürlich wäre ein fertiges Protokoll praktisch, wie CAN. ABer der CAN - Bus brauch mir zu viele Bits.Gibs da kleinere? Für 20bit o.ä. fertig in HArdware. Was ist mit den vielen IO Bussen im kfz?
Wer kennt sich da aus?

Manf
11.03.2006, 06:17
Die Alternative wäre ggf. ein 455kHz Resonator (Quelle?) und den m8L dann gleich damit betreiben, synchronisieren oder abgleichen?
Nur kurz zu der speziellen Frage von oben:
Quelle:
http://www.oppermann-electronic.de/Ker__Filter/body_ker__filter.html

sigo
11.03.2006, 10:28
Danke Manfred!
Super.
Ich denke, dass das eine gute Möglichkeit ist. So ist der Prozessor besonders sparsam, ich brauch keinen Taktteiler, kann daraus trotzdem die 19,2 oder 9,6 kBd machen. Und CPU-Leistung sollte immer noch reichen.
Und ein bischen billiger als ein Quarz ist es auch noch.
Tastverhältnis ist dann 1:1 aber das ist egal.
Wenn ich den Takt mit einem Komparator vom Resonator abgreifen würde, ließe sich das Puls-Puasenverhältnis auch einstellen..
Aber eben ach wieder ein paar Teile..
Mal sehn.

Inzwischen habe ich mit einem 74LS191, der noch rum lag, den Takt geteilt und 25% Tastverhältnis realisiert.
Den LS muss ich dann natürlich noch durch einen HC ersetzen, sonst frisst der mit seine 20mA mehr als der ganze Rest zusammen... :-)

Allen ein schönes Wochenende

Sigo