使用引脚复用减少8位单片机的引脚使用

发布时间:2023-09-19  

本文将介绍两个利用通用输入/输出(GPIO)引脚复用来减少项目引脚使用的示例。第一个示例使用了“查理复用算法”技术,第二个示例使用了定时外设和中断来快速切换引脚输入状态和输出状态,以在驱动 LED 的同时读取按键。

本文引用地址:

本文将介绍两个利用通用输入/输出(GPIO)引脚复用来减少项目引脚使用的示例。第一个示例使用了“查理复用算法”技术,第二个示例使用了定时外设和中断来快速切换引脚输入状态和输出状态,以在驱动 LED 的同时读取按键。
PIC®和 AVR®单片机上的引脚复用
通用输入/输出(GPIO)引脚是单片机设计时的重要考量之一。您需要足够的引脚将单片机连接到设计中的所有其他组件;但是,超过所需的引脚可能会导致设计成本增加,并且占用电路板上更多空间。此外,减少设计中的所需引脚数量可能就可以选择另一种不同的封装。如果有一种方法可以从较小的封装中挤出更多的 I/O引脚就好了!幸运的是,我们确实有方法可以在这种情况下释放引脚。
下面是 应用团队使用 AVR DD 系列单片机创建的两个示例。首先,我们将探讨通过一种称为“查理复用算法”的技术复用 GPIO 引脚来控制 LED。接下来,我们将看一下如何使用单个引脚同时运行独立的按键和 LED。
查理复用算法的核心思想是利用单片机引脚可以处于的三种状态:数字高电平、数字低电平和高阻抗数字输入状态(也称为高阻态或三态)。通过使用这三种状态而不仅仅是典型的高电平和低电平,用户可以使用 n 个引脚驱动最多(n2-n)个独立的LED。在此示例中,三个指定的引脚可以驱动六个独立的 LED。
那么查理复用算法的工作原理到底是什么呢?为了理解这一点,我们需要看一个示例。

使用引脚复用减少8位单片机的引脚使用

这里我们用三个 I/O 引脚驱动六个 LED。
如果我们只想导通 LED1,则需要将 PA2 设为高电平,PA3 设为低电平,PA4设为高阻态。电流将流过 LED1 并使其导通,同时使所有其他 LED 保持关断状态。

使用引脚复用减少8位单片机的引脚使用

这里的三态十分重要,因为如果 PA4 为“低电平”,它也会意外导通 LED5。如下面所示:

使用引脚复用减少8位单片机的引脚使用

高阻抗逻辑状态确保电流只流过 LED1。利用 I/O 引脚状态的相应组合(要获得预期行为,用户必须将一个引脚设为高电平、一个引脚设为低电平,其余引脚设为高阻抗),可以为电路中的任何 LED 重复此过程。
虽然在任意给定时刻这种方法只会点亮一个 LED,但是快速改变 I/O 状态可创造出点亮多个 LED 的错觉。(LED 调光的工作原理是通过在单个 LED 上使用脉冲宽度调制,原理与此非常相似)。可以在下面看到:(点击图片查看动态效果)

使用引脚复用减少8位单片机的引脚使用

第二个示例涉及到在单个引脚上改动一个 LED 和一个按键。
从有利的角度看,可利用中断和定时器来实现此目的。单片机引脚大部分时间都在驱动 LED。然而,一个定时外设会定期在单片机内部触发中断,将引脚从输出快速切换为输入,然后检查按键的状态。虽然这会暂时停止驱动 LED,但如果这个过程可以做得足够快,那么在检查按钮状态的时候,对 LED 造成的影响几乎不可见。
我们在下面的示例中使用了这种方法。单片机不停地驱动一个闪烁的 LED,同时定期检查按键,如果按键被按下,就会点亮一个单独的 LED。(点击图片查看动态效果)

使用引脚复用减少8位单片机的引脚使用

尽管本文章只涵盖了这两种技术的基础知识,但我们的 应用团队发布的相应 GitHub 页面包含了图表、示例代码和更详细的说明。请访问该页面或我们的 AVR DD 产品系列页面来了解更多信息。

(作者:Nate Thompson 和 Alexandru Sabiuta)

文章来源于:电子产品世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>