项目概述
这是一款专为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)所在的同一文件夹中。