Migrating from MRS DS

General Changes

  • Applics Studio got a new and updated design, but a lot of the general workflow and approach remain the same
  • Information is more centralized
  • The new project offers project status, ports & interface description, project data and access to all other tools in the same tab
  • No more size restrictions on program size by compiler/toolchain
  • Easier to integrate with other tools, i.e. version control systems, scripts, IDEs, ...
  • Most tools have been reengineered, but same, e.g. the CAN Flasher remain the same for now

Changes to Graphical Programming

The graphical programming comes currently with less blocks and functions relating to the MRS-Developers Studio. Differences are described below.

  • Simplified User Interface
    • Eagle was just used for it's schematic abilities, whereas the graphical programming was built for this use case from the ground up. We therefore have less buttons
  • Users can now create their own libraries on a project and on application level
  • Ability to create your own blocks (implemented in c)
  • Additional library for projects which utilizing any HCS08 or HCS12 microcontroller (MRS_HCS_Library)
  • The graphical blocks MODULE_CONFIG_STRING (only for projects which utilizing any HCS08 or HCS12 microcontroller) and RESET_COUNTER (only for projects which utilizing any HCS08 microcontroller) can be set via the Graphical Programming settings

Availability of Blocks

The availability of certain graphical blocks depends on the microcontroller used by the module for which the project is built. For these graphical blocks, the required microcontroller is indicated in brackets next to the name. If no microcontroller is mentioned, the graphical block can be used for every project.

MRS_Standard_Library

CANgraph <-> MRS_Standard_Lib

  • ALGIN
  • AND_2
  • AND_4
  • AND_6
  • AVERAGE_2
  • BYTE_SPLITTER
  • CAN_DB_CHECK
  • CAN_DB_RECEIVE
  • CAN_DB_SEND
  • CAN_DB_STOP
  • CHANGE_DETECT
  • COMPARATOR
  • COMPARATOR_HYSTERESIS
  • COMPARATOR_WINDOW
  • CONVERTER_AD
  • CONVERTER_DA
  • COUNTER
  • COUNTER_MIN_MAX
  • D_FLIPFLOP
  • D_FLIPFLOP_RES
  • D_LATCH
  • DELAY
  • DELAY_OFF
  • DELAY_OFF_RTR
  • DELAY_ON
  • DELAY_ON_AND_OFF_RTR
  • DELAY_ON_RTR
  • DIG_0
  • DIG_1
  • DIGIN
  • DIGOUT
  • EDGE_DETECT_HL
  • EDGE_DETECT_LH
  • EEPROM_READ_VAR
  • EEPROM_WRITE_VAR_TRIG
  • LIN_RECEIVE
  • LIN_SEND
  • LOW_PASS
  • MATH_ABS
  • MATH_ADD
  • MATH_DIV
  • MATH_MUL
  • MATH_MULDIV
  • MATH_SUB
  • MERGE_TO_BYTE
  • MERGE_TO_WORD
  • MINMAX_MEM
  • MUX_2
  • MUX_4
  • MUX_4_DEZ
  • MUX_OUT_4
  • NOT
  • OR_2
  • OR_4
  • OSILLATOR
  • RAMP
  • RANGE_LIMITER
  • RS_FLIPFLOP
  • T_FLIPFLOP
  • USER_VARIABLE_IN
  • USER_VARIABLE_OUT
  • VALUE
  • WORD_SPLITTER
  • XOR

MRS_Specific_Library

CANgraph_specific <-> MRS_Specific_Library

  • CURRENT_CONTROL (S32K and RH850)
  • ENCODER
  • MOTOR_CONTROLLER
  • PWM_OUTPUT_CANIO
  • PWM_SET_DUTY (S32K and RH850)
  • PWM_SET_FREQ (S32K and RH850)
  • SET_PWM_FREQ (S32K and RH850)
  • SLEEP_MODE

MRS_HCS_Library

  • ALG_CAL_STATE (HCS08)
  • BUS_16BIT
  • BUS_1BIT
  • CALC_CYCLE_TIME
  • CAN_CHECK_ERROR
  • CAN_DB_TRIGGER
  • CAN_MSG_RCV
  • FREQUENCY_CNT
  • FREQUENCY_CNT_VAL
  • INCREMENTAL_ENCODER (HCS08)
  • MOT_CTRL_2X_FULLBRIDGE (HCS08)
  • PWM_CONTROL_UNI
  • PWM_OUTPUT_FULLBRIDGE_10A (HCS08)
  • PWM_OUTPUT_FULLBRIDGE_5A (HCS08)
  • PWM_OUTPUT_UNI
  • TEMP_READ (HCS08)

New Blocks

  • LIN_RECEIVE
  • LIN_SEND
  • ENCODER
  • PWM_SET_DUTY
  • PWM_SET_FREQ

Missing Blocks

The following blocks are not available within the Graphical Programming. If there is a need to use any of them, please use Developers Studio.

  • CAN_FRAME
  • CASE_MACHINE
  • EEPROM_READ_VAR
  • EEPROM_WRITE
  • MODULNAME -> can be set within the Project Data section which is located in the Project View in Applics Studio
  • SW_VERSION -> can be set within the Project Data section which is located in the Project View in Applics Studio
  • I2C_READ_VAL
  • I2C_REQUEST
  • I2C_SEND
  • I2C_WRITE_VAL
  • MICROPLEX_HB
  • MIRROR_CTRL -> Replaced by MOT_CTRL_2X_FULLBRIDGE
  • MODBUS_HW
  • MODBUS_READ
  • MODBUS_WRITE
  • MODULE_DRAWING_NR
  • MOT_CTRL_1X_FULLBRIDGE
  • MOT_CTRL_4X_FULLBRIDGE
  • PWM_CONTROL_PROP_CAN
  • PWM_OUTPUT_FULLBRIDGE_EXT
  • PWM_OUTPUT_PROP_CAN
  • PWM_OUTPUT_PROP_CAN_60A
  • SEVEN_SEGMENT_DISPLAY

Changes to Block Name

  • IN32_DB <-> CAN_RECEIVE
  • IN32_DB_CHECK <-> CAN_DB_CHECK
  • OUT_32DB <-> CAN_SEND
  • OUT_32DB_STOP <-> CAN_DB_STOP
  • OUT_32DB_TRIGGER <-> CAN_DB_TRIGGER
  • VARIABLE_IN <-> USER_VARIABLE_IN
  • VARIABLE_OUT <-> USER_VARIABLE_OUT
  • PWM_OUTPUT_FULLBRIDGE <-> PWM_OUTPUT_FULLBRIDGE_10A

Changes to usercode/C-Programming

  • New user_api
  • Html documentation instead of commented code in user_code.c planed