⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 globaldefs.h

📁 可编程器件厂商Xilinx的手持式逻辑分析仪的逻辑设计
💻 H
字号:
/*============================================================================*/
/* Filename:            GlobalDefs.h                                          */
/*                                                                            */
/* Description:         This header file contains the definition(s) of the    */
/*                      global variables and typedefs for the Pocket Logic    */
/*                      Analyzer project.                                     */
/*                                                                            */
/*============================================================================*/
/* COPYRIGHT (C) 2001                                                         */
/* NowTech, LLC                                                               */
/* Knoxville, TN                                                              */
/*                                                                            */
/* ALL RIGHTS RESERVED                                                        */
/*                                                                            */
/* This software and all information and ideas contained within are the sole  */
/* property of NowTech, LLC and are confidential.  Neither this software nor  */
/* any part nor any information contained in it may be disclosed or furnished */
/* to others without the prior written consent of NowTech, LLC.               */
/*                                                                            */
/*============================================================================*/
/* Change History:                                                            */
/*                                                                            */
/* ECO#:  ?                                                                   */
/* Change Date:  dd-mmm-yyyy                                                  */
/* Changed By:   ?                                                            */
/* Description of Change:  ?                                                  */
/*                                                                            */
/*============================================================================*/


/*============================================================================*/
/* Definition of any global constants needed for use of the macros and/or     */
/* functions define in this file or the C source files.                       */
/*============================================================================*/
#define DataBuffSize 8192

/*============================================================================*/
/* Definition of any global enumerations needed for use of the macros and/or  */
/* functions define in this file or the C source files.                       */
/*============================================================================*/
typedef enum
    {
    trigwordLowLevel,
    trigwordDontCare,
    trigwordHiLevel
    } TrigStateType;

typedef enum
    {
    preTrigger0Percent   = 0,
    preTrigger5Percent   = 1,
    preTrigger10Percent  = 2,
    preTrigger15Percent  = 3,
    preTrigger20Percent  = 4,
    preTrigger25Percent  = 5,
    preTrigger30Percent  = 6,
    preTrigger35Percent  = 7,
    preTrigger40Percent  = 8,
    preTrigger45Percent  = 9,
    preTrigger50Percent  = 10,
    preTrigger55Percent  = 11,
    preTrigger60Percent  = 12,
    preTrigger65Percent  = 13,
    preTrigger70Percent  = 14,
    preTrigger75Percent  = 15,
    preTrigger80Percent  = 16,
    preTrigger85Percent  = 17,
    preTrigger90Percent  = 18,
    preTrigger95Percent  = 19,
    preTrigger100Percent = 20
    } PreTriggerType;

typedef enum
    {
    Timebase50nsec,
    Timebase100nsec,
    Timebase200nsec,
    Timebase500nsec,
    Timebase1usec,
    Timebase2usec,
    Timebase5usec,
    Timebase10usec,
    Timebase20usec,
    Timebase50usec,
    Timebase100usec,
    Timebase200usec,
    Timebase500usec,
    Timebase1msec
    } TimebaseType;

/*============================================================================*/
/* Definition of any global data structures for the data associated with the  */
/* Pocket Logic Analyzer.                                                     */
/*============================================================================*/
typedef struct
    {
    UInt8 replaceme;
    } StarterPreferenceType;

typedef struct
    {
    UInt8 replaceme;
    } StarterAppInfoType;

typedef StarterAppInfoType* StarterAppInfoPtr;

typedef struct
    {
    Boolean         bAutoSweepMode;
    Boolean         bGotoTrigOnRun;
    Char            ChnlLabel[8][4];
    PreTriggerType  PreTrigger;
    TrigStateType   ChnlTriggers[8];
    TimebaseType    Timebase;
    Boolean         bChnlOn[8];
    UInt8           ActiveChnlCnt;
    } AppPrefsType;

typedef struct
    {
    UInt16          TrigDataBuffOffset;
    Boolean         bTrigInHiByte;
    UInt8           SmplData[DataBuffSize];
    UInt16          PlotFromSmplIdx;
    UInt16          PlotToSmplIdx;
    Boolean         AcquisitionInProcess;
    } PlotDataType;

/*============================================================================*/
/* External declaration of global variables defined in this file.             */
/*============================================================================*/
extern AppPrefsType AppPrefs;
extern PlotDataType PlotData;
extern Int32 EventLoopTimeout;

/*============================================================================*/
/* Macro Definitions:                                                         */
/*============================================================================*/
/**** None ****/

/*============================================================================*/
/* Global Function Prototypes:                                                */
/*============================================================================*/
Boolean MainFormHandleEvent (EventPtr);
Boolean MainGadgetHandler (struct FormGadgetType*, UInt16, void*);
Boolean TimebaseSelectHandleEvent (EventPtr);
Boolean TrigDefHandleEvent (EventPtr);
Boolean RunModeHandleEvent(EventPtr);
Boolean ChannelSelectHandleEvent(EventPtr);
Boolean CursorDataHandleEvent(EventPtr);
Boolean PrefsHandleEvent(EventPtr);

void DrawPlotAreaGadget(void);
void DrawBufferBarGadget(void);

void*   GetObjectPtr (UInt16);
void    SetFieldText (UInt16, Char*);
void    CopyAppPrefs (AppPrefsType*, AppPrefsType*);
UInt16 PreTrigSmpls (PreTriggerType);
UInt32 TimebaseInNSec (TimebaseType);
UInt32 SampleRateInNSec (TimebaseType);
void StartAcquisition (void);
void StopAcquisition (void);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -