ho_bo 发表于 2009-8-31 09:16:22

请问马老师PC口第二功能

马老师
    您好!
    正学习Mega64这款单片机,有些不太清楚,就是MCUCR中的SRE=1时,使能外部SRAM,这时PC口工作于第二功能(地址总线的高8位),我在设计电路时使用了PC端口其中的两个引脚 (假定PC.6和PC.7)作为片外地址,那么剩余的PC口可以用作普通的IO口,作为输出口去控制,这样不知行不?有疑惑,请马老师解答,非常感谢!

ho_bo 发表于 2009-8-31 11:42:14

我用PC口的PC7用作地址线时,连接到其他芯片上,比如,74ls244的OE片选引脚,其实只使用了PC7这个引脚,而其余的PC0~PC6不作地址选择线,想用作普通的IO口。我不清楚AVR与51单片机的具体不同之处,因为51单片机是可以这样用的;不过51单片机使用P2口作地址线不用设置,而AVR还得设置SRE这个状态控制字,即SRE=1,PC口作为了第二功能,即地址线了,这样一来,其他剩余的PC0~PC6还可用普通的IO口,不知行不?还能通过软件设置ddrc与portc,使得PC0~PC6作为输出控制吗,因为SRE=1让PC作第二功能了。就是这点不明白,我初学、不太明白。

machao 发表于 2009-8-31 19:01:57

51的P2.7作为并口地址线后,P2.0-P2.6还能作为普通I/O使用吗?你在哪里看到的?能这样用吗?

当AVR的PC口作为并口地址线时(只有带并口功能的芯片),是可以把其中的某些位作为普通I/O使用的,这是AVR比51强的一个地方。但作为普通I/O的位应该从最高位开始。比如你系统中只需要一根并口地址线,那么它应该是PC.0,其它可作为普通I/O使用的。用2根地址线应该使用PC.0:PC.1......

如果你使用了51的并口功能,哪怕一根高位地址线不用,P2口也不能当作普通I/O口使用的(指标准51架构,兼容的或许可以,要看手册),而AVR则可以把PC口全部做位I/O使用。

这些在AVR手册中都有,应该仔细看手册,不要照搬什么的,就是搬也是明白了再搬。另外如果你采用I/O口模拟方式实现并口的功能,那么AVR、51都一样,任何高位的端口都可以做I/O,因为本身就是I/O。你要概念清楚。

ho_bo 发表于 2009-9-1 09:22:43

非常感谢马老师的教导,我收下了,认真看看手册。
页: [1]
查看完整版本: 请问马老师PC口第二功能