设8255A的A0接地址总线中的A1,A1与地址总线中的A2相连,若8255a控制字端口地址为66H,则A口地

君,已阅读到文档的结尾了呢~~
第8章 并行接口8255a(第二节)[整理版]
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
第8章 并行接口8255a(第二节)[整理版]
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口8255A初始化编程、端口地址的计算
  8255A的A,B,C三个端口的工作方式是在初始化编程时,通过向8255A的控制端口写入控制字来设定的。
  8255A由编程写入的控制字有两个:方式控制字和置位/复位控制字。方式控制字用于设置端口A, B,
C的工作方式和数据传送方向;置位/复位控制字用于设置C口的PC7~PC0中某一条口线PCi(i=0~7)的电平。两个控制字公用一个端口地址,由控制字的最高位作为区分这两个控制字的标志位。
 (1)方式控制字的格式
  8255A工作方式控制字的格式如图7.11所示。
         
         图7。11 8255A工作方式控制字的格式
 D0:设置PC3~PC0的数据传送方向。D0=1为输入;D0=0为输出。
 D1:设置B口的数据传送方向。D1=1为输入;D1=0为输出.
 D2:设置B口的工作方式。D2=1为方式1;D2=0为方式0。
 D3:设置PC7~PC4的数据传送方向。D3=1为输入;D3=0为输出。
 D4:设置A口的数据传送方向。D4=1为输入;D4=0为输出。
 D6D5:设置A口的工作方式。D6D5=00为方式0,D6D5=01为方式1,D6D5=10或11为方式2。
 D7:方式控制字的标志位,恒为1。
  例如,将8255A的A口设定为工作方式0输入,B口设定为工作方式1输出,C口没有定义,工作方式控制字为B。
(2)C口置位/复位控制字的格式
  8255A C口置位/复位控制字的格式如图7.12所示。
C口置位/复位控制字用于设置C口某一位口线PCi(i=0~7)输出为高电平(置位)或低电平(复位),对各端口的工作方式没有影响。
  D3~D1:8种状态组合000~111对应表示PC0~PC7。
  D0:用来设定指定口线PCi为高电平还是低电平。当D0=1时,指定口线PCi输出高电平;当D0=0时,指定口线PCi输出低电平。
         
         图7.12  8255A C口置位/复位控制字的格式
  D6~D4没有定义,状态可以任意,通常设置为0。D7位作为标志位,恒为0。例如,若把PC2口线输出状态设置为高电平,则置位/复位控制字为B。
 (3)8255A初始化编程
  8255A的初始化编程比较简单,只需要将工作方式控制字写入控制端口即可。另外,C口置位/复位控制字的写入只是对C口指定位输出状态起作用,对A口和B口的工作方式没有影响,因此只有需要在初始化时指定C口某一位的输出电平时,才写入C口置位/复位控制字。
  【例7.1】
设8255A的A口工作在方式0,数据输出,B口工作在方式1,数据输入,编写初始化程序(设8255A的端口地址为FF80H~FF83H)。
初始化程序如下:
   MOV  DX, 0FF83H    ; 控制寄存器端口地址为FF83H
   MOV  AL, B  ; A口方式0, 数据输出, B口方式1, 数据输入
   OUT  DX, AL    && ;
将控制字写入控制端
  【例7.2】
将8255A的C口中PC0设置为高电平输出,PC5设置为低电平输出,编写初始化程序(设8255A的端口地址为FF80H~FF83H)。
初始化程序如下:
  MOV  DX, 0FF83H         ; 控制端口的地址为FF83H
  MOV  AL, B        ; PC0设置为高电平输出
  OUT  DX, AL           ; 将控制字写入控制端口
  MOV  AL, B        ; PC5设置为低电平输出
  OUT  DX, AL           ; 将控制字写入控制端口
原创]关于8255的端口地址的计算
书上就丢下这样一句话:
8255的片选信号CS及口地址选择线A0、A1分别由8031的P0.7和P0.0、P0.1经地址锁存后提供。故8255的A、B、C口及控制口地址分别为FF7CH、FF7DH、FF7EH、FF7FH。
再上网找,看到很多人的提问都被那些"大虾" 丢下一句话,"看书去",汗...
经过两天的摸索,终于有点发现了,请看下面的资料:
图2是采用74HC2244芯片进行输入接口扩展的原理电路,图3是读P0口的时序。由图3可以看出,当P2.7和RD同为低电平时,74HC2244才能将输入端的数据送到单片机的P0口。其中,P2.7决定了74HC244的地址,0000H-7FFFH(共32K)地址都可以访问这个单元,这就是用线选法所带来的副作用。通常可选择其中的最高地址作为这个芯片的地址来写程序,如这个芯片的地址是7FFFH。但这仅仅是一种习惯,并不是规定,当然也完全可以用0000H作为这个芯片的地址。当确定了地址之后,其接口的输入操作程序如下:
由于MCS-51单片机的外部RAM和I/O口是统一编址的,因此,可以把单片机外部64K字节RAM空间的一部分作为扩展外围I/O口的地址空间。这样,单片机就可以像访问外部RAM存储器单元那样访问外部的P0口接口芯片
所以,8255的扩展端口地址不是唯一的,在0000H~FFFFH,除了cs,A0,A1这三个位固定外,其他可以任意,
如cs占用p2.7,A1占用P0.1,A0占用P0.0,那么可用的端口地址是:
A口:(cs=P2.7=0,A1A0=P0.1P0.0=00)0000H~7FFCH
B口:(cs=P2.7=0,A1A0=P0.1P0.0=01)0001H~7FFDH
C口:(cs=P2.7=0,A1A0=P0.1P0.0=10)0002H~7FFEH
控制口:(cs=P2.7=0,A1A0=P0.1P0.0=11)0003H~7FFFH,
通常可选择其中的最高地址作为这个芯片的地址来写程序
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
单片机原理与应用实验指导书
下载积分:100
内容提示:单片机原理与应用实验指导书
文档格式:PDF|
浏览次数:6|
上传日期: 13:48:15|
文档星级:
该用户还上传了这些文档
单片机原理与应用实验指导书
官方公共微信君,已阅读到文档的结尾了呢~~
微机原理与接口技术2 日  3章 存储器系统   一、判断题   1
静态随机存储器中的内容可以永久保存。×   2
总线周期是指CPU执行一条指令所需的时间。×   3
静态随机存储器中的内容可以永久保存。×   4
Cache是一种快速的静态RAM,它介于CPU与内存之间。√   5
寻址256M字节内存空间,需28条地址线。√   6
无论采用何种工艺,动态RAM都是利用电容存储电..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
微机原理与接口技术2
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
接口与通讯
下载积分:3000
内容提示:接口与通讯
文档格式:PDF|
浏览次数:0|
上传日期: 03:57:09|
文档星级:
该用户还上传了这些文档
接口与通讯
官方公共微信

我要回帖

更多关于 0595 8255 5554 的文章

 

随机推荐