C8051F020引入了交叉开关的概念,即单片机的管脚必须在交叉开关使能的情况下才干被装备。因而初始化时,首要要使能交叉开关,官方有个装备东西Config2,很便利,引荐我们运用。管脚内部自带弱上拉(管脚与VDD之间阻性衔接,约100KΩ),因而在弱上拉未被禁用的情况下,管脚能够输出0和1。在弱上拉被禁用后,管脚输出能够被装备为推挽和漏极开路,推挽和弱上拉相同,都可输出0和1,但驱动才干大,推挽方法为低阻,这样,才干确保口线上不分走电压或分走极小的电压(可疏忽),确保输出与电源相同的高电平,推挽适用于输出而不适用于输入,由于若对推挽(低阻)加高电平后,I=U/R,I会很大,将形成口的焚毁。对与C8051F的许多类型片子,将I/O口设置为推挽方法的做法为:
经过设置输出方法为漏极开路并向端口数据寄存器中的相应位写1将端口引脚装备为数字输入,端口1的引脚能够用作ADC1模仿多路开关的模仿输入。经过向 P1MDIN 寄存器中的对应位写0即可将端口引脚装备为模仿输入,缺省情况下端口引脚为数字输入方法。
端口0-3既能够按位寻址也能够字节寻址,端口4-7的一切端口引脚只能是按字节寻址的。