IJTagChannel interface

www.kxcad.net Home > Electronic Index > Altium(Protel) Index


Your Ad Here

Overview

 

IJTagChannel's Methods

{-----------------------------------------------------------------}

{Chain Functions                                                  }

Function    OpenChannel : LongBool;                                                

Procedure   CloseChannel;                                                          

Procedure   PlaceAllDevicesInBypass;                                               

Function    GetChainLength : Integer;                                              

Procedure   ScanChain;                                                             

Procedure   DisplayStatus;                                                         

Function    GetDevice(Index : Integer) : IJTagDevice;                              

Function    GetDeviceCount : Integer;                                              

Function    GetStringForDevicesOnChain          : WideString;                      

 

{-----------------------------------------------------------------}

{General Shift Register Functions - Applied to chain              }

Procedure   DoFlush(BitCount : Integer);                                           

Function    ShiftIn32BitPartialData(Data   : LongWord) : LongWord;                 

Function    ShiftInNBitPartialData (Data   : LongWord;

                                    Length : Integer ) : LongWord;                 

 

{-----------------------------------------------------------------}

{General Shift Register Functions - Applied to Single Device      }

Function    ShiftInOutNBitData     (Data        : LongWord;

                                    BitCount    : Integer;

                                    DeviceIndex : Integer): LongWord;              

Function    ShiftInOutString       (Data        : WideString;

                                    DeviceIndex : Integer): WideString;            

Function    ShiftInOutPartialString(Data        : WideString;

                                    DeviceIndex : Integer): WideString;            

Function    ShiftInOutString_IR    (Data        : WideString;

                                    DeviceIndex : Integer): WideString;            

Function    DataRegisterLoad       (Data        : LongWord;

                                    BitCount    : Integer;

                                    DeviceIndex : Integer) : LongWord;             

Procedure   LoadInstruction        (Instruction : LongWord; DeviceIndex : Integer);

Procedure   SelectInstruction      (Instruction : LongWord; DeviceIndex : Integer);

Function    ReadCaptureIR          (DeviceIndex : Integer) : LongWord;             

Function    DeviceOnline           (DeviceIndex : Integer) : LongBool;             

Function    CaptureInstructionRegister(DeviceIndex : Integer) : LongWord;

 

{-----------------------------------------------------------------}

{TAP State Machine Controller Functions                           }

Procedure   StartShiftDataIn;                                                      

Procedure   NextState(ATMS : Integer);                                             

Procedure   ResetTAP;                                                              

Procedure   ForceTo_RUN_TEST_IDLE;                                                 

Function    CurrentTapState : TTapState;                                           

Procedure   MoveToState_SHIFT_IR;                                                  

Procedure   MoveToState_SHIFT_DR;                                                  

Procedure   MoveFromState_EXIT1_IR_ToState_SHIFT_DR;                               

Procedure   MoveFromState_SHIFT_IR_ToState_RUN_TEST_IDLE;                          

Procedure   MoveFromState_SHIFT_DR_ToState_RUN_TEST_IDLE;                          

Procedure   MoveFromState_EXIT1_IR_ToState_RUN_TEST_IDLE;                          

Procedure   MoveFromState_EXIT1_DR_ToState_RUN_TEST_IDLE;                          

Procedure   SetTCK(N : Byte);                                                      

Procedure   SetTDO(N : Byte);                                                      

Procedure   SetTDI(N : Byte);                                                      

Procedure   SetTMS(N : Byte);                                                      

Function    GetTCK : Byte;                                                         

Function    GetTDO : Byte;                                                         

Function    GetTDI : Byte;                                                         

Function    GetTMS : Byte;                                                         

Procedure   Write;                                                                 

Procedure   Read;                                                                  

 

{ This SPI functionality should be in a seperate interface                        }

{ Perhaps we would have IDevice and IDeviceChannel, from which we could inherit   }

{ IJTagDevice, ISPIDevice, II2CDevice and their corresponding channel objects.    }

Procedure   SPI_SetDataPin  (N : Byte);                                            

Procedure   SPI_SetClockPin (N : Byte);                                            

Procedure   SPI_SetSelectPin(N : Byte);                                            

Function    SPI_GetDataPin : Byte;                                                 

Function    SPI_SendReceiveByte(DataByte : Byte   ) : Byte;                        

Procedure   SPI_SendAddress24  (Address  : Integer);                               

Procedure   SPI_SendAddress32  (Address  : Integer);                               

Procedure   SPI_BitDelay;                                                          

Function    SPI_SelectDevice(BoardAddress  : Byte;

                             DeviceAddress : Byte) : LongBool;                     

IJTAGChannel's Properties

Property    TCK : Byte Read GetTCK Write SetTCK;

Property    TDO : Byte Read GetTDO Write SetTDO;

Property    TDI : Byte Read GetTDI Write SetTDI;

Property    TMS : Byte Read GetTMS Write SetTMS;

Your Ad Here