會員登陸
帳號:

密碼:

記住我



忘記密碼?

現在註冊!
網站導航
最新下載
訪問統計 (自2012/5/3)


正在流覽:   1 名訪客





PIC16LF18857 const array儲存在program memory的配置問題
新會員
註冊日期:
2016/01/04 15:57
所屬群組:
註冊會員
文章: 17
等級: 2; EXP: 86
HP : 0 / 46
MP : 5 / 222
離線
想請問一下假設儲存一串const unsigned char array[]到program memory.
PIC16的program memory是以word(14-bit)為單位,我編譯後去看map檔
好像是一個unsigned char放一個位址。

問題:如果一個char佔一個word空間,就會浪費6bits,有沒有方法可以連續儲存,不要空6bits?
但是這樣資料就會被切開,cpu還要把一個char從不同位址抓出來再合起來
除了更耗時間會不會指令更多更浪費空間?


謝謝

4月19日 10:50:43
轉換PDF檔 列印


Re: PIC16LF18857 const array儲存在program memory的配置問題
資深會員
註冊日期:
2010/06/30 16:18
來自 CAE, Microchip Technology Inc.
所屬群組:
站務管理者
註冊會員
文章: 1538
等級: 33; EXP: 36
HP : 161 / 809
MP : 512 / 16909
離線
這是PIC12/16的結構使然, 儲存在程式記憶的資料, 只能使用到較低的8個Bit.
所以目前沒有方法可以處理.....

4月19日 10:55:10
轉換PDF檔 列印


Re: PIC16LF18857 const array儲存在program memory的配置問題
新會員
註冊日期:
2016/01/04 15:57
所屬群組:
註冊會員
文章: 17
等級: 2; EXP: 86
HP : 0 / 46
MP : 5 / 222
離線
謝謝

那PIC18就可以一個word存兩個chars是嘛?

4月19日 11:02:07
轉換PDF檔 列印


Re: PIC16LF18857 const array儲存在program memory的配置問題
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 14052
等級: 72; EXP: 35
HP : 1070 / 1783
MP : 4684 / 69415
離線
PIC18 的 Flash 架構是 16-bits,所以可以存兩個 const char 的宣告。

4月24日 14:54:30
轉換PDF檔 列印






無法在此發表文章
可以在此觀看文章
無法回覆文章
無法編輯自己的文章
無法刪除自己的文章
無法發起投票調查
無法在此投票
無法上傳附加檔案
無法不經審核直接發表文章

[進階搜尋]


搜尋
線上教學影片
網頁捷徑
2017 Summer Elite 報名
教育訓練
其它網站連結
電話: 02-25000405
產品技術問題產品技術支援專線:0800-717718 台北02-25088600 新竹03-5778366 Ext. 8600 高雄07-2137830 MicrochipDIRECT 專線: 07-2137830
Powered by XOOPS © 2001-2012 The XOOPS Project