Software Library API naibrd 2.24.0
See all documentation at naii.docs.com
ttl_pwm.c File Reference

Enumerations

enum  ttl_pwm_commands {
  TTL_PWM_CMD_MODE , TTL_PWM_CMD_PERIOD , TTL_PWM_CMD_PULSEWIDTH , TTL_PWM_CMD_BURSTCOUNT ,
  TTL_PWM_CMD_POLARITY , TTL_PWM_CMD_PWM_CFG , TTL_PWM_CMD_PWM_START , TTL_PWM_CMD_PWM_STOP ,
  TTL_PWM_CMD_PWM_DEMO , TTL_PWM_CMD_PWM_INITIAL , TTL_PWM_CMD_STATUS , TTL_PWM_CMD_PWM_BURST ,
  TTL_PWM_CMD_PWM_CONT , TTL_PWM_CMD_COUNT
}
 

Functions

static void Run_TTL_PWM (int32_t cardIndex, int32_t module, uint32_t modid)
 Run_TTL_PWM prompts the user for the card, module and channel to use for the application and calls Cfg_TTL_PWM_Channel if the card, module, channel is valid for as a discrete module.
 
static void Cfg_TTL_PWM_Channel (int32_t cardIndex, int32_t module, uint32_t ModuleID, int32_t MaxChannel)
 Cfg_TTL_PWM_Channel handles calling the Display_TTL_PWM_ChannelCfg routine to display the discrete channel configuration and calling the routines associated with the user's menu commands.
 
static nai_status_t Display_TTL_PWM_Configuration (int32_t paramCnt, int32_t *p_params)
 Display_TTL_PWM_Configuration illustrate the methods to call in the naibrd library to retrieve the PWM configuration settings.
 
static nai_status_t Display_TTL_Status (int32_t paramCnt, int32_t *p_params)
 Display_TTL_Status illustrate the methods to call in the naibrd library to retrieve the status settings.
 
static nai_status_t Configure_TTL_PWM_Mode (int32_t paramCnt, int32_t *p_params)
 Configure_TTL_PWM_Mode handles the user request to select the PWM mode for the selected channel and calls the method in the naibrd library to set the mode.
 
static nai_status_t Configure_TTL_PWM_Polarity (int32_t paramCnt, int32_t *p_params)
 Configure_TTL_PWM_Polarity handles the user request to select the PWM output polarity for the selected channel and calls the method in the naibrd library for the setting.
 
static nai_status_t Configure_TTL_PWM_Period (int32_t paramCnt, int32_t *p_params)
 Configure_TTL_PWM_Period handles the user request to configure the time values for period on the selected channel and calls the method in the naibrd library to set the period.
 
static nai_status_t Configure_TTL_PWM_Pulsewidth (int32_t paramCnt, int32_t *p_params)
 Configure_TTL_PWM_Pulsewidth handles the user request to configure the time values for pulsewidth on the selected channel and calls the method in the naibrd library to set the width.
 
static nai_status_t Configure_TTL_PWM_Burstcount (int32_t paramCnt, int32_t *p_params)
 Handles the user request to set the burst count value for the number of pulses to be issued upon trigger in PWM burst mode operation on the selected channel, calling the method in the naibrd library to set the burst number.
 
static void Verify_TTL_ParamCnt (int32_t paramCnt)
 Verify_TTL_ParamCnt verifies parameter count and displays error message if invalid.
 
int32_t TTL_PWM (void)
 The purpose of the TTL_PWM is to illustrate the methods to call in the naibrd library to perform configuration setup for output in PWM operation mode. Pulse period, pulse width, pulse polarity settings are configurable.
 

Variables

static const int8_t * DEF_CONFIG_FILE = (const int8_t *)"default_TTL_PWM.txt"
 
static const int32_t DEF_TTL_CARD_INDEX = 0
 
static const int32_t DEF_TTL_MODULE = 1
 
static const int32_t DEF_TTL_CHANNEL = 1
 
static naiapp_cmdtbl_params_t TTL_PWM_MenuCmds []
 

Enumeration Type Documentation

◆ ttl_pwm_commands

Enumerator
TTL_PWM_CMD_MODE 
TTL_PWM_CMD_PERIOD 
TTL_PWM_CMD_PULSEWIDTH 
TTL_PWM_CMD_BURSTCOUNT 
TTL_PWM_CMD_POLARITY 
TTL_PWM_CMD_PWM_CFG 
TTL_PWM_CMD_PWM_START 
TTL_PWM_CMD_PWM_STOP 
TTL_PWM_CMD_PWM_DEMO 
TTL_PWM_CMD_PWM_INITIAL 
TTL_PWM_CMD_STATUS 
TTL_PWM_CMD_PWM_BURST 
TTL_PWM_CMD_PWM_CONT 
TTL_PWM_CMD_COUNT 

Function Documentation

◆ Cfg_TTL_PWM_Channel()

static void Cfg_TTL_PWM_Channel ( int32_t cardIndex,
int32_t module,
uint32_t ModuleID,
int32_t MaxChannel )
static

Cfg_TTL_PWM_Channel handles calling the Display_TTL_PWM_ChannelCfg routine to display the discrete channel configuration and calling the routines associated with the user's menu commands.

◆ Configure_TTL_PWM_Burstcount()

static nai_status_t Configure_TTL_PWM_Burstcount ( int32_t paramCnt,
int32_t * p_params )
static

Handles the user request to set the burst count value for the number of pulses to be issued upon trigger in PWM burst mode operation on the selected channel, calling the method in the naibrd library to set the burst number.

◆ Configure_TTL_PWM_Mode()

static nai_status_t Configure_TTL_PWM_Mode ( int32_t paramCnt,
int32_t * p_params )
static

Configure_TTL_PWM_Mode handles the user request to select the PWM mode for the selected channel and calls the method in the naibrd library to set the mode.

◆ Configure_TTL_PWM_Period()

static nai_status_t Configure_TTL_PWM_Period ( int32_t paramCnt,
int32_t * p_params )
static

Configure_TTL_PWM_Period handles the user request to configure the time values for period on the selected channel and calls the method in the naibrd library to set the period.

◆ Configure_TTL_PWM_Polarity()

static nai_status_t Configure_TTL_PWM_Polarity ( int32_t paramCnt,
int32_t * p_params )
static

Configure_TTL_PWM_Polarity handles the user request to select the PWM output polarity for the selected channel and calls the method in the naibrd library for the setting.

◆ Configure_TTL_PWM_Pulsewidth()

static nai_status_t Configure_TTL_PWM_Pulsewidth ( int32_t paramCnt,
int32_t * p_params )
static

Configure_TTL_PWM_Pulsewidth handles the user request to configure the time values for pulsewidth on the selected channel and calls the method in the naibrd library to set the width.

◆ Display_TTL_PWM_Configuration()

static nai_status_t Display_TTL_PWM_Configuration ( int32_t paramCnt,
int32_t * p_params )
static

Display_TTL_PWM_Configuration illustrate the methods to call in the naibrd library to retrieve the PWM configuration settings.

◆ Display_TTL_Status()

static nai_status_t Display_TTL_Status ( int32_t paramCnt,
int32_t * p_params )
static

Display_TTL_Status illustrate the methods to call in the naibrd library to retrieve the status settings.

◆ Run_TTL_PWM()

static void Run_TTL_PWM ( int32_t cardIndex,
int32_t module,
uint32_t modid )
static

Run_TTL_PWM prompts the user for the card, module and channel to use for the application and calls Cfg_TTL_PWM_Channel if the card, module, channel is valid for as a discrete module.

◆ TTL_PWM()

int32_t TTL_PWM ( void )

The purpose of the TTL_PWM is to illustrate the methods to call in the naibrd library to perform configuration setup for output in PWM operation mode. Pulse period, pulse width, pulse polarity settings are configurable.

The following system configuration routines from the nai_sys_cfg.c file are called to assist with the configuration setup for this program prior to calling the naibrd TTL routines.

  • ClearDeviceCfg
  • QuerySystemCfg
  • DisplayDeviceCfg
  • GetBoardSNModCfg
  • SaveDeviceCfg

◆ Verify_TTL_ParamCnt()

static void Verify_TTL_ParamCnt ( int32_t paramCnt)
static

Verify_TTL_ParamCnt verifies parameter count and displays error message if invalid.

Variable Documentation

◆ DEF_CONFIG_FILE

const int8_t* DEF_CONFIG_FILE = (const int8_t *)"default_TTL_PWM.txt"
static

◆ DEF_TTL_CARD_INDEX

const int32_t DEF_TTL_CARD_INDEX = 0
static

◆ DEF_TTL_CHANNEL

const int32_t DEF_TTL_CHANNEL = 1
static

◆ DEF_TTL_MODULE

const int32_t DEF_TTL_MODULE = 1
static

◆ TTL_PWM_MenuCmds

naiapp_cmdtbl_params_t TTL_PWM_MenuCmds[]
static
Initial value:
= {
{"Mode", " TTL Select PWM Mode", TTL_PWM_CMD_MODE, Configure_TTL_PWM_Mode},
{"Period", " TTL Set PWM Period", TTL_PWM_CMD_PERIOD, Configure_TTL_PWM_Period},
{"Width", " TTL Set PWM Pulsewidth", TTL_PWM_CMD_PULSEWIDTH, Configure_TTL_PWM_Pulsewidth},
{"Count", " TTL Set PWM Burst count", TTL_PWM_CMD_BURSTCOUNT, Configure_TTL_PWM_Burstcount},
{"POlarity", " TTL Set PWM Polarity", TTL_PWM_CMD_POLARITY, Configure_TTL_PWM_Polarity},
{"PM", " TTL Display PWM configuration settings", TTL_PWM_CMD_PWM_CFG, Display_TTL_PWM_Configuration},
{"Trigger", " TTL Start PWM output", TTL_PWM_CMD_PWM_START, NULL},
{"Halt", " TTL Stop PWM output", TTL_PWM_CMD_PWM_STOP, NULL},
{"Demo", " TTL Demo PWM Settings", TTL_PWM_CMD_PWM_DEMO, NULL},
{"Reset", " TTL Reset All Channels to Initial Settings",TTL_PWM_CMD_PWM_INITIAL, NULL},
{"Stat", " TTL Display Status", TTL_PWM_CMD_STATUS, Display_TTL_Status},
{"SETBurst", " TTL Set all channels to PWM Burst", TTL_PWM_CMD_PWM_BURST, NULL},
{"SETCont", " TTL Set all channels to PWM Continuous", TTL_PWM_CMD_PWM_CONT, NULL},
}
@ TTL_PWM_CMD_PWM_BURST
Definition ttl_pwm.c:52
@ TTL_PWM_CMD_BURSTCOUNT
Definition ttl_pwm.c:44
@ TTL_PWM_CMD_PULSEWIDTH
Definition ttl_pwm.c:43
@ TTL_PWM_CMD_PWM_DEMO
Definition ttl_pwm.c:49
@ TTL_PWM_CMD_PERIOD
Definition ttl_pwm.c:42
@ TTL_PWM_CMD_PWM_START
Definition ttl_pwm.c:47
@ TTL_PWM_CMD_POLARITY
Definition ttl_pwm.c:45
@ TTL_PWM_CMD_PWM_CFG
Definition ttl_pwm.c:46
@ TTL_PWM_CMD_MODE
Definition ttl_pwm.c:41
@ TTL_PWM_CMD_PWM_STOP
Definition ttl_pwm.c:48
@ TTL_PWM_CMD_PWM_INITIAL
Definition ttl_pwm.c:50
@ TTL_PWM_CMD_PWM_CONT
Definition ttl_pwm.c:53
@ TTL_PWM_CMD_STATUS
Definition ttl_pwm.c:51
static nai_status_t Display_TTL_PWM_Configuration(int32_t paramCnt, int32_t *p_params)
Display_TTL_PWM_Configuration illustrate the methods to call in the naibrd library to retrieve the PW...
Definition ttl_pwm.c:383
static nai_status_t Configure_TTL_PWM_Pulsewidth(int32_t paramCnt, int32_t *p_params)
Configure_TTL_PWM_Pulsewidth handles the user request to configure the time values for pulsewidth on ...
Definition ttl_pwm.c:671
static nai_status_t Configure_TTL_PWM_Burstcount(int32_t paramCnt, int32_t *p_params)
Handles the user request to set the burst count value for the number of pulses to be issued upon trig...
Definition ttl_pwm.c:720
static nai_status_t Display_TTL_Status(int32_t paramCnt, int32_t *p_params)
Display_TTL_Status illustrate the methods to call in the naibrd library to retrieve the status settin...
Definition ttl_pwm.c:430
static nai_status_t Configure_TTL_PWM_Mode(int32_t paramCnt, int32_t *p_params)
Configure_TTL_PWM_Mode handles the user request to select the PWM mode for the selected channel and c...
Definition ttl_pwm.c:546
static nai_status_t Configure_TTL_PWM_Polarity(int32_t paramCnt, int32_t *p_params)
Configure_TTL_PWM_Polarity handles the user request to select the PWM output polarity for the selecte...
Definition ttl_pwm.c:589
static nai_status_t Configure_TTL_PWM_Period(int32_t paramCnt, int32_t *p_params)
Configure_TTL_PWM_Period handles the user request to configure the time values for period on the sele...
Definition ttl_pwm.c:623