PPS寄存器
板子已经画好了,现在需要用PIC16F18313,SOP8封装的7脚RA0既可以作为模拟电压输入端,也可以在需要的时候,作为UART 的TX发送脚。当然是分时复用的。请问代码这样写可以吗?作为TX脚时,
TRISA0=0;
ANSA0=0;
RA0PPSbits.RA0PPS = 0b10100;//RA0 源是TX/CK;
作为模拟口时,
TRISA0=1;
ANSA0=1;
RA0PPSbits.RA0PPS = 0b11011; //PPS切换到“保留” 切换到模拟口时,貌似第三句话RA0PPSbits.RA0PPS = 0b11011; 必须要写。不然不准确。
这种用法合理吗?
有没有什么隐患???
测试能用就可以
是的,模拟输入和数字输入冲突
但是模拟输入和数字输出不冲突
对,所以你要把数字输出关闭
PPS只是映射数字功能。模拟输入是固定的。
如果你一定要把TX功能分配到和ANA0复用的这个口上,你只要将TX映射到该端口,然后分时切换该端口模拟/数字功能即可。
对测试一下,问题不大。 模拟输入和数字输入冲突
页:
[1]