項目概述
這是一款專為Padauk PFS154微控制器設計的輕量級匯編開發工具,旨在為嵌入式開發者提供簡潔的匯編編程體驗。本工具不基于SDCC等高級開發框架,其核心設計理念是"少即是多",特別適合需要快速上手匯編開發或進行底層硬件研究的場景。
先簡單介紹應廣單片機PFS154的性能參數
AC 阻容降壓供電或有高EFT要求之應用,必要時需修改系統電路以提高抗干擾能力
工作溫度範圍: -40°C ~ 85°C
1. 2KW MTP 程序儲存器 (可編程1,000次以上)
2. 128 Bytes 數據儲存器
3. 一個16位計時器
4. 兩個8位定時器(可做為PWM產生器)
5. 三個11位PWM生成器
6. 提供一個比較器
7. 14 個IO 引腳帶有上拉電阻選項
8. 提供3組不同的IO 驅動能力以滿足不同的應用需求
9. 可選擇的IO 驅動能力(普通或低)
10. 每個IO 引腳都可設定喚醒功能
11. 內建 1/2 VDD LCD 偏置電壓生成器,可支持最大 4x10 點陣的 LCD屏幕
12. 時鐘源:內部高頻RC震蕩器,內部低頻RC震蕩器和外部晶體震蕩(EOSC,32KHz 保留)
13. 對所有帶有喚醒功能的IO,都支援2種可選擇地喚醒速度:正常喚醒與快速喚醒
14. 八段LVR 復位電壓設定: 4.0V, 3.5V, 3.0V, 2.75V, 2.5V, 2.2V, 2.0V, 1.8V
15. 2個外部中斷引腳
注:本項目尚處于實驗階段(當前版本v0.1),建議在開發關鍵項目前進行充分測試。目前僅支持PFS154型號,未來計劃擴展至PFS173型號,但暫不考慮OTP型微控制器支持。
開發者需要注意:
技術特性
PFS154 vs PFS173
SDCC替代方案
free-pdk燒錄工具
SRAM變量聲明語法
SFR寄存器操作
位操作技巧(.bit語法)
軟件延時函數實現
中斷向量配置(.org指令)
HEX文件生成原理
用戶痛點(解決實際問題)
Paduak燒錄失敗排查
匯編程序報錯處理
時鐘校準失敗修復
中斷標志位清除方法
棧指針初始化配置
IO端口方向設置(PAC寄存器)
低功耗模式實現
開發環境配置
2.1 基礎環境
文本編輯器:支持純文本格式的任何編輯器(推薦VS Code/Notepad++)
Python 3環境:官網下載安裝或使用內置的PFS154.exe
2.2 開發流程
創建匯編源文件(建議命名a.asm)
將源文件與pfs154.py置于同一目錄
3.運行腳本:
Python方式:執行python pfs154.py
獨立程序:Windows用戶雙擊PFS154.exe
生成a.hex文件用于燒錄
硬件燒錄命令
easypdkprog -n PFS154 write a.hex
語法規范
4.1 段聲明
4.2 變量聲明
- SRAM變量:
變量名 M[地址]h
(例:myvar M2Ah) - SFR寄存器:
寄存器名 IO[地址]h
(例:clkmd IO03h) - 預聲明SFR:已在pfs154.py中內置(參見var=后的列表)
4.3 位操作
- 顯式聲明:
位名 [存儲位置].[位序號]
(例:Z IO00h.0) - 動態訪問:
變量名.位序號
(例:myvar.5) - 端口訪問:直接使用PA.0形式,無需預聲明
- 核心語法要素
- 標簽定義:必須以冒號結尾(例:main:)
- 立即數:前綴#標識(例:#9ch)
- 地址定位:.org指令使用3位十六進制地址(例:.org010h)
- 校準調用:使用前綴十六進制地址(例:call前綴十六進制地址(例:call7edh)
- 最佳實踐示例
6.1 系統初始化模板
6.2 基礎LED閃爍(1秒周期)
.rom wdreset goto main .org010h ; 中斷向量 pushaf xor pa,#1 ; 翻轉LED set0 intrq.2 ; 清除中斷標志 popaf reti main: ... ; 系統初始化 stt16 t1 ; 初始化T16定時器 mov t16m,#9fh ; 配置時鐘源與分頻 set1 inten.2 ; 啟用定時器中斷 engint ; 全局中斷使能 loop: ; 主循環 nop goto loop
- 注意事項
- 代碼區分:中斷服務程序必須置于.org010h地址
- 校準調用:必須通過7edh和7edh和7eeh進行硬件校準
- 端口配置:使用pac寄存器設置I/O方向(1=輸出)
- 中斷管理:需手動清除中斷標志位(intrq寄存器)
本工具致力于降低Padauk開發的學習曲線,建議結合官方數據手冊使用。歡迎通過issue提交使用反饋,共同完善此匯編工具
- Padauk PFS154開發指南
- 微控制器匯編入門教程
- Paduak匯編工具鏈配置
- 輕量級匯編開發環境
- 單片機中斷程序編寫
- 硬件校準方法(IHRC/Bandgap)
- 定時器T16應用案例
- 裸機編程最佳實踐
若對以上說明有不清楚之處或仍有其他疑問, 請與 逐高電子技術方案開發部 sales11@zicoic.com 聯絡
下載 PFS154 匯編程序注意:
源文件必須命名為 a.asm,并且應位于 pfs154.py(或 pfs154.exe)所在的同一文件夾中。