Table of Contents
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) andRESET_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 theProject View
in Applics Studio - SW_VERSION -> can be set within the
Project Data
section which is located in theProject 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