先把P1.1在chip层时改成上拉输出, bulild一下看看psoccofigtbl.asm文件中PRT1DM0,PRT1DM1, PRT1DM2,并记下数值。
先把P1.1在chip层时改成输入,
再bulild一下看看psoccofigtbl.asm文件中PRT1DM0,PRT1DM1, PRT1DM2,并记下数值。
比较两种状态下的PRT1DM0,PRT1DM1, PRT1DM2数值区别,在程序中直接更改其就完成输出输入切换。
请看如下实例,你会发现从P1.1输出到输入的切换只变化了PRT1DM0
在C程序里PRT1DM0=0X00; 即是输入 PRT1DM0=0X02;即是输出 余下两个寄存器数值不变 看如下图示
仅供参考,避免误伤其他I/O操作,详见版内有关GPIO的帖子,预防影子寄存器一事。
|