[开发工具] 微芯提的PMP是一种外设吗?

[复制链接]
 楼主| yuliangren 发表于 2025-3-19 13:36 | 显示全部楼层 |阅读模式
我看介绍好像是图形化操作,这PMP是一种外设吗?Enhanced Parallel Master Port

锵才才 发表于 2025-3-20 16:16 | 显示全部楼层
PMP是一种并行接口外设, 主要用来访问并行的存储器,如并行的FLASH,SRAM,DRAM. 不过现在随着串行的时钟速率的提高,串行存储器应用越来越广泛,毕竟布线简单。图形方案里有些要用到并行的存储器来保存图片,所以PMP还是会被用到
yiy 发表于 2025-3-21 16:30 | 显示全部楼层
PMP(Parallel Master Port,并行主端口) 是微芯科技(Microchip)在其部分微控制器(如PIC24系列、dsPIC33系列等)中提供的一种外设模块。它是一种并行的硬件接口,用于实现微控制器与外部并行设备(如LCD显示屏、SRAM、FPGA、CPLD等)之间的高速数据传输。
yiy 发表于 2025-3-21 16:30 | 显示全部楼层
PMP 的主要特点:
并行接口:

PMP 支持 8 位或 16 位的并行数据传输,适合需要高速数据交换的应用场景。

多种工作模式:

主模式(Master Mode):微控制器作为主设备,主动控制外部设备。

从模式(Slave Mode):微控制器作为从设备,响应外部主设备的控制。

灵活的时序控制:

PMP 提供了可配置的读写时序(如地址建立时间、数据保持时间等),可以适配不同外部设备的时序要求。

地址和数据线分离:

PMP 提供了独立的地址线和数据线,方便直接连接外部存储器或外设。

支持多种外设:

PMP 可以用于连接 LCD 显示屏、SRAM、NOR Flash、FPGA、CPLD 等设备。

DMA 支持:

部分微控制器的 PMP 模块支持 DMA(直接内存访问),可以进一步提高数据传输效率,减少 CPU 开销。
yiy 发表于 2025-3-21 16:30 | 显示全部楼层
PMP 的典型应用:
连接 LCD 显示屏:

PMP 可以直接驱动字符型或图形型 LCD 显示屏,简化硬件设计。

扩展外部存储器:

通过 PMP 可以连接外部 SRAM 或 NOR Flash,扩展微控制器的存储容量。

与 FPGA/CPLD 通信:

PMP 可以用于微控制器与 FPGA 或 CPLD 之间的高速数据交换。

高速数据采集:

在需要高速数据采集的应用中,PMP 可以用于连接 ADC 或其他数据采集设备。
yiy 发表于 2025-3-21 16:30 | 显示全部楼层
PMP 的寄存器配置:
PMP 的功能通过一组寄存器进行配置,主要包括:

PMPMODE:配置 PMP 的工作模式(主模式/从模式)、数据宽度(8 位/16 位)等。

PMPA:地址寄存器,用于设置访问外部设备的地址。

PMPD:数据寄存器,用于读写数据。

PMPCON:控制寄存器,用于配置 PMP 的使能、中断等。
yiy 发表于 2025-3-21 16:31 | 显示全部楼层
配置方法一般如下
  1. #include <p24Fxxxx.h>

  2. void PMP_Init(void) {
  3.     // 配置 PMP 为主模式,16 位数据宽度
  4.     PMMODE = 0;          // 先清零
  5.     PMMODEbits.MODE = 0; // 主模式
  6.     PMMODEbits.WAITB = 1; // 地址建立时间
  7.     PMMODEbits.WAITM = 1; // 数据保持时间
  8.     PMMODEbits.WAITE = 1; // 使能时间
  9.     PMMODEbits.MODE16 = 1; // 16 位数据宽度

  10.     // 配置控制信号
  11.     PMCON = 0;          // 先清零
  12.     PMCONbits.PTWREN = 1; // 使能写信号
  13.     PMCONbits.PTRDEN = 1; // 使能读信号
  14.     PMCONbits.PMPEN = 1;  // 使能 PMP 模块
  15. }

  16. void PMP_Write(uint16_t address, uint16_t data) {
  17.     PMADDR = address; // 设置地址
  18.     PMDIN = data;    // 写入数据
  19. }

  20. uint16_t PMP_Read(uint16_t address) {
  21.     PMADDR = address; // 设置地址
  22.     return PMDIN;     // 读取数据
  23. }
复制代码
逢dududu必shu 发表于 2025-3-25 13:00 | 显示全部楼层
增强型的外设,专门用于支持高带宽的并行数据传输。
天灵灵地灵灵 发表于 2025-3-25 19:26 | 显示全部楼层
这个接口方便驱动8080屏幕吗
yutingwei 发表于 2025-4-25 15:41 | 显示全部楼层
相比 SPI 或 I2C,PMP 提供更高的数据传输速率,尤其适用于需要频繁、高速读写的设备
hight1light 发表于 2025-5-7 17:17 | 显示全部楼层
微芯提到的PMP不是一种外设,而是其PIC32系列单片机中的“并行主端口”(Parallel Master Port)的简称,属于芯片内部的外设接口。
wamed 发表于 2025-5-7 18:22 | 显示全部楼层
在微芯科技的PIC32系列单片机(MCU)中,PMP指的是“并行主端口”,是一种用于连接外部存储器或图形显示设备的硬件接口
teaccch 发表于 2025-5-7 19:31 | 显示全部楼层
在PIC32 MX1和MX2系列MCU中,PMP被设计为8位并行接口,用于实现与外部存储器或显示设备的直接数据传输。
一切D都好 发表于 2025-5-7 20:43 | 显示全部楼层
功能定位,PMP属于MCU的内置外设,用于扩展芯片的并行数据传输能力,而非独立的外部设备。
tiakon 发表于 2025-5-7 21:33 | 显示全部楼层
典型应用包括连接外部SRAM、NOR Flash存储器或LCD显示屏,以支持图形显示或数据存储需求
canfeil 发表于 2025-5-7 23:16 | 显示全部楼层
PMP通过硬件逻辑实现并行数据总线控制,支持多种时序模式和地址/数据复用机制。
星星点点didi 发表于 2025-5-8 09:11 | 显示全部楼层
外设通常指独立于主处理器的硬件设备(如传感器、通信模块等),而PMP是MCU内部的硬件模块,属于芯片设计的一部分。
hhdhy 发表于 2025-5-8 11:08 | 显示全部楼层
一般PMP的作用是增强芯片的并行数据交互能力,而非作为独立的外接设备。
ewyu 发表于 2025-5-8 12:24 | 显示全部楼层
估计不算是外设,而是类似于DMA这种东西吧
幻想收藏家 发表于 2025-5-8 12:26 | 显示全部楼层
PMP(Enhanced Parallel Master Port)确实是微芯科技(Microchip)提供的一种外设接口。它是一种增强型并行主端口,用于连接微控制器和外部设备,如存储器、显示器等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

328

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部