Atmel Software Framework

QDebug.h File Reference
#include "touch_api.h"

Macros

Subscription definitions.
#define SUBS_SIGN_ON   0
 
#define SUBS_GLOBAL_CONFIG   1
 
#define SUBS_SENSOR_CONFIG   2
 
#define SUBS_SIGNALS   3
 
#define SUBS_REF   4
 
#define SUBS_DELTA   5
 
#define SUBS_STATES   6
 
PC commands.
#define QT_CMD_DUMMY   0x10
 
#define QT_CMD_SET_SUBS   0x11
 
#define QT_CMD_SET_GLOBAL_CONFIG   0x12
 
#define QT_CMD_SET_CH_CONFIG   0x13
 
#define QT_CMD_SET_QM_BURST_LENGTHS   0x14
 
#define QT_CMD_SET_USER_DATA   0x15
 
Touch MCU data packets.
#define QT_DUMMY   0x20
 
#define QT_SIGN_ON   0x21
 
#define QT_GLOBAL_CONFIG   0x22
 
#define QT_SENSOR_CONFIG   0x23
 
#define QT_SIGNALS   0x24
 
#define QT_REFERENCES   0x25
 
#define QT_DELTAS   0x26
 
#define QT_STATES   0x27
 

Functions

Public functions.
void QDebug_Init (void)
 This API initializes QDebug interface, including the low level hardware interface (SPI, TWI, USART etc). More...
 
void QDebug_ProcessCommands (void)
 Command handler for the data received from QTouch Studio. More...
 
void QDebug_SendData (uint16_t qt_lib_flags)
 Send data to QTouch Studio based on the subscription. More...
 
void QDebug_SetSubscriptions (uint16_t once, uint16_t change, uint16_t allways)
 Set subscription values. More...
 
Private functions.
void Set_Global_Config (void)
 Extract the data packet from QTouch Studio and set global config. More...
 
void Set_Channel_Config (void)
 Extract the data packet from QTouch Studio and set channel config. More...
 
void Set_Subscriptions (void)
 Set Data Subscription values. More...
 
void Set_Measurement_Period (void)
 Extract the data packet from QTouch Studio and set measurement period. More...
 
void Set_QT_User_Data (uint8_t *)
 Extracts user data from QTouch Studio to touch mcu memory. More...
 
void Transmit_Dummy (void)
 Transmits a dummy packet if no other subscriptions are set. More...
 
void Transmit_Sign_On (void)
 Transmits the sign on packet to QTouch Studio. More...
 
void Transmit_Global_Config (void)
 Transmits the global config struct to QTouch Studio. More...
 
void Transmit_Sensor_Config (void)
 Transmits the channel config struct to QTouch Studio. More...
 
void Transmit_Signals (void)
 Transmits the measurement values for each channel to QTouch Studio. More...
 
void Transmit_Ref (void)
 Transmits the channel reference values to QTouch Studio. More...
 
void Transmit_Delta (void)
 Transmits the channel delta values to QTouch Studio. More...
 
void Transmit_State (void)
 Transmits the state values to QTouch Studio. More...
 
void Transmit_QT_User_Data (uint8_t *pdata, uint16_t c)
 Transmits user data to QTouch Studio. More...
 
void Transmit_Time_Stamps (void)
 Transmits the application execution timestamp values to QTouch Studio. More...
 

#define QT_CMD_DUMMY   0x10

Referenced by QDebug_ProcessCommands().

#define QT_CMD_SET_CH_CONFIG   0x13

Referenced by QDebug_ProcessCommands().

#define QT_CMD_SET_GLOBAL_CONFIG   0x12

Referenced by QDebug_ProcessCommands().

#define QT_CMD_SET_QM_BURST_LENGTHS   0x14

Referenced by QDebug_ProcessCommands().

#define QT_CMD_SET_SUBS   0x11

Referenced by QDebug_ProcessCommands().

#define QT_CMD_SET_USER_DATA   0x15

Referenced by QDebug_ProcessCommands().

#define QT_DELTAS   0x26

Referenced by Transmit_Delta().

#define QT_DUMMY   0x20

Referenced by Transmit_Dummy().

#define QT_GLOBAL_CONFIG   0x22

Referenced by Transmit_Global_Config().

#define QT_REFERENCES   0x25

Referenced by Transmit_Ref().

#define QT_SENSOR_CONFIG   0x23

Referenced by Transmit_Sensor_Config().

#define QT_SIGN_ON   0x21

Referenced by Transmit_Sign_On().

#define QT_SIGNALS   0x24

Referenced by Transmit_Signals().

#define QT_STATES   0x27

Referenced by Transmit_State().

#define SUBS_DELTA   5

Referenced by QDebug_SendData().

#define SUBS_GLOBAL_CONFIG   1

Referenced by QDebug_SendData().

#define SUBS_REF   4

Referenced by QDebug_SendData().

#define SUBS_SENSOR_CONFIG   2

Referenced by QDebug_SendData().

#define SUBS_SIGN_ON   0

Referenced by QDebug_SendData().

#define SUBS_SIGNALS   3

Referenced by QDebug_SendData().

#define SUBS_STATES   6

Referenced by QDebug_SendData().

void QDebug_Init ( void  )

This API initializes QDebug interface, including the low level hardware interface (SPI, TWI, USART etc).

Note
Must be called before using any other QDebug API.

This API initializes QDebug interface, including the low level hardware interface (SPI, TWI, USART etc).

Note
Must be called before the main loop

References Init_Buffers(), qt_lib_sig_info_t::library_version, qt_get_library_sig(), read_info_from_eeprom(), read_settings_from_eeprom(), write_global_settings_to_eeprom(), write_info_to_eeprom(), and write_sensor_settings_to_eeprom().

Referenced by touch_init().

void QDebug_ProcessCommands ( void  )

Command handler for the data received from QTouch Studio.

Note
This function should be called in the main loop after measure_sensors to process the data received from QTOuch Studio.

References GetChar(), QT_CMD_DUMMY, QT_CMD_SET_CH_CONFIG, QT_CMD_SET_GLOBAL_CONFIG, QT_CMD_SET_QM_BURST_LENGTHS, QT_CMD_SET_SUBS, QT_CMD_SET_USER_DATA, Receive_Message(), RX_Buffer, RX_index, Set_Channel_Config(), Set_Global_Config(), Set_QT_User_Data(), and Set_Subscriptions().

Referenced by check_touch_key_pressed(), and touch_key_is_pressed().

void QDebug_SendData ( uint16_t  qt_lib_flags)

Send data to QTouch Studio based on the subscription.

Parameters
qt_lib_flags:Changeflag from measure_sensors.
qt_lib_flags:Changeflag from measure_sensors.
Note
This function should be called in the main loop after measure_sensors to send the measured touch data

References delivery, qgLibraryChanges, qgSubsAllways, qgSubsChange, qgSubsOnce, QTLIB_CHANNEL_REF_CHANGE, QTLIB_ROTOR_SLIDER_POS_CHANGE, QTLIB_STATUS_CHANGE, SequenceH, SUBS_DELTA, SUBS_GLOBAL_CONFIG, SUBS_REF, SUBS_SENSOR_CONFIG, SUBS_SIGN_ON, SUBS_SIGNALS, SUBS_STATES, Transmit_Delta(), Transmit_Dummy(), Transmit_Global_Config(), Transmit_Ref(), Transmit_Sensor_Config(), Transmit_Sign_On(), Transmit_Signals(), and Transmit_State().

Referenced by check_touch_key_pressed(), and touch_key_is_pressed().

void QDebug_SetSubscriptions ( uint16_t  once,
uint16_t  change,
uint16_t  allways 
)

Set subscription values.

Note
This function can be used directly in main to set data subscription if 1way SPI interface is used.

References qgSubsAllways, qgSubsChange, and qgSubsOnce.

Referenced by Set_Subscriptions().

void Set_Channel_Config ( void  )

Extract the data packet from QTouch Studio and set channel config.

Note
Should only be called from the command handler.

References GetChar(), sensors, tag_sensor_t::threshold, tag_sensor_t::type_aks_pos_hyst, and write_sensor_settings_to_eeprom().

Referenced by QDebug_ProcessCommands().

void Set_Measurement_Period ( void  )

Extract the data packet from QTouch Studio and set measurement period.

Note
Should only be called from the command handler.
void Set_QT_User_Data ( uint8_t *  pdata)

Extracts user data from QTouch Studio to touch mcu memory.

Parameters
pdata,:data pointer.
Note
The data can be binary data.
Parameters
datapointer
Note
The data can be binary data

References PutChar(), RX_Buffer, and Send_Message().

Referenced by QDebug_ProcessCommands().

void Set_Subscriptions ( void  )

Set Data Subscription values.

Note
Should only be called from the command handler.

References GetChar(), and QDebug_SetSubscriptions().

Referenced by QDebug_ProcessCommands().

void Transmit_Delta ( void  )

Transmits the channel delta values to QTouch Studio.

Note
The value is equal to signal-reference

References num_sensors, PutChar(), QT_DELTAS, qt_get_sensor_delta(), and Send_Message().

Referenced by QDebug_SendData().

void Transmit_Dummy ( void  )

Transmits a dummy packet if no other subscriptions are set.

Note

References PutChar(), QT_DUMMY, and Send_Message().

Referenced by QDebug_SendData().

void Transmit_QT_User_Data ( uint8_t *  pdata,
uint16_t  c 
)

Transmits user data to QTouch Studio.

Parameters
pdata,:data pointer.
c,:length of data in bytes.
Note
The data will be binary data.
Parameters
datapointer, length of data in bytes
Note
The data will be binary data

References PutChar(), and Send_Message().

void Transmit_Ref ( void  )

Transmits the channel reference values to QTouch Studio.

Note

References tag_qt_touch_lib_measure_data_t::channel_references, PutChar(), qt_measure_data, QT_REFERENCES, and Send_Message().

Referenced by QDebug_SendData().

void Transmit_Sensor_Config ( void  )

Transmits the channel config struct to QTouch Studio.

Note

References PutChar(), QT_SENSOR_CONFIG, Send_Message(), and sensors.

Referenced by QDebug_SendData().

void Transmit_Sign_On ( void  )

Transmits the sign on packet to QTouch Studio.

Note

References delivery, qt_lib_sig_info_t::lib_sig_lword, qt_lib_sig_info_t::library_version, PutChar(), PutInt(), QT_SIGN_ON, and Send_Message().

Referenced by QDebug_SendData().

void Transmit_Signals ( void  )

Transmits the measurement values for each channel to QTouch Studio.

Note

References tag_qt_touch_lib_measure_data_t::channel_signals, PutChar(), qt_measure_data, QT_SIGNALS, and Send_Message().

Referenced by QDebug_SendData().

void Transmit_State ( void  )
void Transmit_Time_Stamps ( void  )

Transmits the application execution timestamp values to QTouch Studio.

Note
This value is a combination of current_time_ms_touch (high word) & timer counter register (low word).
This value is a combination of current_time_ms_touch (high word) & timer counter register (low word)

References PutInt(), Send_Message(), timestamp1_hword, timestamp1_lword, timestamp2_hword, timestamp2_lword, timestamp3_hword, and timestamp3_lword.