单片机扩展问题

qq_30137767 2019-08-07 07:13:20
好多扩展的芯片都是并口输入或者输出,锁存或者缓冲的都是8位或者16位的数据,有没有什么方法对扩展的gpio进行单个gpio操作,其他扩展的口子保持锁存,真正实现单片机gpio
...全文
271 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
SupermanTm 2019-08-18
  • 打赏
  • 举报
回复
首先,任何MCU的IO口都是以整个字节或字或双字的形式存在的,IO的结构上也本身就具有端口锁存功能,所谓的单独修改(控制)一个IO口状态在微观上等效于“在端口锁存寄存器上只修改其中一位”,这个还不容易吗,分成以下几种情况而已:
1. 本身具备READ-MODIFY-WRITE功能的,如MCS-51(包括兼容芯片), Microchip PIC(包括兼容芯片)可以直接对端口操作,或是通过ANL direct,#xxx/ORL direct,#xxx 这类指令直接修改。
2. 本身不具备这种功能的但这个IO口(整个8、16、32位)在全局中不改变其输入输出功能(输入的永远是输入、输出的永远是输出),那么可以软件上先读到累加器或别的寄存器,修改该bit后写回端口。
3. 本身不具备这种功能的而这个IO口又有个别端口是会改变输入输出功能的,那么可以自己做一个端口跟随变量,修改输出时先修改此变量再同步写出去。
  • 打赏
  • 举报
回复
引用 3 楼 dceacho的回复:
简单的扩展IO的可以看下74HC125,忘了是哪个后缀带所存的了,125C不带所存,125D带所存?记不清了
是74HC595带锁存的
xll_007 2019-08-14
  • 打赏
  • 举报
回复
通过软件实现单个IO的操作
dceacho 2019-08-07
  • 打赏
  • 举报
回复
简单的扩展IO的可以看下74HC125,忘了是哪个后缀带所存的了,125C不带所存,125D带所存?记不清了
dceacho 2019-08-07
  • 打赏
  • 举报
回复
你可以看下8155的资料,一个很典型的带锁存的扩展RAM和IO的片子
  • 打赏
  • 举报
回复
硬件结构不同,岂可相提并论,可见你对单片机内部结构这基础不了解,应该补课.

27,510

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧