导航:首页 > 操作系统 > 51单片机Io口扩展

51单片机Io口扩展

发布时间:2022-06-09 22:23:53

㈠ 51单片机怎么用10个IO口扩展成40个输入口

p0口一般只当输出口用(做输入口不合算)
p1~p3口当输入口用之前要先写1
一口线当输入口用时(按键),一般就不再当输出用,故没有“
仅“输入模式说法

㈡ 51单片机,外界8255a芯片作为扩展io口,其中pA为输出,PB为输出,PC为输入,求正确的接线方式和地址初始化

地址不需要初始化,地址是由硬件连接决定的。51单片机地址总线16位,P0口提供低8位,P2口提供高8位。可以用下面的连接方式。PA、PB、PC的地址低位是0x00、0x01、0x02,高位都是0x7f。

mode equ 03h

data1 equ 06h

data2 equ 5bh

portA equ 7ff9h

portB equ 7ffah

CAddr equ 7ff8h ;(这三个口的具体地址要根据你硬件设计的情况;这里是 单片机的P2.7接cs,P2.0接IO/M)

(2)51单片机Io口扩展扩展阅读:

同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51,PHILIPS,和WINBOND等,常说的已经停产的89C51指的是ATMEL公司的AT89C51单片机;

同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取代了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。

㈢ 51单片机 输入IO口扩展的小问题~

你用一个三个普通IO口就能解决吧,就是程序的算法可能稍微的难点,你不断的扫描这三个IO口,一旦有跳变(就是脉冲开始了)就开始计时,无论哪个脉冲来都开始计时,三个变量啊a,b,c在定义三个计数c1,c2,c3,比如你计算脉宽
while(p1^0=1)
a=1;
while(p1^1=1)
b=1;
while(p1^0=1)
c=1;
然后再定时中断里这样写
while(a)
c1++;
while(b)
c2++;
while(c)
c3++;
然后再主程序里扫描三个口的脉冲,这样写
while(p1^0=0)
a=0;
while(p1^1=0)
b=0;
while(p1^2=0)
c=0;
这样当某个口的脉冲结束后中断就不会在计时了
然后讲得到的脉宽保存,清空c1,c2,c3
知道最后一个脉冲结束时清空计时器,关闭计时,下一个过程重复以上

㈣ 51单片机IO口扩展,P0口在什么情况下要加锁存器,为什么接8255要加锁存,而接0809可以不锁存

P0口在给多个外设发送数据,并且有的没有锁存器的时候要用加锁存器。
0809本身就自带了锁存器的,所以就不用了。
8255没有,就需要加上。

㈤ 51单片机IO口可扩展多少接口

最多扩展数取决于他的寻址能力,他能区别的最大空间为64K,也就是65536个,也就说最大的访问空间,也就是读写访问所能区别开来的IO数量。

㈥ 51单片机io口扩展,用哪个芯片简单些

595好,STC单片机以前做的,扩展40多个继电器,很很稳定。大部分都是&和|操作,还是很方便的。双向的话就用PCF8574,但是价格较贵,还不如直接用stm32。

㈦ 51单片机STC89C52怎样扩展io

STC89C52 是插脚的吗?其实,STC89C52 比传统的51单片机多了3个I/O脚了,P4.4,P4.5,P4.6,共有35个I/O脚了。这还不够吗?
扩展I/O是可以的,但不如直接用片机的I/O方便,节省扩展的芯片。
换成LQFP44贴片封装的,就多出7个I/O脚,共39个I/O脚了。还不够吗?
扩展方法:并行扩展,用74HC573,但至少要用两片以上,才能真正增加I/O脚。
又节省I/O脚,芯片又少,又有效扩展I/O,采用串入/并出芯片74HC595。用3个I/O接74HC595,可以扩展出8个I/O,净增5个I/O,还要扩展,用两个74HC595串联,还用3个I/O脚,可扩展出16个I/O脚,净增13个,应该够用了吧。
总之,扩展I/O的方法多多。就是别用什么8255,8155,这么古老的芯片,和单片机一样大小,DIP40封装。

㈧ 51单片机怎么外接扩展I/O口

建议采用
74ls245,每个ic可扩展8个i/o口。
10片可扩展80个。
同时需要3个单片机io作为片选,10个io口作为方向选择。
剩余10个io直接采用单片机io。
另外,也可采用多引脚单片机,现在大部分单片机的大部分引脚都可作为独立io使用。如:atmega1280具有100个引脚,其中可独立编程的io口有86个。

阅读全文

与51单片机Io口扩展相关的资料

热点内容
华为密码锁app怎么设置 浏览:679
重庆双线服务器租用方案云空间 浏览:906
分卷解压文件消失 浏览:646
服务器什么部件好 浏览:848
仿生软件用什么编程 浏览:415
为什么好多人都喜欢用安卓手机 浏览:549
android反射机制 浏览:212
彩色羊命令 浏览:165
学编程不需要补课 浏览:201
app验证出现问题怎么回事 浏览:724
编译器异常什么意思 浏览:374
安卓12g和8g怎么选 浏览:307
程序员可以复习吗 浏览:735
洗衣机是单片机还是plc 浏览:970
如何用gcc编译在一个文件夹下 浏览:861
编程能力和C语言的区别 浏览:541
ktv文件夹找不到了 浏览:270
bind是什么文件夹 浏览:696
matlab编程风格指南 浏览:806
linux时间变量 浏览:84