Forum: Mikrocontroller und Digitale Elektronik interner Aufbau des ALE beim 8051


von MC (Gast)


Lesenswert?

Hi Leute,

habe mal eine Frage an euch.
Wie ist der ALE-Ausgang beim 8051 (genau: at89c51) intern aufgebaut? 
Mein Problem ist nämlich, dass der Ausgang NUR mit CMOS-Bausteinen 
arbeitet. Wollte ursprünglich einen einfachen Inverter aus einem 
Transistor dahinterhängen (für einen 74hc574). Das funktionierte aber 
leider nicht. Mit normalen TTL-Intervertern (74ls04) klappte es 
genausowenig. Lediglich mit einem 74hct04 funktioniert es?!
Der Aufbau der Ports an sich ist mir bestens bekannt, nur zu den 
Steuerleitungen findet man nicht all zu viel Infos im netz.

mfg,
MC

von Peter D. (peda)


Lesenswert?

Das liegt daran, daß man mit ALE einen 74HC573 steuert und keinen 
74HC574.
Mit dem 574 stimmen einfach die Timings nicht mehr, die Adresse liegt zu 
spät an.
Daß es mit dem 74HCT04 zu funktionieren scheint, ist reiner Zufall.


Einen Transistor kannst Du höchstens für LEDs oder Relais benutzen, aber 
bei Logiksignalen ist er viel zu langsam.


Peter

von MC (Gast)


Lesenswert?

den 74x574 kann man auch benutzen. man muss lediglich dafür sorgen, dass 
bei fallender flanke des ALE das LOW-Adressbyte übernommen wird. dies 
geschieht über einen inverter. Der aufbau an sich funktioniert so auch 
einwandfrei.
ich dachte ein bc557 ist als signaltransistor schnell genug :-(
aber warum klappt das ganze mit ttl-bausteinen nicht?

von Falk B. (falk)


Lesenswert?

@  MC (Gast)

>den 74x574 kann man auch benutzen. man muss lediglich dafür sorgen, dass
>bei fallender flanke des ALE das LOW-Adressbyte übernommen wird. dies
>geschieht über einen inverter. Der aufbau an sich funktioniert so auch
>einwandfrei.

Warum zum Geier wollen die Leute es immer unnötig kompliziert machen?

>ich dachte ein bc557 ist als signaltransistor schnell genug :-(

Ist er auch, aber nur, wenn man ihn richtig beschaltet. Aber der Aufwand 
lohnt sich nicht, siehe oben!

>aber warum klappt das ganze mit ttl-bausteinen nicht?

Wahrscheinlich weil dein Prozessor zu schnell getaktet ist und dein 
TTL-IC zu langsam ist.

MfG
Falk

von MC (Gast)


Lesenswert?

>Warum zum Geier wollen die Leute es immer unnötig kompliziert machen?
Warum zum Geier wollen die Leute einem immer die eigene Meinung 
aufzwängen?

ich mache es vllt so kompliziert, weil ich gerade einen versuchsaufbau 
habe, an dem ich JETZT arbeite und JETZT habe ich nur 74x574. die 
74573er kommen SPÄTER in die schaltung, wenn sie geliefert wurden.

von Name (Gast)


Lesenswert?

Dann würde ich einfach mal versuchen den MCU langsam laufen lassen...

von Peter D. (peda)


Lesenswert?

MC schrieb:
> den 74x574 kann man auch benutzen. man muss lediglich dafür sorgen, dass
> bei fallender flanke des ALE das LOW-Adressbyte übernommen wird. dies
> geschieht über einen inverter. Der aufbau an sich funktioniert so auch
> einwandfrei.

Aber nur, wenn man den 8051 langsamer taktet.

Daß es mit dem LS04 nicht geht, zeigt deutlich, daß Dein Timing 
oberkritisch ist.
Die 8051 können mindestens eine TTL-Last (1,6mA) treiben, am Pegel 
liegts also nicht.

Mit welcher Quarzfrequenz soll den der AT89C51 laufen?


Peter

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.