AGM CPLD (AGRV2K )的時鐘(外部時鐘和片上內部振蕩器)
外部晶振 與 內部振蕩器:
mcu 和 cpld 聯合編程時, 整顆芯片需要一顆外部晶振。
(芯片有內部振蕩器, 但誤差較大, 校準后 5%以內誤差, 參后續介紹)
1、使用外部晶振
該晶振是 MCU和 CPLD 共用的, (沒必要為 CPLD 再單獨提供一顆晶振) 。晶振可以是有源的, 也可以是無源的。
【注: 這里的外部晶振配置, 跟單純使用 MCU 是一樣的】
如果是無源晶體, 頻率限制在 4M~16M。 要接到芯片的 OSC_IN/OUT 引腳。 然后VE 中直接定義主頻多少 M 即可。 如
如果是有源晶體, 頻率無限制。 根據接入點分為兩種情況:
1) 如果接入到 OSC_IN 引腳:
ve 里定義同上(配置 HSECLK 項) 。
同時, 需要在 platformio.ini 里, 增加配置宏: BOARD_HSE_BYPASS=SYS_HSE_NONE,如圖:
2) 如果接入到別的 IO 引腳(如 PIN_2) :
同 1)中, platformio.ini 里也同樣增加配置宏;
然后在 VE 配置中, 除了配置 HSECLK 項 外, 還需要配置 PLL_CLKIN 項, 如圖:
配置完后, 需要重新下載 logic, 重新下載 code。
2、使用內部振蕩器:
校準后精度大約在 5%以內, 想省成本且對時鐘要求不高的話可以使用。如對精度有要求,海振遠建議預留外部晶振接口,方便自由選擇。
使用方式:
在 VE 里增加: “PLL_CLKIN PIN_OSC”, 如下圖:
只修改以上配置, 不用配置 HSECLK 項, 代碼中也不需修改。
注: 自動校準目前有以下使用限制:
a) 邏輯部分要壓縮, platformio.ini 中配置 board_logic.compress = true
b) 校準動作是在燒錄時進行的。
燒錄時, 需要使用 swd 方式且通過我們的軟件燒錄, uart 不支持。(即: 出廠燒錄不支持 uart 方式)
目前測試過 jlink 和 dap 校準結果都還不錯, 但是也出現過一個客戶使用其他燒錄器校準結果差很多。
(對一個全新的或是 wipe 過后的芯片燒錄會看到校準信息)。
AGM AG32系列MCU,不僅僅是高性能MCU,還在片上集成了2KLE FPGA邏輯資源,非常適合工業控制、醫療及消費市場。芯片技術支持與芯片訂購,可聯系海振遠科技提供支持。