PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] Pullup bei TTiny 461 geht nicht



Unregistriert
07.09.2016, 10:04
hallo

brauche mal Hilfe

Ich kann eigentlich nur Flowcode und bin dabei mich etwas in C einzuarbeiten.

Ich habe ein Projekt nachgebaut siehe hier ( http://www.elektronik-labor.de/Projekte/TPS11.html )

Die angeblich fehlenden Klammern habe ich zugefügt aber

Die Eingänge schalten bei Berührung der Klemmen wie sie wollen wenn ich den Eingangsport E1-E3 auf den

Ausgangsport A1 - A3 lege

Wenn ich externe Pullups anschliesse geht es wie es soll.

Wer kann mir sagen wass ich Depp falsch mache ?


Das komplette Programm ist auf der Webseite zu sehen


Zuweisung

// Ausgänge
PORTA &= ~(1<<A1) | (1<<A2) | (1<<A3) | (1<<A4); // alle Ausgänge aus
DDRA |= (1<<A1) | (1<<A2) | (1<<A3) | (1<<A4); // als Ausgänge setzen


// Tasten
PORTB |= (1<<S1) | (1<<S2) | (1<<PINB6); // Pull up Widerstände an
DDRB &= ~(1<<S1) | (1<<S2) | (1<<PINB6); // als Eingänge setzen


// Eingänge
PORTA |= (1<<E1) | (1<<E2) | (1<<E3) | (1<<E4); // Pull up Widerstände an
DDRA &= ~(1<<E1) | (1<<E2) | (1<<E3) | (1<<E4); // als Eingänge setzen



Ausgangszuweisung


if (kom == 6) // 6: A = ...
{
if (dat == 1) A = B; // Variablen
if (dat == 2) A = C;
if (dat == 3) A = D;
if (dat == 4) A = PINA & 15; // Port Ausgänge schalten bei ohne ext.Pullup wie sie wollen
if (dat == 5) // Portbits
{
if (!(PINA & (1<<E1))) A = 0;
else A = 1;
}
if (dat == 6)
{
if (!(PINA & (1<<E2))) A = 0;
else A = 1;
}
if (dat == 7)
{
if (!(PINA & (1<<E3))) A = 0;
else A = 1;
}
if (dat == 8)
{
if (!(PINA & (1<<E4))) A = 0;
else A = 1;
}
if (dat == 9) A = ADC1() / 16; // ADC
if (dat == 10) A = ADC2() / 16;
}

- - - Aktualisiert - - -

Warum erledigt?

oberallgeier
07.09.2016, 12:23
.. Ich habe ein Projekt nachgebaut siehe hier ( .. ) Die angeblich fehlenden Klammern habe ich zugefügt .. Das komplette Programm ist auf der Webseite zu sehen ..
- - - Aktualisiert - - -
Warum erledigt?Muss man das verstehen? Also ich versteh nix.

Es fängt damit an, dass ich nicht weiß was die ruhmreiche University of Applied Sciences unter TPS versteht. Hitzeschild für Spaceshuttles - thermal protection shield oder Terephthalsäure oder den sizilianischen Flughafen Trapani schließe ich schon mal aus. Aber was ist´s nun wirklich oder was soll es sein, was ist die klar definierte Aufgabe in ein, zwei Sätzen?


.. Entdeckt hat die TPS ein Professor ..Aha.

Dann ist der Text (für mich) reichlich unleserlich - dafür gibts "CODE"-Fenster die mit dem Lattenzaun "#" erstellt werden können.

Ein verändertes Programm (".. habe ich zugefügt ..") stimmt in vielen Fällen durch klein(st)e Fehler nicht mit dem Original überein - da bleibt die Fehlersuche wahrscheinlich wie ein Lottosechser.

Und abschließend die geheimnisvolle Frage ".. Warum erledigt? .."

Unregistriert
07.09.2016, 14:04
Das ganze Drama gibts hier: http://www.mikrocontroller.net/topic/405799

Peter(TOO)
08.09.2016, 18:50
Warum erledigt?

"Erledigt" ist eine Option, welche ein angemeldeter User setzen kann, wenn seine Frage eben "erledigt" ist.

Bei den nicht registrierten gibt es eine Menge Eintagsfliegen, da setzt das System "Erledigt" automatisch nach einer gewissen Zeit.

MfG Peter(TOO)