pic32 模拟端口和数字端口复用设置

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

原文地址:https://www.cnblogs.com/yixiaoyang/p/1982582.html