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)