Lumitron Lumitron ECS-320A manuel d'utilisation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63

Aller à la page of

Un bon manuel d’utilisation

Les règles imposent au revendeur l'obligation de fournir à l'acheteur, avec des marchandises, le manuel d’utilisation Lumitron Lumitron ECS-320A. Le manque du manuel d’utilisation ou les informations incorrectes fournies au consommateur sont à la base d'une plainte pour non-conformité du dispositif avec le contrat. Conformément à la loi, l’inclusion du manuel d’utilisation sous une forme autre que le papier est autorisée, ce qui est souvent utilisé récemment, en incluant la forme graphique ou électronique du manuel Lumitron Lumitron ECS-320A ou les vidéos d'instruction pour les utilisateurs. La condition est son caractère lisible et compréhensible.

Qu'est ce que le manuel d’utilisation?

Le mot vient du latin "Instructio", à savoir organiser. Ainsi, le manuel d’utilisation Lumitron Lumitron ECS-320A décrit les étapes de la procédure. Le but du manuel d’utilisation est d’instruire, de faciliter le démarrage, l'utilisation de l'équipement ou l'exécution des actions spécifiques. Le manuel d’utilisation est une collection d'informations sur l'objet/service, une indice.

Malheureusement, peu d'utilisateurs prennent le temps de lire le manuel d’utilisation, et un bon manuel permet non seulement d’apprendre à connaître un certain nombre de fonctionnalités supplémentaires du dispositif acheté, mais aussi éviter la majorité des défaillances.

Donc, ce qui devrait contenir le manuel parfait?

Tout d'abord, le manuel d’utilisation Lumitron Lumitron ECS-320A devrait contenir:
- informations sur les caractéristiques techniques du dispositif Lumitron Lumitron ECS-320A
- nom du fabricant et année de fabrication Lumitron Lumitron ECS-320A
- instructions d'utilisation, de réglage et d’entretien de l'équipement Lumitron Lumitron ECS-320A
- signes de sécurité et attestations confirmant la conformité avec les normes pertinentes

Pourquoi nous ne lisons pas les manuels d’utilisation?

Habituellement, cela est dû au manque de temps et de certitude quant à la fonctionnalité spécifique de l'équipement acheté. Malheureusement, la connexion et le démarrage Lumitron Lumitron ECS-320A ne suffisent pas. Le manuel d’utilisation contient un certain nombre de lignes directrices concernant les fonctionnalités spécifiques, la sécurité, les méthodes d'entretien (même les moyens qui doivent être utilisés), les défauts possibles Lumitron Lumitron ECS-320A et les moyens de résoudre des problèmes communs lors de l'utilisation. Enfin, le manuel contient les coordonnées du service Lumitron en l'absence de l'efficacité des solutions proposées. Actuellement, les manuels d’utilisation sous la forme d'animations intéressantes et de vidéos pédagogiques qui sont meilleurs que la brochure, sont très populaires. Ce type de manuel permet à l'utilisateur de voir toute la vidéo d'instruction sans sauter les spécifications et les descriptions techniques compliquées Lumitron Lumitron ECS-320A, comme c’est le cas pour la version papier.

Pourquoi lire le manuel d’utilisation?

Tout d'abord, il contient la réponse sur la structure, les possibilités du dispositif Lumitron Lumitron ECS-320A, l'utilisation de divers accessoires et une gamme d'informations pour profiter pleinement de toutes les fonctionnalités et commodités.

Après un achat réussi de l’équipement/dispositif, prenez un moment pour vous familiariser avec toutes les parties du manuel d'utilisation Lumitron Lumitron ECS-320A. À l'heure actuelle, ils sont soigneusement préparés et traduits pour qu'ils soient non seulement compréhensibles pour les utilisateurs, mais pour qu’ils remplissent leur fonction de base de l'information et d’aide.

Table des matières du manuel d’utilisation

  • Page 1

    T Serial Interface Developers Guide T for the T ECS-320A Embeddable Camera Electronics System (Document Number 700-00000040-R10) 10503 Timberwood Circle Suite 120 Louisville, KY 40223 (502) 423-7225[...]

  • Page 2

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Serial Interface Developers Guide Document Number 700-00000040 April 2003 Copyright Lumitron 2003 All Rights Reserved. DISCLAIMER All copyrights in this manual, and the hardware and software described in it, are the exclusive property of Lumitron, Inc. and its licensors. Claim of copyright does not imply waive[...]

  • Page 3

    S ERIAL I NTERFAC E D EVELOPERS G UIDE T Table of Contents T TU 1 INTRODUCTION UT ......................................................................................................... 1 TU 2 GENERAL REQUIREMENTS UT ..................................................................................... 1 TU 3 CAMERA BOOT SEQUENCE UT ..............[...]

  • Page 4

    S ERIAL I NTERFAC E D EVELOPERS G UIDE TU 5.3.16 CMD_NUC_FLASH_RAMP UT ........................................................................................................ 11 TU 5.3.17 CMD_NUC_FLASH_MEMORY UT .................................................................................................. 11 TU 5.3.18 CMD_NUC_FLASH_TEST_PATTER[...]

  • Page 5

    S ERIAL I NTERFAC E D EVELOPERS G UIDE TU 6.2.13 CameraConfig.agcLowIntensity UT .................................................................................................. 23 TU 6.2.14 CameraConfig.agcHighIntensity UT ................................................................................................. 23 TU 6.2.15 CameraConfig.[...]

  • Page 6

    S ERIAL I NTERFAC E D EVELOPERS G UIDE TU 6.9.1 FPA Processor Operati onal Control Regi ster Low UT ....................................................................... 37 TU 6.9.2 FPA Processor Operati onal Control Regi ster High UT ...................................................................... 37 TU 6.9.3 FPA Processor User Mode Contro[...]

  • Page 7

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 1 Introduction This guide has been writte n to help the develop er become acquai nted with an d be able to develop around the Serial Interface Protocol requirement s for the Embedda ble Camera Electronics System hardware. An overview of the system requireme nts and a detailed descri ption of the protocol are p[...]

  • Page 8

    S ERIAL I NTERFAC E D EVELOPERS G UIDE used for text/file transfer. The bootloader is JTAG loaded into the DSP boot flash , typically during the production of the camera electro nics. After the bootloader has configured the serial po rt it will output some text messages informing the ho st of its status and go into a wait state (approximate ly 5 se[...]

  • Page 9

    S ERIAL I NTERFAC E D EVELOPERS G UIDE When the trigger occurs the host application ca n beg in writing the file data to the COM port. The bootloader receives the incoming data stream, convert s the text data, and writes the executable to the proper location in DSP program and dat a flash. Once the file transfer is complete execution is tr ansferre[...]

  • Page 10

    S ERIAL I NTERFAC E D EVELOPERS G UIDE possible baud rates (96 00 , 38400, 115200) and verifying com muni cation status. The remain der of the settings are automatically configur ed by the communi cations library. 5 Host Side Interface 5.1 Baud Rate The baud rate of the host side can be fixed to the configuratio n of the came ra electronics or it c[...]

  • Page 11

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 5.2.5 McbReadDataMem Call this function to read a block of memory from the DSP. At the lower level the call may be broken into several calls to the DSP controller to read the ent ire block. This function ca n also be used to read registers or a block of regi sters that are mapped into the DSP data memory space[...]

  • Page 12

    S ERIAL I NTERFAC E D EVELOPERS G UIDE … // Wait until DSP is ready for next command status = GetPCMStatus(m_hComPCM); // Send Focus Motor Far Command retVal = McbSendAppCmd( m_hComPCM, (BYTE)CMD_FOCUS_MOTOR_FAR, 0, NULL ); // If failed we need to break if (FAILED(retVal)) { tStr.Format(IDS_PC_MSTR_ERROR, retVal); DoMessageBox(tStr, MB_OK, 0); } [...]

  • Page 13

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 5.3.2 CMD_PROG_SFLASH_FULL Description: Program a full page to seri al flash. The data to be progra mmed will need to be written to the scratch pad (DSP memory location 0x00C0 ) bef or e initiating this command. The offset for the write into serial flash will be 0 r egardless of the structure value. Command Co[...]

  • Page 14

    S ERIAL I NTERFAC E D EVELOPERS G UIDE COMP_SER_NUM fpaSupportBD; COMP_SER_NUM calFlagAssy; COMP_SER_NUM peripheral[4]; COMP_SER_NUM fpa; UWord16 ReserveBlk_A[2]; }; /* Size = 32 Words */ typedef struct _PRODUCT_ID PRODUCT_ID, *PTR_PRODUCT_ID; 5.3.5 CMD_READ_PRODUCT_ID Description: Read Product ID from DSP Data flash and place into the scratch pad [...]

  • Page 15

    S ERIAL I NTERFAC E D EVELOPERS G UIDE LENS_CFG lens[4]; }; typedef struct _STATIC_CFG STATIC_CFG, *PTR_STATIC_CFG; 5.3.7 CMD_READ_STATIC_CFG Description: Read Static Configuration from DSP Data flash and place into the scratch pad buffer. Command Code: Enumeration for CM D_READ_STATIC_CFG Argument Size: 0 Argument: Null Note: Use the McbReadDataMe[...]

  • Page 16

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Argument: See below. struct _NVM_XFER { UWord16 offset; // Offset from byte 0 UWord16 size; // Size in bytes }; typedef struct _NVM_XFER NVM_XFER, *PTR_NVM_XFER; Note: Use the McbReadDataMem function to read dat a from scratch pad. The offset term in the data structure determines the offset address relative to[...]

  • Page 17

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 5.3.14 CMD_IMAGE_GRAB Description: Perform an image grab into one of the ut ility memory buffers. Command Code: Enumeration for CM D_IMAGE_GRAB Argument Size: UWord16 Argument: Buffer to be selected (0 – data place d in image grab buff er A, and 1 - data placed in image grab buffer B). Note: This command was[...]

  • Page 18

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Argument Size: size of NUC_MEM_XFER Argument: See below. struct _NUC_MEM_XFER{ UWord32 addr; // Address in NUC flash memory to read UWord16 size; // Size in WORDS (Limit to 160) }; typedef struct _NUC_MEM_XFER NUC_MEM_XFER, *PTR_NUC_MEM_XFER; Note: Use the McbReadDataMem function to read dat a from scratch pad[...]

  • Page 19

    S ERIAL I NTERFAC E D EVELOPERS G UIDE struct _SERVO_MODE { UWord16 mode; /* Mode of Servo: Open, Closed, Factor */ UWord16 factor; /* PWM Factor for user specified setting */ }; typedef struct _SERVO_MODE SERVO_MODE, *PTR_SERVO_MODE; /* Servo Mode Enumeration */ enum { SERVO_OPEN = 0, SERVO_CLOSE, SERVO_FACTOR }; Note: This command is to be used f[...]

  • Page 20

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 5.3.24 CMD_TWO_PT_NUC Description: Initiates a 2-point calibration. The host is required to check/upd ate the status of a global associated with the calibration pro ce s s. Command Code: Enumeration for CM D_TWO_PT_NUC Argument Size: UWord16 Argument: 0 – external reference, 1 – internal reference Note: Si[...]

  • Page 21

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 5.3.29 CMD_GET_ADC_VALUES Description: Command to retrieve the current value of all active ADC value s. The data is placed into the scratch pad buffer. Command Code: Enumeration for CM D_GET _ADC_VALUES Argument Size: 0 Argument: Null Note: Use the McbReadDataMem function to read data from scratch pad. This co[...]

  • Page 22

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Command Code: Enumeration for CM D_WRITE_VID_ENC_REG Argument Size: size of 2 * UWord16 Argument: 1 P st P UWord16 – offset, 2 P nd P UWord16 – data. The offset term is relative to the video encoder mode 0 register. In other words if a value of 0 is supplied as the offset then data will be written to the m[...]

  • Page 23

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Note: Since the defective pixel requires placem ent of reference sources it is necessary to implement this command in ‘sub-protocol’ form. See paragraph X 7.7 X for details. 5.3.38 CMD_IRCON_LOAD_LUT Description: Custom LUT tabl e creation for radiometry. C ontact Lumitron for sp ecifics. 5.3.39 CMD_LOAD_R[...]

  • Page 24

    S ERIAL I NTERFAC E D EVELOPERS G UIDE }; typedef struct _UTIL_MEM_XFER UTIL_MEM_XFER, *PTR_UTIL_MEM_XFER; Note: Use the McbWriteDataMem fun ctio n to move data into scrat ch pad. 5.3.44 CMD_ADV_DETECT_BAD_PIXELS Description: Command no longer u se d. 5.3.45 CMD_UPLOAD_NUC Description: Command to uploa d a com plete NUC table to the desired NUC ind[...]

  • Page 25

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Note: Once the command has b een sent the embedded appli catio n will set the status code to BEGIN_PROCESS. The host can monitor this c ode until it is returned to HOST_READY which indicates the routine has completed co mpiling the defects. 5.3.48 CMD_RESTOR E_FACTORY_DEFECTS Description: Command to restore th[...]

  • Page 26

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Argument: None Note: Use of this command assumes that the host kn ows the curren t state of the shadow register in the global configuration structure 6 Camera Electronics Side Interface The communications on th e came ra side is carri ed out by a PC Master Device driver that is part of the Motorola SDK targete[...]

  • Page 27

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Any portion up to the entire structure can be r ead using the ‘McbReadDataMem’ routine. For example, if the host wanted to retrieve the curr ent embedded app lication version, a read of the data member at address 0x0040 + offset of the ‘swVersion’, member could be p erformed. The paragraphs below will [...]

  • Page 28

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 6.2.6 CameraConfig.camErrors Type: CAMERA_ERRORS /* Camera Error Code Structure */ struct _CAMERA_ERRORS { UWord16 ErrorCode; /* Error Code */ UWord16 ErrorSubCode; /* Error Code */ UWord16 ErrorCount; /* Additional errors after 1st */ UWord16 ErrorData[5]; /* Error Data Array */ }; typedef struct _CAMERA_ERRO[...]

  • Page 29

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Description: Software build ID of the l oaded embedd ed application. Read only data membe r. 6.2.11 CameraConfig.fpgaVersion[2] Type: UWord16 Size: 2 Words Description: Xilinx FPGA versio n code of the stored configuratio n file. Read onl y data member. 6.2.12 CameraConfig.fpaSize Type: IMAGE_SIZE /* FPA Size [...]

  • Page 30

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Size: 1 Word Description: The member is divided into the following bit fields. Fan Speed Index: (Bits 0 - 2) Current inter nal fan speed index. Re ad only data member. Base NUC table: (Bits 3 - 8) Current base NUC index. Read only data member. Limit NUC table: (Bits 9 - 14) Current limit NUC in de x. Read only[...]

  • Page 31

    S ERIAL I NTERFAC E D EVELOPERS G UIDE FPA Sub-type Identifier: (Bits 4 – 7) Range Reticle Enable: (Bit 8) Reserved: (Bits 9 – 14) Lock Memory Mirro r Bit: (Bit 15) The following enumerations are used for the type and subtype codes: /* Fpa Type Enumerations */ enum { FPA_NONE = 0, /* No FPA */ FPA_DRS_U3000A, FPA_SOFRADIR, /* Ulis */ FPA_RESERV[...]

  • Page 32

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Index [3]: DSP Channel B3 6.2.24 CameraConfig.btnPanel Type: BTN_PANEL /* Button Panel State Structure */ struct _BTN_PANEL { unsigned menuUpdate:1; /* Set if button was pressed and menu needs update. Should only be set by Host and only cleared by camera. */ unsigned actMenuID:7; /* Active Menu or message ID f[...]

  • Page 33

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 6.3.3 nvmData.ActMode Type: UWord16 Size: 1 Word Description: See X Appendix E X for specifics on this value. 6.3.4 nvmData.AutoNucData Type: NVM_AUTO_NUC_MODE /* Auto NUC Switch Parameters */ struct _NVM_AUTO_NUC_MODE { unsigned LowSatInt:14; /* Auto NUC switch low saturation intensity */ unsigned ReservedA:2[...]

  • Page 34

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 6.3.9 nvmData.RtclXPos Type: NVM_RETICLE_POS /* Reticle Position & Emissivity */ struct _NVM_RETICLE_POS { unsigned RtclHorPos:9; /* Reticle Horizontal Position */ unsigned Reserved:7; /* Reserved */ unsigned RtclVerPos:8; /* Reticle Vertical Position */ unsigned RtclEmiss:8; /* Reticle Emissivity */ }; ty[...]

  • Page 35

    S ERIAL I NTERFAC E D EVELOPERS G UIDE typedef struct _NVM_AGC_LIMITS NVM_AGC_LIMITS, *PTR_NVM_AGC_LIMITS; Size: 2 Words Description: See X Appendix E X for specifics on this value. 6.3.14 nvmData.LinearMap Type: UWord16 Size: 1 Word Description: See X Appendix E X for specifics on this value. 6.3.15 nvmData.AgcBinLimit Type: UWord16 Size: 1 Word D[...]

  • Page 36

    S ERIAL I NTERFAC E D EVELOPERS G UIDE opportunity. In other words if the host intend s on changing the current AGC mode and have that mode restored on subsequent boots – then two writes are requi red. The first to change the global data structure and then a second to forc e an update o f the nonvolatile RAM. 6.4 Process Code Detection (CAMERA_ST[...]

  • Page 37

    S ERIAL I NTERFAC E D EVELOPERS G UIDE It is also recommended that the host che ck regularly (including the boot sequence) for the UNCONFIGURED_CO NTROLLER and the FAULT_ DETECTED codes. The FAULT_DETECTED code is set by the embedd e d application when a built-in test fails or whe n a mismatch between the co nfigured hardware an d dete cted hardwar[...]

  • Page 38

    S ERIAL I NTERFAC E D EVELOPERS G UIDE ERR_CAM_SPRT_BD_MISMATCH, ERR_SUBCODE_UNDEFINED }; ErrorCount: a count of the total number of erro rs since boot. ErrorData [0] Value stored in configuration flash. ErrorData [1] Value read from the ADC. ErrorData [2] – [4] Not used. 6.6.2 FPGA Load This error is set during the c onfiguration of the Xilinx F[...]

  • Page 39

    S ERIAL I NTERFAC E D EVELOPERS G UIDE For SubCode ERR_CROSSTALK: ErrorData [0] Address of register being written to. ErrorData [1] Address of regist er b eing tested for crosstalk. ErrorData [2] Crosstalk regi ster value. ErrorData [3] Cross talk register test ma sk. ErrorData [4] Not used. For SubCode ERR_FPGA_MEMORY: ErrorData [0] Value expected[...]

  • Page 40

    S ERIAL I NTERFAC E D EVELOPERS G UIDE ErrorData [1] Value read back. ErrorData [2] Test mask. ErrorData [3] Lower 16 bits of memory addre s s. ErrorData [4] Upper 16 bits of memory a ddre ss. 6.6.6 Force ‘1’ Test This error is set during ope rational tests. Data from CameraConfig.camErrors: ErrorCode: ERR_FORCE_ONE define. ErrorSubCode: No sub[...]

  • Page 41

    S ERIAL I NTERFAC E D EVELOPERS G UIDE ErrorData [4] Upper 16 bits of memory a ddre ss. 6.6.9 Histogram Data Grab Test This error is set during ope rational tests. Data from CameraConfig.camErrors: ErrorCode: ERR_HISTO_GRAB define. ErrorSubCode: No subcod e. ErrorCount: a count of the total number of erro rs since boot. ErrorData [0] Value expected[...]

  • Page 42

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 6.7 Command Polling During normal operatio n of the embed ded application, a poll is don e to check for user defined commands that have been issued by the host. When a command is detected the appropriate action is taken. Once the action is completed the comm and stat us is either reset or set to a status (see [...]

  • Page 43

    S ERIAL I NTERFAC E D EVELOPERS G UIDE There are only a couple of regi sters that the host will typically modify . They are listed in the fol lowing paragraphs. 6.9.1 FPA Processor Operational Control Register Low Address: 0x4000 Bit 0 (Unit Gain): 0 – Use NUC Coefficient Memo ry Gain; 1 – Force NUC Gain to Unity (1.0) Bit 1 (Zero Ofst): 0 – [...]

  • Page 44

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Bits 10-11 (Pfv Src Sel): Processed FPA Video Source Select: 0 – Digital FPA Video; 1 – NUC Corrected Video; 2 – Pixel Replaced Video; 3 – ITT Video 6.9.4 ATC Offset Coefficient Register Address: 0x4007 16-Bit Signed Constant Added to Output of NUC Cir c uit (Prior to N UC Refresh) -16,384 <= Atc Of[...]

  • Page 45

    S ERIAL I NTERFAC E D EVELOPERS G UIDE /* Calibration and Defect Communication Status Enumerations */ enum { HOST_READY = 0xFFFF, BEGIN_PROCESS = 0, CAL_PLACE_COLD_REF, CAL_COLD_REF_IN_PLACE, CAL_PLACE_HOT_REF, CAL_HOT_REF_IN_PLACE, CAL_DELTA_TOO_SMALL, CAL_COMPLETED, CAL_CALC_COEFFICIENTS, DEFECT_TOO_MANY, DEFECT_ERASE_FLASH, DEFECT_ERASE_ACK, DEF[...]

  • Page 46

    S ERIAL I NTERFAC E D EVELOPERS G UIDE (E) Calibration is complete. 7.4 One Point Update Calibration (External Flag): (A) Send CMD_ONE_PT _UPDATE command with a rgu ment for using external calibration flag. (B) Embedded application will se t the status code to BEGIN_PRO CESS, and then begin executi on of the calibration. (C) Host will monitor (peri[...]

  • Page 47

    S ERIAL I NTERFAC E D EVELOPERS G UIDE (O) Host will monitor the status code data memb er until it is set by the embedded application to CAL_CALC_COEFFICIENTS or CAL_ D E LTA_TO O_ SMALL. If the CAL_DELTA_TOO_SMALL code is received then the e m bedd ed application has aborted the cal ibration. (P) The host/user may now remove the hot referen ce if [...]

  • Page 48

    S ERIAL I NTERFAC E D EVELOPERS G UIDE for each pixel in the entire array. The NUC data w ill also need to be formatted for use in the hardware (see X Appendi x F X ). It will also be necessary to save NUC mode data to serial data flash that corresponds to the uploade d NUC data (see p aragraph X 5.3.2 X for further details). (A) Disable the automa[...]

  • Page 49

    S ERIAL I NTERFAC E D EVELOPERS G UIDE (B) Send CMD_DO WNLOAD_NUC comm and with the arguments se t for ‘gain terms’ and desired NUC base. This will instruct the cam era to r ead the NUC flash and store the gain terms in utility memory (at base of MAR_IMAGE_GRAB_B). (C) Host will monitor (periodically read) the status code data member until it i[...]

  • Page 50

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Appendix A - Camera Configuration Dat a S tructures /* Current Camera Configuration Information Structure: This structure will contain information about the camera that will be useful for standard operation as well as for the remote user to have access. Therefore this data structure is fixed in memory so that [...]

  • Page 51

    S ERIAL I NTERFAC E D EVELOPERS G UIDE /* Cal-flag Settings data */ UWord16 calFlagRefs; /* 1 Word */ // coldRef:8; /* Cold Ref Setting, (Bits 0 - 7) */ // hotRef:8; /* Hot Ref Setting, (Bits 8 - 15) */ /* FPA Type Information */ UWord16 fpaInfo; /* 1 Word */ // fpaType:4; /* FPA Type Identifier (Bits 0 - 3) */ // fpaSubType:4; /* FPA Sub-Type Iden[...]

  • Page 52

    S ERIAL I NTERFAC E D EVELOPERS G UIDE /* Partial Camera Dynamic Configuration Info Structure – matches what is stored in global memory. */ struct _NVM_GLOBAL_CFG { UWord16 CamMode; /* Cast to/from NVM_CAM_MODE */ UWord16 FpaMode; /* Cast to/from NVM_FPA_PROC_MODE */ UWord16 ReserveA; /* Reserved */ UWord16 ActMode; /* Cast to/from NVM_AUTO_NUC_M[...]

  • Page 53

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Appendix B - Xilinx Register/Dat a S tructure /* Xilinx FPGA Register Map Structure */ typedef struct { UWord16 OpCtrlRegLo; /* Map to 0x4X00 */ UWord16 OpCtrlRegHi; /* Map to 0x4X01 */ UWord16 UserCtrlReg; /* Map to 0x4X02 */ UWord16 StaticCtrlReg; /* Map to 0x4X03 */ UWord16 ImgHistoGrabReg; /* Map to 0x4X04[...]

  • Page 54

    S ERIAL I NTERFAC E D EVELOPERS G UIDE UWord16 MarAMemAcc; /* Map to 0x4XA0 */ UWord16 MarAMemAccInc; /* Map to 0x4XA1 */ UWord16 MarAMemAccClr; /* Map to 0x4XA2 */ UWord16 MarAMemAccClrInc; /* Map to 0x4XA3 */ UWord16 MarAMemAccMsb; /* Map to 0x4XA4 */ UWord16 MarAMemAccMsbInc; /* Map to 0x4XA5 */ UWord16 MarAMemAccMsbClr; /* Map to 0x4XA6 */ UWor[...]

  • Page 55

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Appendix C - Camera Command Enumerations /* PC Master Command Code Enumerations */ enum { CMD_FPGA_UPDATE_AVAILABLE = 1, CMD_COPY_SFLASH_PAGE, /* Copy a page of serial flash memory to DSP */ CMD_PROG_SFLASH_FULL, /* Program a full page to serial flash */ CMD_PROG_SFLASH_PARTIAL, /* Program a partial page to se[...]

  • Page 56

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Appendix D - Mapping of Serial Non-V olatile Memory /* Complete Camera Dynamic Configuration Info Structure */ struct _NVM_DYN_CFG { UWord16 CamMode; /* Cast to/from NVM_CAM_MODE */ UWord16 FpaMode; /* Cast to/from NVM_FPA_PROC_MODE */ UWord16 ReserveA; /* Reserved */ UWord16 ActMode; /* Cast to/from NVM_AUTO_[...]

  • Page 57

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Appendix E - Dynamic Memory Definitions Note: The address (Adr) listed in the tables that follow refer to the RAM offset address inside the Real Time Clock/NVM RAM part. Facto ry Bit Fi e l d s Adr Entry Na me Mod e In itialize 15 14 13 12 11 10 9876543210 32 Came r a Sho rt 0x0009 Mode R/ W Contr ol 34 FPA P [...]

  • Page 58

    S ERIAL I NTERFAC E D EVELOPERS G UIDE 1 – Enable Temperature Excursion Based 1-Pt Refresh Rfsh On Boot 0 – Disable 1-Pt Refresh on Bootup; 1 – Enable 1-Pt Refresh on Bootup (Camera waits until FPA Temperature Stable) Rfsh On Sw 0 – Disable 1-Pt Refresh on NUC Switch; 1 – Enable 1-Pt Refresh on NUC Switch Zn Stat En 0 – Disable Zone Sta[...]

  • Page 59

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Factor y Bit Fi e l d s Adr Entry N ame Mod e In itialize 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 50 A uto Ref r esh Sho rt 0x0258 Ti m e R/ W Per io d 52 A uto Ref r esh Sho rt 0x00E A Te mp e rat ure D elt a R/ W Th res ho ld 54 - Res e rve d Shor t 0x0000 56 R/ W 58 Ac tive Byte 0x 00 Color R/W Pale tte 59 Ac[...]

  • Page 60

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Factor y Bit Fie ld s Adr Entry N ame Mod e Initialize 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 66 Re ticle B Sho rt 0x00D C Horizon tal R/W Pos it io n 68 Re ticle B By te 0x 78 N TSC Ve r tical R/ W 0x80 PA L Pos it io n 69 Re t icl e B By te 0 x 00 Emi ssivi ty R/W 70 Re ticle Sho rt 0x0000 Radi ometri c R/W C[...]

  • Page 61

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Factor y Bit Fie ld s Adr Entry N ame Mod e Initialize 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 82 AGC Hi gh Sh ort 0x3 F FF Limit R/W Intensity 84 A GC Shor t 0x0000 Ancilla r y R/W Contr ol 86 A GC Shor t 0x001E Bin R/W Limit 88 - Res e rve d Sho rt 0x0000 94 R/ W 96 Ac tive Byte 0x 00 Zone S tat s R/W Tab le 9[...]

  • Page 62

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Fa c to ry Bit F i e l d s Ad r Ent r y Name Mode I n it ia l iz e 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 10 4 L en s I D B y te 0x 0 5 Co nt rol R/ W 1 05 Re se r v e d B yt e 0 x00 R/ W 1 06 - Re se r v e d Sho r t 0 x00 00 11 0 R /W 1 12 Ope r at io nal Sho r t 0 x00 00 El aps e d R/ W Ti m e ( L S B s ) 1 1[...]

  • Page 63

    S ERIAL I NTERFAC E D EVELOPERS G UIDE Appendix F – NUC Coefficient Format NUC Ga in C oeffici ent ( for Valid Pix el) Bit Fi el d s 15 14 13 12 11 10 9876543210 Frc t NUC O f fse t Coefficient (for Valid Pi xe l i.e. N UC Gain Non - Zero ) Bit Fi el d s 15 14 13 12 11 10 9876543210 Frc t Si gn Pi xel R e pla ce A ddr e ss O f fs et Si gn Zero NU[...]