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

論壇索引


Board index » All Posts (Libra)




Re: MPLAB X IDE include問題
管理員
管理員


如果更改編碼可以解決時, 也是蠻不錯的好方法
通常編碼是為了在程式中添加雙位元文字(中文,日文等)時會用到,
比方添加中文註解, 但這個問題根本上還是X IDE的parser未完善導致,

剛剛測試了一下, 我使用MPLAB X IDE v5.40去開同一個專案時,
發現v5.40的parser結果可以解決我在v5.35出現的
"Unable to resolve identifier" 提示,
Ctrl+\ 也可以正確找到定義的位置

MPLAB X IDE v5.40開始, 只支援Windows 64bits 版本,
如果你的Windows還是32bit版本時請勿安裝喔!

發表於: 2020/5/28 8:42
頂部


Re: MPLAB X IDE 字體自動縮放問題
管理員
管理員


如果你的Windows有將字型放大時, 除了字型會變小之外也會有模糊情形
1. 請在MPLAB X IDE的捷徑按右鍵->[內容]
2. [相容性]->[變更高DPI設定]
3. [v]覆寫高DPI縮放比例行為, 縮放執行者
再執行看看

Attach file:



jpg  (0.00 KB)


jpg  (0.00 KB)


發表於: 2020/5/27 8:24
頂部


Re: MPLAB X IDE include問題
管理員
管理員


MPLAB X IDE code parser會嘗試尋找程式代碼中的定義或是宣告, 來警告USER可能遺漏的地方, 因此有燈泡這樣的提示, 但是MCU家族越來越多, X IDE裡面Gen code的重複參照及先後繼承關係變複雜了, 因此導致Code Parser無法正確找到引用的.h檔頭或是宣告定義, 但是編譯器會正常的編譯沒有問題, 這只是程式代碼的Parser錯誤並非程式有誤, 如果覺得這樣的提示有困擾, 可以在Tool中的設定將之選擇性的關閉
縮圖


如果是自己定義的宣告也出現警告時, 可以嘗試重新parser看看可否找到
在專案上按右鍵, 依下圖選擇
縮圖

Attach file:



jpg  (0.00 KB)


jpg  (0.00 KB)


發表於: 2020/5/26 9:02
頂部


Re: SPI 傳輸 Arduino(Master) to SAM D21 Xplained Pro(Slave)
管理員
管理員


我使用Studio 7裡面的SAMD21 SPI example code (MASTRE/SLAVE), 拿兩片SAMD21 Xplained EVB對接測試是正常的喔!
檢查SPI Master/Slave 的MISO與MOSI是否交換對接, 或者勾示波器量一下看哪一邊動作異常

Attach file:



jpg  (0.00 KB)


jpg  (0.00 KB)


發表於: 2020/5/26 8:46
頂部


Re: ATSAME54P20A--定址
管理員
管理員


你是用SAME54-XPlained PRO EVB? 可以把你的專案寄給我試試, 另外提供你目前使用的環境
1. Windows 版本
2. MPLAB X IDE 版本
3. DFP 版本
4. CMSIS 版本
5. XC32 版本
6. Harmony3 版本

我有另外寄e-mail到你的Yahoo信箱了, 如果有公司的E-mail可以改用公司的E-Mail寄給我比較不會退件

發表於: 2020/5/25 13:33
頂部


Re: ATSAME54P20A--定址
管理員
管理員


真奇怪, 我的就可以, 把我的.ld 跟 .map寄給你看一下
這檔案用7z壓縮的, 要用7z解壓縮, 不能在Windows直接點用winzip解壓縮

Attach file:


Link only for registered users

發表於: 2020/5/25 11:07
頂部


Re: ATSAME54P20A--定址
管理員
管理員


你改過的.ld要在X IDE的專案中, 加到Linker File底下, Compiler才會引用到, 不是Copy過來而已
Linker Files\ 按右鍵 -> Add Existing Item

發表於: 2020/5/25 8:26
頂部


Re: ATSAME54P20A--定址
管理員
管理員


所以如果使用自動變數就會正常?
uint8_t Can0MessageRAM[CAN0_MESSAGE_RAM_CONFIG_SIZE];
uint8_t Can1MessageRAM[CAN1_MESSAGE_RAM_CONFIG_SIZE];

.bss是在linker file中去指定的
SAME54的Global Linker file在(XC32 v2.40之後只有64bit)
C:\Program Files\Microchip\xc32\v2.40\pic32c\lib\proc\ATSAME54P20A\ATSAME54P20A.ld

這裡不可以改它, 如果你要修改時, 要把它Copy到你的專案下, 然後在你的專案下的\Linker Files中加進來
縮圖

ATSAME54P20A.ld中
RAM_ORIGIN 0x20000000
RAM_LENGTH 0x40000
決定了Compiler可以管理的SRAM起始位置及大小
當然也可以去改變它後, 得到這樣的結果
RAM Data-Memory Usage
section                    address  length 
[bytes]      (dec)  Description
-------                 ----------  -------------------------  -----------
.
bss                    0x20010000            0xc          12  Uninitialized data 
.bss.can1Obj            0x2001000c           0x28          40   
.bss.can0Obj            0x20010034           0x28          40


在程式中沒人管的區段, 就任憑自己去處置了
uint32_t *Can0MessageRAM = (uint32_t *)(0x20000000U);
uint32_t *Can1MessageRAM = (uint32_t *)(0x20000040U);
((uint8_t*)Can0MessageRAM)[0] = 0x12;
((uint8_t*)Can0MessageRAM)[1] = 0x34;
((uint8_t*)Can1MessageRAM)[0] = 0x56;
((uint8_t*)Can1MessageRAM)[1] = 0x78;

更動記憶體配置可能造成不可預期的結果, 請務必小心謹慎後果自負.

Attach file:



jpg  (0.00 KB)


發表於: 2020/5/22 15:45
頂部


Re: ATSAME54P20A--定址
管理員
管理員


你好, 這個部分有兩個問題
1. 原先的寫法
uint8_t Can0MessageRAM[CAN0_MESSAGE_RAM_CONFIG_SIZE] __attribute__((aligned(32), address(0x20000000)));
uint8_t Can1MessageRAM[CAN1_MESSAGE_RAM_CONFIG_SIZE] __attribute__((aligned(32), address(0x20000000 + CAN0_MESSAGE_RAM_CONFIG_SIZE)));

CAN0_MESSAGE_RAM_CONFIG_SIZE = 56
Can1MessageRAM 的 address 因為aligned(32)的關係, 會等於address(0x20000000 + 32), 導致 Can1MessageRAM 記憶體位址去疊到Can0MessageRAM
Can0MessageRAM @ 0x20000000, size 56 (0x20000000 ~ 0x20000038)
Can1MessageRAM @ 0x20000020, size 56
所以請拿掉aligned(32)或是將Can1MessageRAM的定址取為32的倍數
最後
uint8_t Can0MessageRAM[CAN0_MESSAGE_RAM_CONFIG_SIZE] __attribute__((aligned(32), address(0x20000020)));
uint8_t Can1MessageRAM[CAN1_MESSAGE_RAM_CONFIG_SIZE] __attribute__((aligned(32), address(0x20000020 + ((CAN0_MESSAGE_RAM_CONFIG_SIZE%32)+1)*32)));

2. 另外一個問題是上面你看到, 起始位置不是在0x20000000而是自0x20000020開始, 你看MAP file時會發現前面0x20000000開始有保留一小塊區塊, 這部分需要避開
.bss 0x20000000 0x10 16 Uninitialized data
這部分會因為你用到的Harmony Module而不同, 看起來是因為SYS_Tick Module拿去用了, 我建的專案佔了0x0C, 你的佔了0x10, 因為aligned(32)所以我將起始位置移到0x20000020

發表於: 2020/5/22 11:46
頂部


Re: 連絡電郵更改
管理員
管理員


您好,請重新註冊一個新的帳號,您舊有資料都不會刪除

發表於: 2020/5/13 12:57
頂部



« 1 ... 20 21 22 (23) 24 25 26 ... 33 »



:::

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... ]

教育訓練中心

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