Proteus仿真Arduino UNO利用74LS148扩展中断

Posted perseverance52

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Proteus仿真Arduino UNO利用74LS148扩展中断相关的知识,希望对你有一定的参考价值。

【Proteus仿真】Arduino UNO利用74LS148扩展中断


  • Proteus仿真演示

Arduino UNO硬件上只有2个外部中断引脚12,利用74LS148可以扩展8个外部中断,不过需要额外消耗3个数据引脚,通过中断来实现的功能比传统的端口扫描方式要节省很多CPU开支。如果将2个外部中断都进行扩展,可以扩展出16个外部中断口,而且不需要依赖其他第三方库函数来实现。

AVR操作指令相关知识

  • AVR 单片机的IO口是标准的双向端口,首先要设置IO口的状态,即:输入还是输出。

DDRx寄存器就是AVR单片机的端口方向寄存器,通过设置DDRx可以设置x端口的状态。
DDRx端口方向寄存器相应位设置为1则对应的x端口相应位为输出状态,DDRx端口方向寄存器相应位设置为0则对应的x端口相应位为输入状态。

  • 例如:

DDRA = 0xFF; //设置端口A所有口为输出状态,因为0xFF对应的二进制为11111111b
DDRA = 0x0F //设置端口A高4位为输入状态࿰

以上是关于Proteus仿真Arduino UNO利用74LS148扩展中断的主要内容,如果未能解决你的问题,请参考以下文章

Arduino UNO + Proteus串口通讯仿真实验汇总

Proteus仿真Arduino UNO花样流水灯

Proteus仿真Arduino UNO步进电机驱动示例

Proteus仿真Arduino UNO LED模拟交通灯

用Proteus仿真Arduino UNO ADC模数转换

Arduino UNO+DS1302+ MAX7219驱动8位共阴数码管显示时间+Proteus仿真改进版