Re: 請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
版主
|
j 是指標變數,不是指標所指到的 unsigned char 資料,又指標為512Byte的大小所以就會用16-bit 的資料格式 (只使用 9-bit而已)。
發表於: 2008/6/3 17:02
|
|||
|
Re: 請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
資深會員
|
大家好:
謝謝版主,又有一個MPLAB V8.2顯示的問題?=> unsigned char* j; 我是定義unsigned char應該是8位元吧! 在Watch視窗為何是顯示16位元呢? Address | Symbol Name | Value | Hex 042 j 0x0143 0x0143 煩請解說.Thanks. 我有試個應該沒有關係,只是顯示上的小錯誤!
發表於: 2008/6/3 11:11
|
|||
|
Re: 請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
版主
|
參照:
Warning [358] D:\Test\MCU\PIC\HTC_16C\TS_914C\MAIN.C; 72.17 illegal conversion of pointer to integer 會出現這種錯誤是: FSR 不是 C 所宣告指標,所以會有型態上的錯誤。只要在 Hi-Tech PICC 使用指標形態變數基本上只要指向 RAM 的指標就會使用 FSR。所以寫C 的時候不要直接動 FSR否則會發生指標錯誤的Bug。 參照: unsigned char eeprom_addr; 這是正確的寫法。
發表於: 2008/6/3 8:36
|
|||
|
Re: 請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
資深會員
|
大家好:
很抱歉,版主又要麻煩你了! 1.在main()之前=> volatile unsigned char eeprom_addr @ 0x71; 2.在main()中=> unsigned char* j; ... FSR=&eeprom_addr; 3.Compiler顯示警告=> Warning [358] D:\Test\MCU\PIC\HTC_16C\TS_914C\MAIN.C; 72.17 illegal conversion of pointer to integer 不知是什麼原因? 4.當然在main()中=> unsigned char eeprom_addr; unsigned char* j; j=&eeprom_addr; 是OK的. 能否幫忙代為解說呢? Thank you very much.
發表於: 2008/6/3 8:12
|
|||
|
Re: 請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
版主
|
抱歉! 打錯字了。應該是用 & 才能抓到位址。
FSR=& eeprom_addr;
發表於: 2008/6/2 17:54
|
|||
|
Re: 請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
資深會員
|
大家好:
感謝版主回答,But這行FSR=@eeprom_addr;會有錯誤=> Error [195] D:\Test\MCU\PIC\HTC_16C\TS_914C\MAIN.C; 71.5 expression syntax 不知是何原因? 再麻煩了! Thanks.
發表於: 2008/6/2 16:43
|
|||
|
Re: 請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
版主
|
FSR=@eeprom_addr;
如果夠狠的話 : FSR = 0x71;
發表於: 2008/6/2 15:58
|
|||
|
Re: 請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
資深會員
|
大家好:
RAM的定址已解決=> volatile unsigned char eeprom_addr @ 0x71; 但現在又有一個問題,如何將RAM的位址設給FSR呢? 嘗試中... Thanks.
發表於: 2008/6/2 15:52
|
|||
|
請問於PICC16 V9.6該如何自定RAM位址?
|
||||
---|---|---|---|---|
資深會員
|
大家好:
如題,個人使用16f914想將變數的RAM address, 定於BANK0 之0x71及0x72,不知該如何設定, 煩請指教,Thanks.
發表於: 2008/6/2 14:24
|
|||
|