PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RNBFRA mit Interrupt



Unregistriert
27.01.2015, 21:03
Hallo,

ich versuche gerade mit dem Interrupt vom Atmega32 bzw. PCF klarzukommen.

Eigentlich möchte ich nur einen der Eingänge von High nach Low manuell schalten (kurzschließen), wobei ein Interrupt beim PCF ausgelöst werden sollte, der beim Atmega32 gefangen werden soll.

Leider geschieht nach dem Kurzschluss nichts?

Kann mir hier jemand weiterhelfen?

Ich würde gerne "interrupt" im Terminal lesen ;)

Danke!

****************************************


$regfile = "m32def.dat" ' oder bei Mega16 $regfile = "m16def.dat"

Const Writeeingabeport_adr = &H7E 'I2C Adr PCF 2
Const Readeingabeport_adr = &H7F 'I2C Adr PCF 2

Dim I2cdaten As Byte

Dim I2cdaten2 As Byte 'Datenbyte aus PCF8574

Dim B1 As Byte
Dim I As Byte

$baud = 9600
$crystal = 8000000 'Quarzfrequenz
Config Scl = Portc.0 'Ports fuer IIC-Bus
Config Sda = Portc.1






Config Pinb.2 = Input
Config Portb.2 = 0
Config Portd.3 = 1

Config Int2 = Rising
Enable Int2
Enable Interrupts

On Int2 Int2_isr


Portd.6 = 0 'Schrittmotoren erst mal ausschalten
I2cinit

'******** Diese 4 Befehle sind nur ab RNBFRA Version 1.2 (nicht in V 1.1)
' notwendig und bzw. möglich (erweiterte Energiesparfunktion und LED´s)
' Bei Board 1.1 bitte auskommentieren oder löschen
I2cstart
I2cwbyte &H74 'Schreibbefehl an PCF3 schicken
' Led´s ein ,Motorendstufen ein, Port-Peripherie ein, RBN-Bus Sleep Modus aus (also Peripherie aktiv)
I2cwbyte &B00000010 'Datenbyte an PCF3
I2cstop
'*********

I = 0
I2cdaten = 1



Do
Print "nichts"
Waitms 1000

I2cstart
I2cwbyte Readeingabeport_adr 'Lesebefehl an PCF schicken
I2crbyte I2cdaten , Nack 'Datenbyte von PCF lesen
I2cstop

Print I2cdaten



Loop

End



Int2_isr:
Print "interrupt"
Return