配置方法一般如下
#include <p24Fxxxx.h>
void PMP_Init(void) {
// 配置 PMP 为主模式,16 位数据宽度
PMMODE = 0; // 先清零
PMMODEbits.MODE = 0; // 主模式
PMMODEbits.WAITB = 1; // 地址建立时间
PMMODEbits.WAITM = 1; // 数据保持时间
PMMODEbits.WAITE = 1; // 使能时间
PMMODEbits.MODE16 = 1; // 16 位数据宽度
// 配置控制信号
PMCON = 0; // 先清零
PMCONbits.PTWREN = 1; // 使能写信号
PMCONbits.PTRDEN = 1; // 使能读信号
PMCONbits.PMPEN = 1; // 使能 PMP 模块
}
void PMP_Write(uint16_t address, uint16_t data) {
PMADDR = address; // 设置地址
PMDIN = data; // 写入数据
}
uint16_t PMP_Read(uint16_t address) {
PMADDR = address; // 设置地址
return PMDIN; // 读取数据
}
|