0

我在芯片组 max32 上有一个 PIC32MX795F512L。

当我连接的按钮被按下时,我需要使用程序集来读取。

在查看文档(http://ww1.microchip.com/downloads/en/DeviceDoc/61120D.pdf)时,它说使用了 TRISx、PORTx、LATx 寄存器。但是我如何找到正确的?如果板上的引脚显示它连接到 pic 32 的引脚 74,它只是 TRIS74、PORT74、LAT74 吗?

在该板的参考资料中(http://www.digilentinc.com/Data/Products/CHIPKIT-MAX32/chipKIT_Max32_RM.pdf第 11 页)它说该引脚的 PIC32 信号是 SOSCO/T1CK/CN0/RC14,但是我不知道那是什么意思。

我很困惑。任何帮助将不胜感激。我花了几个小时试图弄清楚这一点无济于事。谢谢

4

1 回答 1

1

所有这些都在各种应用程序/规格表中进行了解释。我知道这些一开始可能会让人不知所措,我将在这里总结一下:

TRISx 是您将引脚设置为输入或输出时的三态控制寄存器。LATx 是输出锁存寄存器,您可以设置输出值(如果在 TRISx 寄存器中设置为输出)。PORTx 是端口读取寄存器,您可以读取端口值(如果在 TRISx 寄存器中设置为输入)。

根据您要使用的引脚,可能还有一些其他寄存器可能会限制您读取所述引脚的能力,例如将引脚设置为模拟模式(禁用数字输入)的 ANSELx 寄存器。

有关哪个引脚归属于哪个 ***.x 的信息,请查看您的处理器的主要规格表。从您提供的链接中,您使用的电路板似乎是 TQFP,因此,规格表 ( http://ww1.microchip.com/downloads/en/DeviceDoc/61156H.pdf ) 的第 15 页应该包含您的信息正在找。使用上面的 74 引脚示例,它被标记为“SOSCO/T1CK/CN0/RC14”。重要的部分是 RC14,它表示 PORT C,第 14 位。

要从中读取,您可以执行 PORTCbits.PORTC14 或“if(PORTC & 0x4000)...”。其他寄存器的工作方式相同(“TRISCbits.TRISC14 = 0; LATCbits.LATC14 = 1;”)。

于 2015-10-29T17:58:40.540 回答