pic32的io端口复用比较多,gpio操作的难点在于设置好相关寄存器,把带有模拟信号的端口设置为数字TTL 0 1信号的端口。

这里面需要设置的东西比较多,现在附上一个范例,经验证通过测试。

//gpio模拟spi
void spi3_init()
{
//set pins
//TRISBSET &= (1<<2);
CM2CON = 0;//模拟比较器关闭
ODCB &= 0xFFF0;//RB0~3设置为正常双向口
AD1PCFG |= 0x000F;//AN0~3设置为数字
LATB |= 0x00F;//LATB低四位送1,其他不变

TRISBCLR
|= (1 << 0)|(1 << 1)|(0 << 2)|(1 << 3); //RB2 as input,others as output
SPI3_SELECT();
}

详细设置请参考pic family的datasheet

相关文章:

  • 2022-01-07
  • 2021-07-16
  • 2021-12-02
  • 2021-08-29
  • 2021-05-02
  • 2021-11-16
  • 2022-02-05
猜你喜欢
  • 2021-05-23
  • 2022-12-23
  • 2022-01-08
  • 2022-12-23
  • 2021-04-21
  • 2021-11-20
  • 2022-12-23
相关资源
相似解决方案