PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Int_X



Martinius11
24.03.2010, 10:24
Hi,

es gibt doch am rp6 einige int_ ports ich kann diese aber nicht im
rp6 datenblatt zum prozessor finden an welchen port liegen die dann
an?

Danke #-o

_|Alex|_
24.03.2010, 13:46
am XBus liegen welche

Martinius11
24.03.2010, 13:51
es geht mir ja darum wie ich sie deffinieren bzw. high und low setzen muss.

radbruch
24.03.2010, 14:11
Hallo

Im Anhang befindet sich ein Ausschnitt aus dem RP6-Schaltplan der die Funktionen der Mega32-Pins zeigt. Innen die Atmel-Bezeichnungen, rechts die von der RP6-Library verwendeten Bezeichnungen. Wie man erkennen kann sind die externen Interrupteingänge INT0, INT1 und INT2 schon genutzt. E_INT1 an PA4 ist offensichtlich kein echter Interrupteingang.

Eine vollständige Auflistung aller zusätzlichen Funktionen der I/O-Pins findet man im Datenblatt des Mega32 (http://atmel.com/dyn/resources/prod_documents/doc8155.pdf) unter "Alternate Port Functions".

Gruß

mic

Martinius11
24.03.2010, 16:21
wenn ich das richtig verstanden habe kann ich nur int_1 von diesen vier als
PWM nutzen, oder?

radbruch
24.03.2010, 16:48
Hallo

Die "echten" INT-Eingänge sind ja schon belegt. Möglicherweise nimmt die Beschaltung Schaden, wenn du diese als Ausgang verwendest:

INT0 und INT1 (PD2+3) sind die Eingänge der Radsensoren, INT2 (PB2) ist direkt am Ausgang des TSOP angeschlossen. Und dieser mag es gar nicht, wenn man im einen Pegel auf den Ausgang drückt. Frei, aber mit 10k-PullDown, wäre nur der E_INT1 an PA4.

Was hast du denn vor, bzw. welche Art von PWM willst denn ausgeben? Vielleicht findet sich ein besserer Anschluss dafür.

Gruß

mic

Martinius11
24.03.2010, 17:09
ich wolte einen Roboterarm bauen und da sind 3 PMWs zuwenig,
aber noch ne frage warum werden diese anschlüße dann auf die experimentierplatiene gelegt ?

radbruch
24.03.2010, 18:27
Hallo


ich wollte einen Roboterarm bauen und da sind 3 PMWs zuwenig..Macht echt Spass dir alle Infos einzeln aus der Nase zu ziehen. Um es etwas abzukürzen nehme ich mal an, du willst Servos ansteuern. Dazu kann man wunderbar die Erweiterungspunkte IO1-4, BPL und BPR verwenden. Das quasi die LEDs SL1-6 und in deren Nähe findet man diese Punkt auch auf der Platine. Zusätzlich gibts noch ADC0 und ADC1. Damit hättest du Platz für 8 Servos, viel mehr kann der Mega32 ohne kleine Tricks eh nicht ansteuern...

Warum sich alle INT-Anschlüsse am XBUS befinden ist mir auch nicht ganz klar. Ich würde die nicht nutzen, wenn sie auf der Baseplatine nicht von der restlichen Elektronik getrennt wurden. Aber dann müßte man auf die Encoder oder den Empfang von RC5 verzichten. Das würde ich nicht machen. Die einzige Info die ich dazu gefunden habe:
http://www.arexx.com/forum/viewtopic.php?f=19&t=963&p=4041

Gruß

mic

RP6fahrer
16.07.2011, 19:15
Guten Abend! Ich habe bis jetzt noch keinen passenden Beitrag gefunden dazu.
Ich habe auch mal eine Frage zu den INTU. Kann man da einfach den INT Port vom PCF8574 anschließen, oder muss man da noch was beachten. Ich habe nämlich seit kurzem den PCF und habe aus dem Datenblatt gelesen, dass es dort einen Interrupt Ausgang gibt. Und den möchte ich mit einbeziehen, aber weiß noch nicht wie.
Vielen Dank schon mal für eure Hilfe
LG
RP6fahrer

Dirk
17.07.2011, 01:39
@RP6fahrer:
INTU ist auf der RP6 Base nicht mit dem uC verbunden.
Auf der Zusatzplatine RP6 Control M32 ist INTU auch nicht verbunden, kann aber mit INT1 (PD3) des uC verbunden werden.

RP6fahrer
18.07.2011, 09:17
Vielen Dank,
Also das heißt, ich kann einfach INT1 und INTU brücken und somit kann ich vom PCF8574 den INT Ausgang jetzt zum Beispiel auf INT1 direkt rauflöten und über den Interrupt von INT1 darauf reagieren?

SlyD
18.07.2011, 10:55
Hallo,

nein Du solltest da gar nix brücken.

Die INT Leitungen sind nur auf dem RP6-M32 (und M128 ) mit "echten" Interrupt Signalen vom Mikrocontroller verbunden auf der Base ist das nicht notwendig das ist dort als "Interrupt Ausgang" für das I2C Slave Programm gedacht um den Master über Statusänderungen zu informieren ohne das dieser eine Busabfrage starten muss.
Kann natürlich auch als normaler I/O Port verwendet werden um per Software zu prüfen ob sich was geändert hat. Das ist ohnehin einfacher im eigenen Programm umzusetzen als mit den Interrupts zu hantieren (wird in der Master Lib übrigens auch so gemacht damit es keine Probleme gibt).

Die ganzen anderen Interrupt Signale sind für Erweiterungen gedacht.

INTU ist standardmäßig nirgendwo mit irgendwas verbunden und kann OPTIONAL für eigene Erweiterungen verwendet werden.
(auf der RP6-M128 kann man das umjumpern - auf der RP6-M32 sind die Jumper nicht bestückt hier muss man Leiterbahnen durchtrennen und dann selbst jumper auflöten - macht aber für Deine Anwendung keinen Sinn, häng es einfach an INT2, wenn Du das RP6-M32 Board verwendest, dann jedoch nicht an INT1 da dieser ja schon für die Kommunikation mit dem Slave Programm verwendet wird! Wenn Du das RP6-M32 Board nicht verwendest kannst Du es auch mit INT1 verbinden - Portrichtung vorher passend einstellen! )


MfG,
SlyD

RP6fahrer
27.07.2011, 16:32
Okay,Danke!
INT1 ist, sofern ich es richtig verstanden habe, dafür da, dass wenn die Base eine Änderung erfasst, dann macht sie darüber einen Interrupt. Kann ich an INT2 auch mehrere PCFs ranhängen, oder muss dabei was beachten(also z.B. Diode davor schalten oder so)?

MfG RP6fahrer

SlyD
27.07.2011, 17:07
INT1 ist, sofern ich es richtig verstanden habe, dafür da, dass wenn die Base eine Änderung erfasst, dann macht sie darüber einen Interrupt.

Ja.


Kann ich an INT2 auch mehrere PCFs ranhängen ?

Soweit ich mich erinnere sind das OpenDrain / OpenCollector Ausgänge müsste also direkt so gehen - schau aber vorher nochmal ins Datenblatt.

MfG,
SlyD