Re: 關於16F15224 FLASH寫的問題
|
||||
---|---|---|---|---|
初級會員
|
感謝biko的補充說明,對於我觀念的建立很有幫助
Program Memory Size (Words)區間~這我算是懂了 但..... The maximum Program Flash Memory address for the 0x3FFF family is 0x07FF. 0x3FFF family? 如何判定是0x3FFF family? 或何謂0x3FFF family? 0x3FFF family is 0x07FF.? <== 如何看這東西, 為什麼0x3FFF family 就等於最大位址 0x07FF.? 抱歉~如果是我腦袋轉不過來請多包涵
發表於: 2023/3/6 16:29
|
|||
|
Re: 關於16F15224 FLASH寫的問題
|
||||
---|---|---|---|---|
初級會員
|
感謝Darren的回覆
不過關於0X3FFF與0X7FF是什麼關係~我還是弄不清楚 DATASHEET說最大到0X7FF,但我明明針對0XE00位址進行寫入資料,功能也正常, 所以也不是DATASHEET說的最大到0X7FF,不然我應該無法針對位址0XE00進行寫入處理? 希望有不同見解的人解說一下 謝謝
發表於: 2023/3/3 9:10
|
|||
|
關於16F15224 FLASH寫的問題
|
||||
---|---|---|---|---|
初級會員
|
晶片:16F15224
The maximum Program Flash Memory address for the 0x3FFF family is 0x07FF 可是,我用PROGRAM MEMORY視窗觀看只到0XFFF 所以~0X3FFF,0X07FF,0XFFF這3者是什麼關係? 我用MCC產生的CODE,測試 FLASH_WriteWord 函數後,用PROGRAM MEMORY視窗觀看,我可以寫0XE00沒問題阿,那上面那段英文寫最大到0X7FF又是什麼意思? https://www.microchip.com.tw_data_lib/ ... che/887_63ff25fb21478.jpg 另外,MCC產生的程式碼 uint16_t word <== 最大值應該到0X3FFF而以吧?而不是 uint16的0XFFFF ? 還是說不要大於0XFF,以0X3FFF而言,0X3F好像代表命令並非資料? void FLASH_WriteWord(uint16_t flashAddr, uint16_t *ramBuf, uint16_t word) { uint16_t blockStartAddr = (uint16_t)(flashAddr & ((END_FLASH-1) ^ (ERASE_FLASH_BLOCKSIZE-1))); uint8_t offset = (uint8_t)(flashAddr & (ERASE_FLASH_BLOCKSIZE-1)); uint8_t i; // Entire row will be erased, read and save the existing data for (i=0; i ramBuf[i] = FLASH_ReadWord((blockStartAddr+i)); } // Write at offset ramBuf[offset] = word; // Writes ramBuf to current block FLASH_WriteBlock(blockStartAddr, ramBuf); } 抱歉~我想貼圖,但一直弄不好,我擔心可能沒圖
發表於: 2023/3/1 18:30
|
|||
|
12F675 A/D 轉換偵測電壓一問 (已解決~^0^)
|
|
|||
---|---|---|---|---|
初級會員
|
Attach file: (0.00 KB)
發表於: 2011/5/27 15:21
|
|||
|