Hallo Leute,
ich habe eine Kleines Programm auf einem Mega 128 unter Verwendung eines Bascom-Beispieles gemacht und es funktioniert.
Jetzt möchte ich es auf einemAT90PWM3 zum laufen bekommen, doch schon der Kompiler macht mir einen Strich durch die Rechnung, da er
"Enable URXC" als Fehler bemängelt..
Ich habe im Datenblatt von Atmel und ich den Definitionsdateien von Bascom nachgeschaut - den Interrupt sollte es meiner Meinung nach genau so wie beim Mega128 geben .
es gibt doch bestimmt die Möglichkeit ohne die Hochsprachenbefehle von Bascom den Interrupt URXC zu aktivieren oder ?Code:'********** Configuration Settings ********** $regfile = "at90pwm2_3.dat" ' use AT90PWM3 definitions $framesize = 32 $swstack = 32 $hwstack = 32 $crystal = 16000000 $baud = 19200 On Urxc RS232 Enable Urxc 'handler seriale Enable Interrupts Open "com1:" For Binary As #1 'Ausgabe über serielle Schnittstelle '############################################ '#### Constanten ############################### '############################################ Const Ja = 1 Const No = 0 Const Vb6 = No Const Mode_pos = 0 Const Mode_vel = 1 Const Mode_trp = 2 Const Mode_velp = 3 Const Mode_idle = 4 Const True = 1 Const False = 0 Const E_n_ramps = 1 ' E_N_RAMPS to init PSC 0 ramp number 4,2,1,0(centered) */ Const E_overlapped = 1 '/* E_OVERLAPPED to test with overlapped values in one ramp mode */ Const E_retrig_0 = 1 '/* E_RETRIG_0 to enable retrigger O input */ '############################################# '#### Variablen ################################## '############################################# Dim Dead_time_0 As Integer Dim On_time_0 As Integer Dim Dead_time_1 As Integer Dim On_time_1 As Integer Dim Dummy As Byte Dim Tx_enable As Bit Dim Str_tx_1 As String * 20 Dim Comando As String * 30 Dim Comando_old As String * 30 Dim Char(20) As Byte Dim Cmd_ar(5) As String * 10 Dim N_cmd As Byte Dim M As Byte Dim I As Word Dim U As Word Dim O As Word Do If Tx_enable = 1 Then 'permetti la trasmissione Tx_enable = 0 Print Str_tx_1 'trasmetti la stringa End If Loop Rs232: #if Vb6 Input #2 Comando Noecho 'se usato con vb6 #else Char(1) = Inkey(#2) 'se usato con terminal Char(1) = Ucase(char(1)) If Char(1) = Chr(13) Then 'Print #endif '........................................................................... If Comando = "" Then Comando = Comando_old N_cmd = Split(comando , Cmd_ar(1) , " ") 'splittet den String in N_cmd - Teile ( erstes in Cmd_ar(1) ) M = Val(cmd_ar(2)) 'returns number of characters in String '...................................................................... Select Case Cmd_ar(1) Case "RSTF" Print "(0 RST Program, 0)" 'Start Watchdog '.......................................................... Case "MADE" Print "(0 , 0)" '.......................................................... Case "VER" Print "(0 Ver 0.1 10.09.2009, 0)" '.......................................................... '.......................................................... Case "Start" Print " Start " '.......................................................... Case "Stop" Print " Stop " '.......................................................... Case "VOLT?" Tx_enable = 1 '.......................................................... Case "AMP!" Tx_enable = 1 '.......................................................... Case "Rpppl!" 'set PID parameter Print "(" ")" '.......................................................... Case "AMP?" 'get PID parameter Print "(" ")" 'get PID parameter '.......................................................... Case "Rppl?" Print "(" ")" '.......................................................... Case "FRQ?" Print "(" ")" '.......................................................... Case "Mode" 'set zero position Print "(" ")" Case Else '.......................................................... End Select Comando_old = Comando Comando = "" '...................................................................... #if Vb6 #else Else Comando = Comando + Chr(char(1)) ' zusammensetzen des Befehls im Terminal-Mode Print Comando ; Chr(13); End If #endif
vielen dank.
olby2







Zitieren
Lesezeichen