protues原理图:ADC0809和51单片机
问题是为什么连接几个与非门的51单片机的几个I/O口设在了几个不同组别的I/O口上,为什么不全设在P2口上。而且我也确实看到一些原理图ADC0809的输出口接在了P2上。...
问题是为什么连接几个与非门的51单片机的几个I/O口设在了几个不同组别的I/O口上,为什么不全设在P2口上。
而且我也确实看到一些原理图ADC0809的输出口接在了P2上。(http://wenku.baidu.com/view/2bed0b186bd97f192279e9ed.html 第一页就有说明)
这是怎么回事?谢谢 lycdl 展开
而且我也确实看到一些原理图ADC0809的输出口接在了P2上。(http://wenku.baidu.com/view/2bed0b186bd97f192279e9ed.html 第一页就有说明)
这是怎么回事?谢谢 lycdl 展开
2个回答
展开全部
这是51单片机最原始的应用电路,是采用外部三总线的结构,即P0口为数据总线,用于输入/输出数据的,用74LS373锁存低8位地址总线,用于选ADC0809内部的8个通道,P3.6为写信号WR,而P3.7为读信号RD,只有这两个脚才是控制读/写控制脚,即是控制总线,其余脚不是,不能用。至于那个P2.0是选片的,可以任意选取了。
更多追问追答
追问
我上次问一个人,ADC0809的输出口接在P0上用不用加上拉电阻,因为我知道P0有三个功能,结果他说:“将P0口作为ADC0809的输出口的连接口,传统51需要加上拉电阻(STC的不用)”。我觉得这是传统51需要加上上拉电阻,因此P0口就加上了上拉电阻,但你说的P0口味数据总线的时候是不加上拉电阻的。
追答
1、其实ADC0809的8个输出端接哪个口都是可以的,只要写程序时根据接法来读/写数据就行了。这没有固定的要求。
2、P0要不要接上拉电阻,也与具体的接法有关,你这个图的是将P0口作为数据总线来用的,就不用接上拉电阻了。这么接加上拉电阻也可以,不影响。但要不加上拉电阻,读数据时就必须将ADC0809作为外部数据存储器来读,这时的P0口就是数据总线。而用读P0的方式来读数据就不行了,就必须加上拉电阻,就是读数据指令是不同的。如果用汇编语言写程序就知道区别了。就是P0口作为并行口来用就必须加上拉电阻,用作数据总线时就不用。
3、STC单片机用P0口时确实不用加上拉电阻了,内部加了,与其余口是一样的,因为现在几乎没有人把P0口作为数据总线来用了,就是你的图的接法很少有人用,这是最原始的接法。
4、如果把你的图改成用P0口方式读数据时,传统51单片机就要加上拉电阻,STC单片机就不用。同时,可以省掉那个74LS373。但ADDA,ADDB,ADDC就要另接单片机的三个引脚上了。
所以说,各种接法,各用不同,各有利弊。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询