diff --git a/ADbasic_program_buffered.bas b/ADbasic_program_buffered.bas index d8fb6e4708ee7bdc4dbd3ee72ce8852a3d57f2c0..687567eff00590bbcfc63ce5474e678babc32d6f 100644 --- a/ADbasic_program_buffered.bas +++ b/ADbasic_program_buffered.bas @@ -103,10 +103,9 @@ DIM set_pid[AOUTNO] AS LONG ' PID selection for each AOUT DIM act_values[PIDNO] AS LONG ' Analog values measured from AINs -'======================================================================================================================================== -'= INIT = -'======================================================================================================================================== - +'========================================================================= +'= INIT = +'========================================================================= init: 'Set Processdelay to 2us PROCESSDELAY = 2000 @@ -121,7 +120,7 @@ init: nextPidTime = DATA_4[1] nextAOutTime = DATA_1[1] - '===========================================================INITIALIZE TICOS============================================================ + '=========================== INITIALIZE TICOS ========================== 'Set DIO channels as outputs P2_DigProg(DIO1, 1111b) 'Channel 0-31 as outputs P2_DigProg(DIO2, 1111b) 'Channel 32-63 as outputs @@ -151,15 +150,14 @@ init: P2_Set_Par(DIO1,1,3,2) P2_Set_Par(DIO2,1,3,2) - '=============================================================PID SETTINGS============================================================== - + '=========================== PID SETTINGS ============================ 'Initialize Integrator and Difference FOR i=1 TO AOUTNO pid_sum[i]=0 pid_prev_dError[i]=0 NEXT i - '===========================================================INITIALIZE AOUTS============================================================ + '=========================== INITIALIZE AOUTS ========================== 'Initialize set values of all output channels FOR i=1 TO AOUTNO set_target[i]=DATA_3[i] 'The initial output values are always given for all channels @@ -173,7 +171,7 @@ init: P2_Start_DAC(AOUT1) P2_Start_DAC(AOUT2) - '============================================================OTHER SETTINGS============================================================= + '=========================== OTHER SETTINGS ========================== 'Set DIO of T12 as input CPU_Dig_IO_Config(10b) @@ -185,8 +183,7 @@ init: P2_Set_Led(AOUT1, 1) P2_Set_Led(AOUT2, 1) - '==========================================================AIN CONFIGURATION=========================================================== - + '========================== AIN CONFIGURATION ========================== 'Set P2_ADCF_Mode - leave it set standard (=0) here since later the sampling rate is set by hand P2_ADCF_Mode(2^(AIN1-1),0) 'Average over 4 sample values @@ -219,9 +216,10 @@ init: P2_DIGOUT_LONG(DIO1,DATA_11[1]) P2_DIGOUT_LONG(DIO2,DATA_21[1]) - '======================================================================================================================================== - '= EVENT LOOP = - '======================================================================================================================================== + +'========================================================================= +'= EVENT LOOP = +'========================================================================= EVENT: timer = Read_Timer_Sync() @@ -231,7 +229,7 @@ EVENT: P2_set_par(DIO2,1,20,1) 'starte tico event Modul 5 endif - '======================================================== READ ANALOG IN CARDS ======================================================== + '======================== READ ANALOG IN CARDS ========================= 'Read act_values at all ADC Channels P2_READ_ADCF8(AIN1, act_values, 1) 'READ CHANNEL 1-8 OF AIN MODULE 1 @@ -240,7 +238,7 @@ EVENT: 'Start conversion at all ADC Channels Synced for next Event P2_Sync_All(001100b) - '=======================================================CALCULATE NEW SET VALUES ======================================================= + '====================== CALCULATE NEW SET VALUES ======================= FOR i=1 TO AOUTNO pidn = set_pid[i] @@ -274,7 +272,7 @@ EVENT: NEXT i - '======================================================== SET NEW AOUT VALUES ======================================================== + '========================= SET NEW AOUT VALUES ========================= 'Write values to AOUT Cards P2_Write_DAC8(AOUT1,set_output,1) ''sende neue stellwerte an die Analog out Karten P2_Write_DAC8(AOUT2,set_output,9) @@ -284,6 +282,8 @@ EVENT: inc processIdx + + '======================= SAVE MEASURED AIN VALUES ====================== ' Write ADC Values IF (aInIdx < A_IN_BUFFER) THEN FOR i=1 to AINNO @@ -297,12 +297,12 @@ EVENT: ENDIF 'aInIdx < A_IN_BUFFER - '### Programmterminierung + '=========================== CHECK END OF RUN ========================== IF (processIdx >= par_2) THEN END 'end loop when last last timing event completed ENDIF - ' Update target values + '========================= Update target values ======================== IF(nextAOutTime <= processIdx) THEN DO inc eventIdx @@ -311,7 +311,7 @@ EVENT: nextAOutTime = DATA_1[eventIdx+1] ENDIF - ' Update pid target + '========================== Update pid target ========================== IF(nextPidTime <= processIdx) Then DO inc pidIdx @@ -332,7 +332,7 @@ EVENT: '### Debug Timer timer=READ_TIMER_SYNC() - timer - ' TO BE REMOVED IN REAL USAGE !! + ' CAN BE REMOVED IN REAL USAGE IF (processIdx<MAX_EVENTS) THEN DATA_31[processIdx] = timer ENDIF