Data Structures | Enumerations
datatypes.h File Reference
#include <stdint.h>
#include <stdbool.h>
#include "ch.h"

Go to the source code of this file.

Data Structures

struct  mc_rpm_dep_struct
 
struct  mc_configuration
 
struct  ppm_config
 
struct  adc_config
 
struct  chuk_config
 
struct  app_configuration
 
struct  fault_data
 
struct  chuck_data
 
struct  can_status_msg
 
struct  mote_state
 

Enumerations

enum  mc_state { MC_STATE_OFF = 0, MC_STATE_DETECTING, MC_STATE_RUNNING, MC_STATE_FULL_BRAKE }
 
enum  mc_pwm_mode { PWM_MODE_NONSYNCHRONOUS_HISW = 0, PWM_MODE_SYNCHRONOUS, PWM_MODE_BIPOLAR }
 
enum  mc_comm_mode { COMM_MODE_INTEGRATE = 0, COMM_MODE_DELAY }
 
enum  mc_sensor_mode { SENSOR_MODE_SENSORLESS = 0, SENSOR_MODE_SENSORED, SENSOR_MODE_HYBRID }
 
enum  mc_motor_type { MOTOR_TYPE_BLDC = 0, MOTOR_TYPE_DC }
 
enum  mc_fault_code {
  FAULT_CODE_NONE = 0, FAULT_CODE_OVER_VOLTAGE, FAULT_CODE_UNDER_VOLTAGE, FAULT_CODE_DRV8302,
  FAULT_CODE_ABS_OVER_CURRENT, FAULT_CODE_OVER_TEMP_FET, FAULT_CODE_OVER_TEMP_MOTOR
}
 
enum  mc_control_mode {
  CONTROL_MODE_DUTY = 0, CONTROL_MODE_SPEED, CONTROL_MODE_CURRENT, CONTROL_MODE_CURRENT_BRAKE,
  CONTROL_MODE_POS, CONTROL_MODE_NONE
}
 
enum  app_use {
  APP_NONE = 0, APP_PPM, APP_ADC, APP_UART,
  APP_PPM_UART, APP_ADC_UART, APP_NUNCHUK, APP_NRF,
  APP_CUSTOM
}
 
enum  ppm_control_type {
  PPM_CTRL_TYPE_NONE = 0, PPM_CTRL_TYPE_CURRENT, PPM_CTRL_TYPE_CURRENT_NOREV, PPM_CTRL_TYPE_CURRENT_NOREV_BRAKE,
  PPM_CTRL_TYPE_DUTY, PPM_CTRL_TYPE_DUTY_NOREV, PPM_CTRL_TYPE_PID, PPM_CTRL_TYPE_PID_NOREV
}
 
enum  adc_control_type {
  ADC_CTRL_TYPE_NONE = 0, ADC_CTRL_TYPE_CURRENT, ADC_CTRL_TYPE_CURRENT_REV_CENTER, ADC_CTRL_TYPE_CURRENT_REV_BUTTON,
  ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER, ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_BUTTON, ADC_CTRL_TYPE_DUTY, ADC_CTRL_TYPE_DUTY_REV_CENTER,
  ADC_CTRL_TYPE_DUTY_REV_BUTTON
}
 
enum  chuk_control_type { CHUK_CTRL_TYPE_NONE = 0, CHUK_CTRL_TYPE_CURRENT, CHUK_CTRL_TYPE_CURRENT_NOREV }
 
enum  COMM_PACKET_ID {
  COMM_FW_VERSION = 0, COMM_JUMP_TO_BOOTLOADER, COMM_ERASE_NEW_APP, COMM_WRITE_NEW_APP_DATA,
  COMM_GET_VALUES, COMM_SET_DUTY, COMM_SET_CURRENT, COMM_SET_CURRENT_BRAKE,
  COMM_SET_RPM, COMM_SET_POS, COMM_SET_DETECT, COMM_SET_SERVO_POS,
  COMM_SET_MCCONF, COMM_GET_MCCONF, COMM_SET_APPCONF, COMM_GET_APPCONF,
  COMM_SAMPLE_PRINT, COMM_TERMINAL_CMD, COMM_PRINT, COMM_ROTOR_POSITION,
  COMM_EXPERIMENT_SAMPLE, COMM_DETECT_MOTOR_PARAM, COMM_REBOOT, COMM_ALIVE,
  COMM_GET_DECODED_PPM, COMM_GET_DECODED_ADC, COMM_GET_DECODED_CHUK, COMM_FORWARD_CAN
}
 
enum  CAN_PACKET_ID {
  CAN_PACKET_SET_DUTY = 0, CAN_PACKET_SET_CURRENT, CAN_PACKET_SET_CURRENT_BRAKE, CAN_PACKET_SET_RPM,
  CAN_PACKET_SET_POS, CAN_PACKET_FILL_RX_BUFFER, CAN_PACKET_FILL_RX_BUFFER_LONG, CAN_PACKET_PROCESS_RX_BUFFER,
  CAN_PACKET_PROCESS_SHORT_BUFFER, CAN_PACKET_STATUS
}
 
enum  LED_EXT_STATE {
  LED_EXT_OFF = 0, LED_EXT_NORMAL, LED_EXT_BRAKE, LED_EXT_TURN_LEFT,
  LED_EXT_TURN_RIGHT, LED_EXT_BRAKE_TURN_LEFT, LED_EXT_BRAKE_TURN_RIGHT, LED_EXT_BATT
}
 
enum  MOTE_PACKET { MOTE_PACKET_BATT_LEVEL = 0, MOTE_PACKET_BUTTONS, MOTE_PACKET_ALIVE }
 

Enumeration Type Documentation

Enumerator
ADC_CTRL_TYPE_NONE 
ADC_CTRL_TYPE_CURRENT 
ADC_CTRL_TYPE_CURRENT_REV_CENTER 
ADC_CTRL_TYPE_CURRENT_REV_BUTTON 
ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER 
ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_BUTTON 
ADC_CTRL_TYPE_DUTY 
ADC_CTRL_TYPE_DUTY_REV_CENTER 
ADC_CTRL_TYPE_DUTY_REV_BUTTON 
enum app_use
Enumerator
APP_NONE 
APP_PPM 
APP_ADC 
APP_UART 
APP_PPM_UART 
APP_ADC_UART 
APP_NUNCHUK 
APP_NRF 
APP_CUSTOM 
Enumerator
CAN_PACKET_SET_DUTY 
CAN_PACKET_SET_CURRENT 
CAN_PACKET_SET_CURRENT_BRAKE 
CAN_PACKET_SET_RPM 
CAN_PACKET_SET_POS 
CAN_PACKET_FILL_RX_BUFFER 
CAN_PACKET_FILL_RX_BUFFER_LONG 
CAN_PACKET_PROCESS_RX_BUFFER 
CAN_PACKET_PROCESS_SHORT_BUFFER 
CAN_PACKET_STATUS 
Enumerator
CHUK_CTRL_TYPE_NONE 
CHUK_CTRL_TYPE_CURRENT 
CHUK_CTRL_TYPE_CURRENT_NOREV 
Enumerator
COMM_FW_VERSION 
COMM_JUMP_TO_BOOTLOADER 
COMM_ERASE_NEW_APP 
COMM_WRITE_NEW_APP_DATA 
COMM_GET_VALUES 
COMM_SET_DUTY 
COMM_SET_CURRENT 
COMM_SET_CURRENT_BRAKE 
COMM_SET_RPM 
COMM_SET_POS 
COMM_SET_DETECT 
COMM_SET_SERVO_POS 
COMM_SET_MCCONF 
COMM_GET_MCCONF 
COMM_SET_APPCONF 
COMM_GET_APPCONF 
COMM_SAMPLE_PRINT 
COMM_TERMINAL_CMD 
COMM_PRINT 
COMM_ROTOR_POSITION 
COMM_EXPERIMENT_SAMPLE 
COMM_DETECT_MOTOR_PARAM 
COMM_REBOOT 
COMM_ALIVE 
COMM_GET_DECODED_PPM 
COMM_GET_DECODED_ADC 
COMM_GET_DECODED_CHUK 
COMM_FORWARD_CAN 
Enumerator
LED_EXT_OFF 
LED_EXT_NORMAL 
LED_EXT_BRAKE 
LED_EXT_TURN_LEFT 
LED_EXT_TURN_RIGHT 
LED_EXT_BRAKE_TURN_LEFT 
LED_EXT_BRAKE_TURN_RIGHT 
LED_EXT_BATT 
Enumerator
COMM_MODE_INTEGRATE 
COMM_MODE_DELAY 
Enumerator
CONTROL_MODE_DUTY 
CONTROL_MODE_SPEED 
CONTROL_MODE_CURRENT 
CONTROL_MODE_CURRENT_BRAKE 
CONTROL_MODE_POS 
CONTROL_MODE_NONE 
Enumerator
FAULT_CODE_NONE 
FAULT_CODE_OVER_VOLTAGE 
FAULT_CODE_UNDER_VOLTAGE 
FAULT_CODE_DRV8302 
FAULT_CODE_ABS_OVER_CURRENT 
FAULT_CODE_OVER_TEMP_FET 
FAULT_CODE_OVER_TEMP_MOTOR 
Enumerator
MOTOR_TYPE_BLDC 
MOTOR_TYPE_DC 
Enumerator
PWM_MODE_NONSYNCHRONOUS_HISW 
PWM_MODE_SYNCHRONOUS 
PWM_MODE_BIPOLAR 
Enumerator
SENSOR_MODE_SENSORLESS 
SENSOR_MODE_SENSORED 
SENSOR_MODE_HYBRID 
enum mc_state
Enumerator
MC_STATE_OFF 
MC_STATE_DETECTING 
MC_STATE_RUNNING 
MC_STATE_FULL_BRAKE 
Enumerator
MOTE_PACKET_BATT_LEVEL 
MOTE_PACKET_BUTTONS 
MOTE_PACKET_ALIVE 
Enumerator
PPM_CTRL_TYPE_NONE 
PPM_CTRL_TYPE_CURRENT 
PPM_CTRL_TYPE_CURRENT_NOREV 
PPM_CTRL_TYPE_CURRENT_NOREV_BRAKE 
PPM_CTRL_TYPE_DUTY 
PPM_CTRL_TYPE_DUTY_NOREV 
PPM_CTRL_TYPE_PID 
PPM_CTRL_TYPE_PID_NOREV