MC14411 Baud Rate Generator Ersatz

OP #6873898
Lesenswert?

Hi,

ich möchte eine Interface Schaltung nachbauen, die original Schaltung 
verwendete neben einem Intel 8251 Uart zur Baud Raten Erzeugung einen 
Mc14411.

Den MC14411 gibt es nicht mehr, vom Uart habe ich noch die benötigte 
Anzahl hier liegen :)

Die Schaltung möchte ich insgesamt 5 mal nachbauen.

Jetzt meine Frage, kennt jemand ein Alternativ IC das 5V kompatibel ist 
und als Ersatz für den 14411 dienen könnte? Ich habe auf die schnelle 
nichts gefunden.

Erste Idee war ein AVR mit Timer so zu programmieren, dass die passenden 
Baud Raten erzeugt werden. Aber das geht bestimmt auch irgendwie 
einfacher oder?

Und nein VHDL usw. beherrsche ich nicht um es mit modernen Chips 
nachzubilden.
Angehängte Dateien:
#6873914
Lesenswert?

Der Chip arbeitet ja mit festem X16 Mode, bedeutet es wird ein Clock 
erzeugt der der 16 fachen Abtastrate entspricht. Der Rest ist dann 
einfach ein simpler Frequenzteiler. Mit einem 4060 sollte das machbar 
sein. Ev muss noch ein anderer Quarz rein weil am 4060 nicht alle Stages 
rausgeführt sind.
#6873921
Lesenswert?

Hallo,

wenn du einen 8251A oder nimmst, kann der bis 3.125 MHz Takt. Das heißt 
du kannst einen 2.4576MHz Quarz an einem (74HCT)4060 nehmen, der dann an 
Q4 die 9600Hz*16 rausgibt.

Q5: 4800
Q6: 2400
Q7: 1200
Q8: 600
Q9: 300
Q10: 150

Q11 für 75bps fehlt halt, aber ist das ein schwerer Verlust? ;)

An Pin 9 hast du auch einen gepufferten Quarztakt.

Gruß,
Christian
Gast #6873923
Lesenswert?

Thomas Z. schrieb:
> Mit einem 4060 sollte das machbar
> sein. Ev muss noch ein anderer Quarz rein weil am 4060 nicht alle Stages
> rausgeführt sind.

74HC4060 mit 2,457 MHz. Die 75 Baud fehlen aber leider :-(

Johannes M. schrieb:
> Erste Idee war ein AVR mit Timer so zu programmieren, dass die passenden
> Baud Raten erzeugt werden. Aber das geht bestimmt auch irgendwie
> einfacher oder?

Es ist die einfachste Lösung!
Gast #6874209
Lesenswert?

Johannes M. schrieb:
> LS151 Pin 5 ist das Baud Raten Signal und das ist etwas anderes als das
> Clock Signal. Das Clock Signal hat im original ja die Frequenz des
> 1,8432 Mhz Quarzes.

Verstanden!
Vielleicht ist Plan A doch die bessere Lösung: Ein ATtiny wird mit 
18,432 MHz betrieben. Ein Timer erzeugt daraus die 1,8432 MHz (Teiler 5) 
und ein anderer Timer mit Teiler 60 die Zeitpunkte mit der ein 
kompletter Port fortlaufend inkrementiert wird. Die Frequenz an PortX0 
ist dann 153,6 kHz. Dazu muß man nicht einmal einen Interrupt verwenden.
Gast #6874288
Lesenswert?

m.n. schrieb:

> und ein anderer Timer mit Teiler 60 die Zeitpunkte mit der ein
> kompletter Port fortlaufend inkrementiert wird. Die Frequenz an PortX0
> ist dann 153,6 kHz. Dazu muß man nicht einmal einen Interrupt verwenden.

Eigentlich sogar nichtmal einen Timer. Aber egal, ist ja eh schon mit 
bezahlt, also kann man ihn auch verwenden.

Ich würde übrigens einen Tiny24/44/84 verwenden. Das würde es (dank 
CLKO) ermöglichen, den Original-Quarz zu verwenden. Damit entfällt der 
erste Timer. Der Rest deines Konzeptes könnte so bleiben, nur der Teiler 
für den zweiten (nunmehr einzigen) Timer müßte noch entsprechend 
reduziert werden.
Gast #6874333
Lesenswert?

m.n. schrieb:

> Nach dem Init bleiben 6 Takte zum Inkrementieren:
>
>
1
> LOOP:
2
> INC R16
3
> OUT PORTA, R16
4
> NOP
5
> NOP
6
> RJMP LOOP
7
>
>
> Korrekt?

Bin nicht sicher. Welcher Takt muss an der 9600er-Strippe nun 
tatsächlich ausgegeben werden? 9,6kHz? Dann passt es nicht. Oder das 
16fache davon, 921,6kHz? Dann passt es.

Dann hat sich allerdings auch der letzte verbliebene Timer des Konzeptes 
noch erledigt. Mit bezahlt und doch nicht gebraucht...
OP #6874376
Lesenswert?

> Bin nicht sicher. Welcher Takt muss an der 9600er-Strippe nun
> tatsächlich ausgegeben werden? 9,6kHz? Dann passt es nicht. Oder das
> 16fache davon, 921,6kHz? Dann passt es.
>
> Dann hat sich allerdings auch der letzte verbliebene Timer des Konzeptes
> noch erledigt. Mit bezahlt und doch nicht gebraucht...

Da bin ich mir auch nicht ganz sicher, ich vermute aber die 921,6kHz ?

Die timer würde ich trotzdem dann nutzen, weil ich ja dann mit einem 
etwas größeren ATMEGA die ganzen Gatter drumherum sparen kann. Die 
Baudrate wird ja nicht oft geändert. Daher wird die Geschwindigkeit der 
Gatter zur Baudrateneinstellung ja nicht gebraucht.
Gast #6874398
Lesenswert?

Johannes M. schrieb:
> Die timer würde ich trotzdem dann nutzen, weil ich ja dann mit einem
> etwas größeren ATMEGA die ganzen Gatter drumherum sparen kann.

Da es freitags keine Wurst gibt, werden die Salamischeiben heute 
geliefert?
Mit einem ATmega kannst Du Dir auch den 8251 sparen.

Zeig doch mal die gesamte Schaltung. Ich bin mir sicher, daß ein 
STM32F4xx das viel besser kann.
Aber bevor Du weiter planst, sieh erst mal zu, ob Du den Rest der ICs 
auch beschaffen kannst ;-)
OP #6874860
Lesenswert?

m.n. schrieb:
> Johannes M. schrieb:
>> Die timer würde ich trotzdem dann nutzen, weil ich ja dann mit einem
>> etwas größeren ATMEGA die ganzen Gatter drumherum sparen kann.
>
> Da es freitags keine Wurst gibt, werden die Salamischeiben heute
> geliefert?
> Mit einem ATmega kannst Du Dir auch den 8251 sparen.
>
> Zeig doch mal die gesamte Schaltung. Ich bin mir sicher, daß ein
> STM32F4xx das viel besser kann.
> Aber bevor Du weiter planst, sieh erst mal zu, ob Du den Rest der ICs
> auch beschaffen kannst ;-)

Für einen STMxxx müsste ich aber erstmal lernen wie man die programmiert 
usw. Das ganze ist ein Hobbyprojekt und mit Avrs kenne ich mich sehr gut 
aus.

Klar könnte ich in der Theorie auch den 8251 gegen ein AVR ersetzen. Die 
Frage ist nur ob der schnell genug ist.

Das ist mehr oder weniger die komplette Schaltung, vom Gerät kommen nur 
die Daten und Steuerleitungen. Die Adresse wird über einen LS138 
bestimmt.

Einzig was fehlt ist ein TTL zu RS232 Wandler, da würde ich einen MAX232 
nehmen.
Gast #6875136
Lesenswert?

Johannes M. schrieb:
> Für einen STMxxx müsste ich aber erstmal lernen wie man die programmiert
> usw. Das ganze ist ein Hobbyprojekt und mit Avrs kenne ich mich sehr gut
> aus.

Die Erwähnung des STM32 war eher scherzhaft gemeint; ich wollte es nur 
machen, bevor irgendjemand absolut auf STM32 bestehen sollte, wie das 
hier wiederholt der Fall ist.

Wenn es ein fertiges Hobbyprojekt ist und funktioniert, würde ich nur 
wie oben beschrieben den MC14411 durch einen Tiny24 ersetzen und den 
Rest der Schaltung so belassen. Voraussetzung dabei ist natürlich die 
Beschaffbarkeit der Bauteile. Die Software kann unverändert bleiben.

Der 68B09 war der Nachfolger vom 6800 und der Vorgänger vom 68K. Alles 
feine CPUs. Als UART hätte eigentlich der 6850 verwendet werden 
"müssen". Wenn ich suche, finde ich bei mir wohl noch eine Stange ;-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren