51的这些端口为什么要跳过去?

[复制链接]
2520|5
 楼主| youwenchao 发表于 2009-7-14 14:25 | 显示全部楼层 |阅读模式
一个很简单的键盘扫描程序中的一段端口初始化子程序:<br />void&nbsp;port_init&nbsp;(void)<br />{<br />&nbsp;&nbsp;&nbsp;P0SKIP&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0xFF;<br />&nbsp;&nbsp;&nbsp;P1SKIP&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0xFF;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//跳过前面I/O端口<br />&nbsp;&nbsp;&nbsp;XBR1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x44;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;使能交叉开关,CEX0,连到P2.2<br />&nbsp;&nbsp;&nbsp;P2MDOUT&nbsp;&nbsp;|=&nbsp;0x50;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;使能P2.6,P2.4为推挽输出<br />}<br />P0口和P1为什么要跳过去?按键是连到P2^0,P2^1,P2^2,P2^3。不跳过P0和P1口,按这些键时还真没反应。<br />到底是为什么?
mohanwei 发表于 2009-7-14 14:30 | 显示全部楼层

你这个是什么51芯片?看样子象C8051,具体芯片要看手册……

  
 楼主| youwenchao 发表于 2009-7-14 14:38 | 显示全部楼层

是C8051F340

看不出来,请大侠帮忙解释
xuyaqi 发表于 2009-7-14 15:35 | 显示全部楼层

这是硬件设计要求的,要按设计要求来做。

  
 楼主| youwenchao 发表于 2009-7-14 16:45 | 显示全部楼层

P0口和P1口在这个小程序中根本就没用过~

P3口也没用,为什么就不跳过去呢
yyyyxxxxdd 发表于 2009-7-16 15:39 | 显示全部楼层

仔细看技术手册

仔细看技术手册,不跳过的话,PCA端口会接到P0的第一个上去,<br />可以去网站下一个&nbsp;端口配置工具,一看就明白了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

68

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部