Campbell Hausfeld SDM-CAN Manual Do Utilizador

Página de 74
Section 4.  Programming the CR9000 and CR5000 
4.2.1  Reading CAN Data 
The following example reads a 16 bit engine speed value from a CAN network 
running at 250K baud. 
'Set scan rate 
Const PERIOD = 1                     'Scan interval number 
Const P_UNITS = 2                    'Scan interval units (Secs) 
'\\\\\\\\\\\\\\\\\\\\\\\\\ CANBUS CONSTANTS ////////////////////// 
'------------------- Physical Network Parameters ----------------- 
Const TQUANT = 4                     ')Set SDM-CAN to 250K 
Const TSEG1 = 5                      ')Network speed 
Const TSEG2 = 2                      ') 
'---------------------- Data Frame Parameters -------------------- 
'___________________________CANbus Block1_________________________ 
'Collect and retrieve 16 bit data value 
'Data type 2, unsigned integer, least significant byte first 
Const CANREP1 = 1                   'Repetitions 
Const ADDR1 = 0                     'SDM address of SDM-CAN Module 
Const DTYPE1 = 2                    'Collect and retrieve data values   
Const STBIT1 = 33                   'Start position in data frame 
Const NBITS1 = 16                   'Number of bits/value 
Const NVALS1 = 1                    'Number of values  
Const CMULT1 = 0.4                  'Multiplier 
Const COSET1 = 0                    'Offset 
Dim CANBlk1(CANREP1)                'Dimensioned source 
'\\\\\\\\\\\\\\\\\\ ALIASES & OTHER VARIABLES ////////////////// 
Alias CANBlk1(1) = Engine_Speed     'Assign an alias name to CANBlk1(1) 
'\\\\\\\\\\\\\\\\\\\\\\\\\\\ PROGRAM /////////////////////////// 
BeginProg                           'Program begins here 
'MainSequence 
Scan(PERIOD,P_UNITS,0,0)      'Scan once every 1 Secs, non-burst 
'__________________________ CAN Blocks __________________________ 
'Retrieve Data from CAN network  
CanBus(CANBlk1(),ADDR1,TQUANT,TSEG1,TSEG2,217056256, 
DTYPE1,STBIT1,NBITS1,NVALS1,CMULT1,COSET1) 
    
 
Next Scan                     'Loop up for the next scan 
EndProg                             'Program ends here
 
4-3