check the display unit of [cell size] from the pop-up menu displayed by right-clicking on the [memory browser] view.
if the display unit is 1 byte, the same image as the actual memory is displayed in bytes. if the display unit is 2 bytes or more, it will be displayed for each set unit. for example, if the display unit is 2 bytes, the value for 2 bytes is displayed by swapping the upper 1 byte and the lower 1 byte.
lexide-ω is upward compatible with lexide-u16. when using a lexide-u16 project with the lexide-ω, convert it to a lexide-ω project. please follow the steps below to convert to a lexide-ω project. 1) select the project and right click 2) select [configure] from the pop-up menu 3) select [converter to lexide-ω project] note that lexide-ω projects cannot be used with the lexide-u16. when converting a leixde-u16 project for lexide-ω, save the original project before converting.
lexide-u16 window position information is stored in the workspace ".metadata\.plugins" folder. if you use the windows standard zip function ([right-click] > [send to] > [compressed (zipped) folder]) in explorer to compress a zip file, some parts of the linux format folder starting with a dot are not compressed. in this case, extracting the zip file and opening it with lexide-u16 will reset the window position information. if you want to compress the workspace, please use a compression application that supports linux format folders such as 7-zip or lhaplus.
the method to redisplay the "select a directory as workspace" dialog is as follows. 1. select [window] > [preferences] from the lexide-u16 main menu. 2. select [general] > [startup and shutdown] > [workspaces] from the left panel of the [preferences] dialog. 3. enable the [prompt for workspace on startup] checkbox.
code generation tools (startup config tool/peripheral config tool) plug-ins are not compatible with lexide-ω. for this reason, lexide-ω does not appear in the selection items of the lapis menu. we apologize for the inconvenience, but please start each tool from the windows start menu.
[ml62q1000 series] in the windows start menu "laps code generation tools", select "ml62q1000 startup config tool" and "ml62q1000 peripheral configuration tool".
[ml62q2000 series] in the windows start menu "laps code generation tools", select "startup config tool" and "peripheral config tool".
after creating a project with the above setting tool, it can be started by double-clicking the project file (*1) displayed in the lexide-ω project tree.
transition to $$brk_reset,$$error in the startup file (*.asm) occurs when the brk instruction (0xffff) is executed. addresses to which no instruction is assigned are filled with 0xffff, so it seems that for some reason this address was executed and transitioned to $$brk_reset, $$error. as a possible cause, ・interrupt vector is not defined ・a branch destination (function) such as an indirect call is not defined ・interrupts are enabled within interrupt functions that disable multiple interrupts ・stack overflow occurs and so on. please check if any of the above apply. transitions can be easily checked using the branch trace function of the on-chip emulator.
as the memory model goes from small to large, the size of pointers to functions changes from 2 bytes to 3 bytes. please note that when using an array of pointers to functions. the sizeof operation result for a single pointer to a function in the large model is 3, but in the case of an array of pointers to functions, a 1-byte padding is inserted after each element. so with 5 elements, the size of the array is ((pointer size 3 bytes) (padding 1 byte)) * (number of elements 5) = 20 bytes. for details, see "126.96.36.199 arrays other than char type" in "ccu8 programming guide".
also, when calculating the number of elements in an array, it is generally calculated by dividing the size of the entire array by the size of the elements in the array. therefore, the following macro may be defined as a macro for calculating the number of array elements. #define arr_num(array) (sizeof(array)/sizeof(array)) if the pointer size is 3 bytes, the total array size includes 1 byte padding for each element, so the number of elements is calculated incorrectly. in this case, you need to change it as follows. #define arr_num(array) (sizeof(array)/(sizeof(array) == 3 ? 4 : sizeof(array)))