Forum: Mikrocontroller und Digitale Elektronik Planung eines 8515-Testboards


von TheME (Gast)


Lesenswert?

Hi.
Möchte mir für mein AT90S8515 ein Experimentierboard bauen.

Folgendes habe ich bereits vorgesehen:
- RS232-Port
- LEDs für Ausgänge (k.A. wie viele)
- Taster für Eingänge (k.A. wie viele), auf PullUP/Down umschaltbar
- 4x7-Segment-Anzeige an einem Port
- Pfostenverbinden für jeden Port
- ISP-Anschluss
- Spannungsstabilisierung mit 78S05
- Pull-Up/Down-Umschaltung für jeden Port

So, das wäre mal das Gröbste.

Da ich noch nicht lange mit µCs arbeite, kenne ich mich auch nicht mit
allen Funktionen aus.
Was sollte ich noch auf das Experimentierboard packen, um (fast) alle
Möglichkeiten/Funktionen des µC nutzen zu können?

von crazy horse (Gast)


Lesenswert?

Zuerst einmal: der 8515 ist eine aussterbende Spezies, setz lieber
gleich auf den Mega8515, und damit auch den PortE beachten.
An deiner Stelle würde ich aber lieber einen Typ mit A/D-Wandler
nehmen,  unsere Welt ist nun mal grösstenteils analog, da käme dann
wiederum der Mega8535, Mega16 oder Mega32 in Frage. Wenn doch 8515,
solltest du auch ein Adresslatch/Ram vorsehen - nur dann macht es auch
Sinn, den überhaupt einzusetzen.
Des weiteren würde ich eine LCD-Schnittstelle vorsehen.
Wirst du auch ab und zu mal brauchen: D/A-Wandler

von TheME (Gast)


Lesenswert?

Eigentlich möchte ich schon den 8515 bzw. Mega8515 nutzen, denn ich
besitze bereits 3 Stück.
Ein LCD-Anschluss möchte ich eigentlich nicht vorsehen, weil schon
jeder Port einen eigenen Pfostenverbinder haben soll. Das Display kann
man dann da extern anschließen.

Folgende Fragen habe ich noch:
Welche der von mir vorgesehenen Aktoren/Sensoren soll ich an welchen
Port setzen?

Welche Funktion haben haben die Pins
T0  T1    AIN0  AIN1
/SS      INT0  INT1
/WR  /RD    ICP  ALE
und was sollte man dafür vorsehen?

von Thomas O. (Gast)


Lesenswert?

Hallo,

also ich würde auch auf einen mit Analog-Wandler setzen. Schau das du
sie bei eBay los wirst. Ohne AD-Wandler wird man nicht glücklich gerade
wenn man ein Universalboard bauen will sollte man nicht darauf
verzichten. Wenn du darauf verzichtest gibt es noch eine andere
Möglichkeit eine Spannung zu messen mann schaltet die Spannung auf
einen Kondensator und mist die Zeit bis der Komperator auf 1 geht.
davor muss man halt den Kondensator voll entladen. Wenn du also einen
mit ADC verwendest bauen ein Poti ein damit du die Referenzspannung des
ADC komfortabel einstelen kannst. Man benötigt das um eine Verstärkung
zu erreichen. Angenommen die Referenzspanung ist 5V, man will aber
kleine Spannungen zw. 0V und 1Volt messen, dann hätte man bei 0V den
Wert 0 und bei 1 Volt den Wert 51also eine Auflösung von 51 Schritten
also 0,02V kleinste Einheit. Wenn man jetzt die Referenzspannung auf
1Volt senkt dann hat man zw. 0V und 1V eine Auflösung von 255 Schritten
und kann 5mal genauer messen, kleinster Schritt 0,004V

von Jim (Gast)


Lesenswert?

Naja, je nach Anwendung kann es auch ein Mega162 mit externem Speicher
sein. Hängt halt davon ab, was man so braucht.
Und einen A/D-Wandler klemmt man schnell mal an, aber Speicher lässt
sich nur umständlich und aufwendig ohne Speicherinterface ansteuern.
Die 8515er würde ich allerdings auch in die Tonne kloppen, so teuer
sind die aktuellen Megas nun doch nicht.

von TheME (Gast)


Lesenswert?

Ich sage es einfach mal so:
Ich möchte das Testboard NUR für den 8515 bauen.
Wenn ich ein Testboard für alle 40-poligen µCs bauen würde, dann wäre
das Ding ja riesengroß.
Außerdem habe ich auch ein kleines Testboard für den 2313 gebaut.


Zurück zu meiner Frage:

Welche Funktion haben haben die Pins
T0  T1    AIN0  AIN1
/SS      INT0  INT1
/WR  /RD    ICP  ALE
und was sollte man dafür vorsehen?

von Jim (Gast)


Lesenswert?

Das steht alles im Datenblatt.

von TheME (Gast)


Lesenswert?

Das hilft mir aber auch nicht weiter.
Ich bin Einsteiger und kein Profi und außerdem hätte ich auch gerne ein
Beispiel, mit dem die Funktion jeden einzelnen Pins verdeutlicht wird.

von Thomas O. (Gast)


Lesenswert?

Hallo,

also die Int0 und Int1 Funktion kann ich dir erklären. Wenn an Pin mit
der Funktion Int1 was auftritt wird eine Programmstelle(Routine)
angesprungen und das restliche Programm kurz unterbrochen, danach geht
wieder dort weiter wo aufgehört wurde. Man kann einstellen wann diese
Routine angesprungen wird z.b. bei einem Flankenwechsel High auf Low
oder von Low auf High oder bei jedem Flankenwechsel.

Das hat den Vorteil das man im Programm nicht Pollen(warten) muss
sondern im Programm weiter machen kann und wenn dann der Fall der Fälle
auftritt wird automatisch an die Interruptroutine gesprungen..
z.b.  Polling
Pinabfrage:
Schauen ob Pin1 high(1) ist
if Pin1=0 goto Pinabfrage µC springt immer hin und her und kann nicht
weiterarbeiten
Rechnen 1+1

Interruptgesteuert
Rechne 1+1
Rechne 1+2
Rechne 1+3
Rechne 1+4
Rechne 1+5

Interruptroutine:
Schalte Pin 5 auf high um anzuzeigen das Pin 1 high ist.
gehe zurück zum Programm.

von crazy horse (Gast)


Lesenswert?

T0,T1
kann als Taktquelle für die internen Zähler (Timer0, Timer1
genutzt werden (soweit ich mich erinnere, habe ich das noch nie getan)
AIN0  AIN1
Eingänge für den internen Analog-Komperator
/SS
gehört zur SPI-Schnittstelle
INT0  INT1
externe Interrupt-Eingänge
/WR  /RD
Steuerausgänge, wenn externes RAM genutzt wird (write bzw read)
ALE
wird auch nur bei externem RAM gebraucht, steuert die Datenübernahme in
das externe Adresslatch, damit wird aus einem 16bit-Bus ein 16+8bit-Bus
ICP
input capture Eingang für den Timer1, ein Signal speichert den
aktuellen  Zählerstand und kann einen Interrupt auslösen

von Tobi (Gast)


Lesenswert?

steht alles im datenblatt. wenn du dir die arbeit machen würdest das
auch nur mal anzuschaun würdest du wissen worum es sich bei diesen pins
handelt. auch als anfänger muss man sich mal hin und wieder selber was
erarbeiten! lad dir von www.atmel.com das datenblatt runter und such da
nach den pin-namen. wenn du die funktion hast gehst du zu google und
lässt dir da ein paar beispiele anzeigen die diese pins/funktion
verwenden

von Jim (Gast)


Lesenswert?

Er ist doch Einsteiger und kein Profi, da kann man schließlich nicht
wissen, dass es Suchmaschinen gibt und dass man auch ein Minimum an
Eigeninitiative ergreifen kann...

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.