You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PIC18F26K83 SPI驱动双DAC的PPS引脚映射配置疑问

针对PIC18F26K83 SPI与DAC通信的PPS映射及引脚配置解答

我来帮你梳理当前的配置疑问,分两部分逐一说明:

一、PPS映射配置的正确性验证

结合你提到的PIC18F26K83手册内容来看,你的配置大部分是正确的,仅需确认一个细节:

  • RC7PPS= 0b00011111:你标注为SDIPPS——这里要重点确认手册表17-2中SDIPPS的定义。因为RC7连接的是DAC的DIN(DAC的接收端),所以MCU侧需要把SPI的数据输出(SDO)映射到这个引脚。如果手册明确标注SDIPPS是SPI的数据输出源,那这个配置没问题;如果SDIPPS是数据输入源,你需要换成对应SPI输出(SDO)的PPS编号(比如部分型号中是SSP1SDOPPS,以手册为准)。
  • RC6PPS= 0b00100000:对应SSPPS——这个完全正确,SSPPS是SPI的从机选择(SS)输出源,正好匹配你用来控制DAC片选的RC6引脚。
  • RC5PPS= 0b00011110:对应SCKPPS——这个也正确,SCKPPS是SPI的时钟输出源,完美对应DAC的SCLK引脚。

二、引脚方向的配置

你完全不需要把这些引脚配置为输入!因为RC7、RC6、RC5都是MCU向DAC发送信号的输出引脚:

  • DAC的DIN是接收MCU的SPI数据,所以MCU的RC7必须设为输出(TRISC7 = 0);
  • DAC的CS是由MCU主动控制的片选信号,MCU的RC6必须设为输出(TRISC6 = 0);
  • DAC的SCLK是由MCU提供的同步时钟,MCU的RC5必须设为输出(TRISC5 = 0)。

额外补充两个注意点:

  • 务必将SPI模块配置为主模式(因为MCU是SPI主机,DAC是从机),通过SSP1CON1寄存器设置主模式参数,并置位SSPEN启用SPI模块;
  • 由于你不需要接收DAC的数据,完全可以忽略SPI输入引脚的配置(无需映射或修改方向)。

内容的提问来源于stack exchange,提问作者Günkut Ağabeyoğlu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 05:07:17