• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::

論壇索引


Board index » All Posts (匿名小鬼)




dsPIC33CK256MP206 Bootloader的記憶體問題 以及MPLABX上顯示的問題
#1
高級會員
高級會員


自己刪除XD

發表於: 2021/10/4 9:49

Edited by 匿名小鬼 on 2021年10月04日 10:46:07
頂部


Re: MPLAB IPE 閃退
#2
高級會員
高級會員


謝謝 我成功了

發表於: 2021/5/27 10:04
頂部


MPLAB IPE 閃退
#3
高級會員
高級會員


目前小弟安裝好IPE之後 一直開啟不了
其他電腦可以但 唯獨這一台筆電就怪怪的
刪除後重新安裝也不行
請問我該用甚麼方式解決呢?電腦
環境是 Intel I5 2450M WIN10 企業版 LTSC 解析度1366X768

發表於: 2021/5/20 9:30
頂部


Re: p33CK128MP505的AIVT設定
#4
高級會員
高級會員


後來有試出來把備用中斷向量擺放到0x200的方法
把原本
專案(右鍵)=>Properties=>點選XC16的xc16-ld選項 有個No Interrupt Vector Table 取消打勾
然後把剛剛加上去的
__AIVT_BASE
改成
__AIVT_BASE = 0x200;
就成功了

發表於: 2021/3/31 17:16
頂部


Re: p33CK128MP505的AIVT設定
#5
高級會員
高級會員


自己回覆一下自己好了
我使用的是IC是 PIC33CK128MP505系列的
開發環境是MPLABX 配合XC16 1.70版本
發現在使用上跟以往很不太一樣
在XC16他會自己幫你配置IVT跟AIVT的位置
如果想要取消他自動配置功能要去
專案(右鍵)=>Properties=>點選XC16的xc16-ld選項 有個No Interrupt Vector Table
勾選以後他就會取消自動配置
這時你就要去找出GLD檔案自己去配置Interrup的位置
在gld檔案找到
__IVT_BASE = 0x4;
看看有沒有一行指令
__AIVT_BASE = 之類的
如果沒有就需要自己補上
__AIVT_BASE = 0x800;
再來是找到
#if __XC16_VERSION 小於 1026
這邊把程式改成
#if __XC16_VERSION 大於 1026

再來是在你的程式開頭加上這三行
#pragma config AIVTDIS = ON
#pragma config BSEN = ON
#pragma config BSLIM = 0x1FFD
再來就是在你程式裡面加上
INTCON2bits.AIVTEN = 1;
這個是當你要使用備用中斷時候才開啟

以上是我更改的過程

但其實我自己不了解的的是Datasheer的公式
我怎麼算都算不出我需要擺放的位置
[(BSLIM[12:0] – 1) x 0x800]
根據前面的#pragma config BSLIM = 0x1FFD
我測試出來他是擺放在0x800的位置
(0x1FFD-1)x 0x800 怎麼都不會是在0x800
這點我比較納悶


第二
假設是(2-1)x 0x800 = 0x800
那就代表 備用中斷的位置在 0x800
主要中斷位置在0x04 長度是0x1FC
這中間 0x200=>0x800整整浪費掉
這點我也不太懂 為什麼會這樣設計

有前備可以指導一下該怎麼擺放到0x200的位置嗎?

我是有試過備用中斷程式碼放到了0x200可是程式確不能執行

發表於: 2021/3/31 14:44
頂部


p33CK128MP505的AIVT設定
#6
高級會員
高級會員


各位先進好
目前在學習AIVT的設定
小弟目前的想法是
Bootloader時候用備用向量表
等到進入APP時候 更動 INTCON2bits.AIVTEN 指引APP使用原本的向量表
所以 小弟在寫的時候
第一步驟是將
FSEC寄存器中的AIVTDIS的AIVTEN設定為1
#pragma config AIVTDIS = ON
第二在進入Bootloader時候要把INTCON2bits.AIVTEN 設定成備用的
到這邊應該都沒錯吧?
再來就是BSLIM的設定
可是我在Cconfigration bits 的設定視窗時候 他並沒有其他選項可以調整
參照:
最後我打開GLD檔的時候 發現結構裡面並沒有AIVT的位置設定 這樣是正確的嗎?
參照:
另外打開.H檔時候
發現AIVT的位置竟然是0x0
IVT位置是0x04
#define __AIVT_BASE 0x0
#define __AIVT_LENGTH 0x200

#define __RESET_BASE 0x0
#define __RESET_LENGTH 0x4

#define __IVT_BASE 0x4
#define __IVT_LENGTH 0x1fc

請問有大大能夠指導我一下嗎?
或者有相關的DataSheet可以參考嗎? 謝謝

發表於: 2021/3/29 16:56

Edited by 匿名小鬼 on 2021年03月29日 17:13:30
頂部


詢問MODBUS的0x03讀取功能
#7
高級會員
高級會員


各位大大好
小弟目前是使用33CK256MP206來做MODBUS
但有個疑惑
關於MODBUS 0x03讀取的功能
小弟目前的理解是
一個暫存器的資料是兩個Byte組成一個(Word)
然後0x03讀取時候是以暫存器的數量
所以Byte數一定是 2的倍數
但有沒有可能暫存器是超過2Byte的?
因為目前要寫User_Name 跟 User_Password
可是這兩個參數 他的Byte數都是不固定的
是依照使用者輸入的數值當作數量
像這種情況 還能使用MODBUS達成嗎?
謝謝

目前想到的辦法是 把User_Name 跟 User_Password
先設定好最大只能填多少文字進去
請使用者把所有的資料讀取出來
例如 User_Name 最多可以填30個文字(Byte)
30個文字(Byte) = 15個暫存器號碼
所以使用者一次就要讀取這15個暫存器
才會知道

發表於: 2020/12/21 11:20
頂部


Re: 使用MCLR將MCU RESET之後 Data Memory裡面的自定義變數會重置嗎?
#8
高級會員
高級會員


噢 對! 用指標也可以
謝謝R大指導

太感謝了

發表於: 2020/12/2 14:00
頂部


Re: 使用MCLR將MCU RESET之後 Data Memory裡面的自定義變數會重置嗎?
#9
高級會員
高級會員


那有沒有設定是說 MCLR拉地以後 可以自動清除?
如果沒有的話 我手動初始化也是個辦法 只是蠻多變數的XD

發表於: 2020/12/2 10:33
頂部


使用MCLR將MCU RESET之後 Data Memory裡面的自定義變數會重置嗎?
#10
高級會員
高級會員


各位前輩好
小弟目前有一個疑問是
如果將MCLR拉LOW之後
Data Memory 裡面的資料會自動重新歸0嗎?

謝謝

發表於: 2020/12/2 9:57
頂部



(1) 2 3 4 ... 11 »



:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------