User manual
348
mikoBasic PRO for dsPIC30/33 and PIC24
MikroElektronika
Copy Code To Clipboard
program Flash_Test
dim WriteWordArr as word[8]
WriteByteArr as byte[32]
ReadByteArr as byte[40]
RealongwordArr as word[20]
pw as ^word
pb as ^byte
i as word
temp_byte as byte
main:
‘ Initialize arrays
WriteWordArr[0] = “*” WriteWordArr[1] = “m” WriteWordArr[2] = “i” WriteWordArr[3] = “k”
WriteWordArr[4] = “r” WriteWordArr[5] = “o” WriteWordArr[6] = “E” WriteWordArr[7] = “*”
WriteByteArr[0] = “m” WriteByteArr[1] = “i” WriteByteArr[2] = “k” WriteByteArr[3] = “r”
WriteByteArr[4] = “o” WriteByteArr[5] = “E” WriteByteArr[6] = “l” WriteByteArr[7] = “e”
WriteByteArr[8] = “k” WriteByteArr[9] = “t” WriteByteArr[10] = “r” WriteByteArr[11] = “o”
WriteByteArr[12] = “n” WriteByteArr[13] = “i” WriteByteArr[14] = “k” WriteByteArr[15] = “a”
WriteByteArr[16] = “ “ WriteByteArr[17] = “F” WriteByteArr[18] = “l” WriteByteArr[19] = “a”
WriteByteArr[20] = “s” WriteByteArr[21] = “h” WriteByteArr[22] = “ “ WriteByteArr[23] = “e”
WriteByteArr[24] = “x” WriteByteArr[25] = “a” WriteByteArr[26] = “m” WriteByteArr[27] = “p”
WriteByteArr[28] = “l” WriteByteArr[29] = “e” WriteByteArr[30] = “.” WriteByteArr[31] = 0
pb = @WriteByteArr
‘--- erase the block rst
FLASH_Erase32(0x006000)
pb = @WriteByteArr[0]
FLASH_Write_Compact(0x006000, pb, 36)
(*
This is what FLASH_Write_Compact() does “beneath the hood”
*
FLASH_Write_Init(0x006000, pv1)
FLASH_Write_Loadlatch4_Compact()
FLASH_Write_Loadlatch4_Compact()
FLASH_Write_Loadlatch4_Compact()
FLASH_Write_DoWrite()
*)
‘--- read compact format
pb = @ReadByteArr
FLASH_Read4_Compact(0x006000, pb)
pb = pb + 12
FLASH_Read4_Compact(0x006008, pb)
pb = pb + 12
FLASH_Read4_Compact(0x006010, pb)
pb = pb + 12
pb^ = 0 ‘termination
UART1_Init(9600)
UART1_Write(10)
UART1_Write(13)