EDN China > 其它文章 > 电源技术 > 正文
?

使用一个微控制器管脚的三态开关界面

Kartik Joshi?? 印度新德里 Netaji Subhas 技术学院?? 2008年04月30日 ?? 收藏0

  电子小玩意儿的人机界面需要三种用于控制的状态。单轴摇杆的状态可定义向右、向左的运动,以及无动作。同样,有控制键的定时器可以使之增加、减小或保持不变。工程师一般使用两种独立按键建立这些界面,这需要两个微控制器管脚。本设计实例给出一种方法,可检测一个有中心关断态 SPDT(单刀双掷)开关的三种状态,而只用到 Atmel Atmega8 微控制器的一只管脚(参考文献 1 和图 1)。表 1 是电路的一个简单程序(见www.ednchina.com)。

图1使用AtmelAtmega8微控制器的一只管脚实现三态开关状态

表2各种端口与DDR寄存器值的管脚状态


  微控制器管脚状态取决于 DDR 位、端口位及其外部连接的值。微控制器管脚用下拉电阻 R1 连接到地,R1 的典型值为数百千欧,使管脚为高阻态。将 DDR 放大器设为零。当用户将开关切换到位置 1 时,管脚通过电阻 R5 连接到 VDD,管脚位为 1,与端口位的值无关。当用户将开关切换到位置 3 时,管脚接地,管脚位为 0,与端口位的值无关。在中心关闭状态,管脚位跟随端口位。表2列出了不同端口值和外部输入值时的管脚状态。

参考文献
1. “ATmega8/ATmega8L 8-bit AVR with 8K Bytes In-System Programmable Flash,” Atmel Corp, 2007.


?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

微控制器管脚?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈