PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : rnmega2560 USB Interrupt durch USB auslösen



AndiDC
23.03.2007, 10:08
Hi,
Folgendes Problem bekomme ich leider nicht in den Griff:
Ich habe einen Pc, an dem per USB das RN Mega2560 Board angeschlossen ist. Nun möchte ich vom PC aus einen Wert an das Board senden, der dann dort einen Interrupt auslöst und den Wert eines PWM Signals stellt.
Leider funktioniert der Interrupt nicht, hat jemand eine Idee was ich an folgendem Code verändern muss, damit der Interrupt funktioniert?
Das ganze soll irgendwann einmal einen Fahrtregler eines RC Cars steuern.


'$prog , 255 &B11011001 ,
$regfile = "m2560def.dat"
$hwstack = 82
$framesize = 68
$swstack = 68

$crystal = 16000000

Declare Sub Ausgabe(s As String)

Config Com4 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
Open "com4:" For Binary As #4 'USB Buchse

Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Prescale = 1

Dim Meldung As String * 10
Dim Pwmwert As Integer
Dim Eingabe As Byte

On Urxc Onurxc
Enable Interrupts
Enable Urxc

Do

Loop

Onurxc:

Eingabe = Udr
Compare1a = Eingabe
Print #4 , Eingabe

Return

End


Vielen Dank für Eure Hilfe!

linux_80
23.03.2007, 18:32
Hallo,

der M2560 hat 4 UARTs, dazu muss auch beim aktivieren des IRQ die richtige UART ausgewählt werden, USB ist an UART3 deshalb URXC3 verwenden.

AndiDC
26.03.2007, 07:52
Hi, leider bekomme ich dann das selbe Problem wie in feolgendem Beitrag:

Ich verwende Bascom 1.11.8.3, so wie es von robotikhardware auf CD mitgeliefert wird.

https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=23893