微波EDA网,见证研发工程师的成长! 2025婵犵數濮烽弫鍛婃叏閹绢喗鍎夊鑸靛姇缁狙囧箹鐎涙ɑ灏ù婊呭亾娣囧﹪濡堕崟顓炲闂佸憡鐟ョ换姗€寮婚敐澶婄闁挎繂妫Λ鍕磼閻愵剙鍔ゆ繛纭风節瀵鎮㈤崨濠勭Ф闂佸憡鎸嗛崨顔筋啅缂傚倸鍊烽懗鑸靛垔椤撱垹鍨傞柛顐f礀閽冪喖鏌曟繛鐐珕闁稿妫濋弻娑氫沪閸撗€妲堝銈呴獜閹凤拷04闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾剧懓顪冪€n亝鎹i柣顓炴閵嗘帒顫濋敐鍛婵°倗濮烽崑鐐烘偋閻樻眹鈧線寮撮姀鈩冩珕闂佽姤锚椤︻喚绱旈弴銏♀拻濞达綀娅g敮娑㈡煕閺冣偓濞茬喖鐛弽顓ф晝闁靛牆娲g粭澶婎渻閵堝棛澧遍柛瀣仱閹繝濡烽埡鍌滃幗闂佸搫娲ㄩ崑娑㈠焵椤掆偓濠€閬嶅焵椤掍胶鍟查柟鍑ゆ嫹15闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾剧懓顪冪€n亝鎹i柣顓炴閵嗘帒顫濋敐鍛婵°倗濮烽崑鐐烘偋閻樻眹鈧線寮撮姀鈩冩珖闂侀€炲苯澧扮紒顕嗙到铻栧ù锝堟椤旀洟姊洪悷鎵憼闁荤喆鍎甸幃姗€鍩¢崘顏嗭紲闂佺粯鐟㈤崑鎾绘煕閵娿儳鍩g€殿喖顭锋俊鎼佸煛閸屾矮绨介梻浣呵归張顒傜矙閹达富鏁傞柨鐕傛嫹 闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾剧懓顪冪€n亝鎹i柣顓炴閵嗘帒顫濋敐鍛婵°倗濮烽崑鐐烘偋閻樻眹鈧線寮撮姀鐘栄囨煕鐏炲墽鐓瑙勬礀閳规垿顢欑紒鎾剁窗闂佸憡顭嗛崘锝嗙€洪悗骞垮劚濞茬娀宕戦幘鑸靛枂闁告洦鍓涢敍娑㈡⒑閸涘⿴娈曞┑鐐诧躬閹即顢氶埀顒€鐣烽崼鏇ㄦ晢濠㈣泛顑嗗▍灞解攽閻樺灚鏆╁┑顔芥尦楠炲﹥寰勯幇顒傦紱闂佽宕橀褔鏌ㄩ妶鍡曠箚闁靛牆瀚崗宀勬煕濞嗗繑顥㈡慨濠呮缁辨帒螣閼姐値妲梻浣呵归敃銈咃耿闁秴鐒垫い鎺嶈兌閸熸煡鏌熼崙銈嗗濠电姷鏁告慨鐑藉极閸涘﹥鍙忛柣鎴f閺嬩線鏌熼梻瀵割槮缁惧墽绮换娑㈠箣濞嗗繒浠鹃梺绋款儍閸婃繈寮婚弴鐔虹鐟滃秹宕锔藉€跺┑鐘叉处閳锋垿鏌熺粙鎸庢崳缂佺姵鎸婚妵鍕晜鐠囪尙浠紓渚囧枛椤兘銆佸☉銏″€烽悗鐢登瑰鎶芥⒒娴h櫣甯涙繛鍙夌墵瀹曟劙宕烽娑樹壕婵ḿ鍋撶€氾拷
首页 > 硬件设计 > MCU和DSP > 轻触式开关电路在AVR单片机中的应用

轻触式开关电路在AVR单片机中的应用

时间:06-17 来源:互联网 点击:
单键开关电路已经广泛应用于PDA、手机和电子词典等数码产品中,其实现方式多种多样。一般可采用RS触发器、计数器以及采用555集成电路等等。在单片机的一些实际应用中,以上的实现方式会增加整个电路的复杂度,不能达到简洁、实用的效果。本文将介绍一种可以在单片机应用中实现的,简易、稳定的轻触式单键开关电路。

1 电路原理

如图1所示,DC -DC为一个带有关断控制端的直流稳压电源芯片,MCU是一个单片机。当按下S1时,Q1和D1导通,稳压芯片工作,为单片机供电。单片机马上将相应的 I/O引脚置为输出高,这时Q1和Q2导通,整个电路进入工作状态。而后单片机再将这个I/O引脚设置为输入,由于上拉电阻R4的存在,Q1和Q2一直导通。单片机一直扫描相应I/O输入状态,如果S1没有按下去,则这个I/O将始终为高。当S1再次按下去时,D2导通,单片机检测到这个I/O引脚输入为低,这时单片机就将这个I/O设置成输出为低的状态。Q2截止,如果按键抬起,Q1也会截止,稳压芯片将不会为单片机提供电压,整个电路处于关断状态。

闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾剧懓顪冪€n亝鎹i柣顓炴閵嗘帒顫濋敐鍛婵°倗濮烽崑娑⑺囬悽绋垮瀭濡わ絽鍟粻娑樏归敐鍛础缂佸鑳剁槐鎾诲磼濮橆兘鍋撻悜鑺ュ€块柨鏇氱劍閹冲矂姊绘担鍛婂暈闁荤喆鍎抽幑銏狀潨閳ь剙顕f繝姘亜缁炬媽椴搁弲顒勬⒑閹稿海绠撴繛璇х到鏁堟俊銈呮噺閸嬧剝绻濇繝鍌涘櫣妞わ絽銈搁幃浠嬵敍濞戞ɑ璇為梺璇″枟閻燂妇鎹㈠┑瀣倞闁靛ě鍐ㄥ婵犵數濮烽弫鎼佸磹椤栫偛鐒垫い鎺戝绾惧鏌熼崜褏甯涢柣鎾寸洴閹鏁愭惔鈥茬敖婵犫拃鍐粵闁逛究鍔嶇换婵嬪川椤曞懍鍝楅梻浣告贡閹虫挾鈧氨澧楁穱濠囧箹娴h倽銊╂煥閺冣偓閸庡磭绱為幒妤佲拻闁稿本鐟ㄩ崗宀勬煙閾忣偅宕岀€规洜鏁诲浠嬵敇閻愭鍞甸梻浣芥硶閸o箓骞忛敓锟�...


2 关于R3和上拉电阻R4的取值

在一些单片机中,例如AVR系列单片机ATmega8L,带有内部上拉电阻Rpu,如图2所示。

闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾剧懓顪冪€n亝鎹i柣顓炴閵嗘帒顫濋敐鍛婵°倗濮烽崑娑⑺囬悽绋垮瀭濡わ絽鍟粻娑樏归敐鍛础缂佸鑳剁槐鎾诲磼濮橆兘鍋撻悜鑺ュ€块柨鏇氱劍閹冲矂姊绘担鍛婂暈闁荤喆鍎抽幑銏狀潨閳ь剙顕f繝姘亜缁炬媽椴搁弲顒勬⒑閹稿海绠撴繛璇х到鏁堟俊銈呮噺閸嬧剝绻濇繝鍌涘櫣妞わ絽銈搁幃浠嬵敍濞戞ɑ璇為梺璇″枟閻燂妇鎹㈠┑瀣倞闁靛ě鍐ㄥ婵犵數濮烽弫鎼佸磹椤栫偛鐒垫い鎺戝绾惧鏌熼崜褏甯涢柣鎾寸洴閹鏁愭惔鈥茬敖婵犫拃鍐粵闁逛究鍔嶇换婵嬪川椤曞懍鍝楅梻浣告贡閹虫挾鈧氨澧楁穱濠囧箹娴h倽銊╂煥閺冣偓閸庡磭绱為幒妤佲拻闁稿本鐟ㄩ崗宀勬煙閾忣偅宕岀€规洜鏁诲浠嬵敇閻愭鍞甸梻浣芥硶閸o箓骞忛敓锟�...


可以通过单片机程序控制电阻上拉与否,从而不需要外接上拉。

一般情况下,R3取值要远大于R4,否则单片机I/O的输入电压Vpin会有低于标准输入电压VIH最低值的可能。从ATmega8L数据手册中查到Rpu 取值在20kΩ~100kΩ之间,又因为VIH的最小值约为0.6VCC。因此R3/(R3+R4)>0.6,取R4=50kΩ,并取R3/(R3 +R4)=0.8 ,所以R3取值应该在200kΩ左右的范围,可以根据实际工作情况来选择具体的R4取值。

3 对Vin连接方式的处理

从图1上不难看出,采用这种控制方式后,Q1上将会消耗一定的功率。一种降低功率消耗的方式就是将Vin直接接到电池上去,可以根据电路灵活掌握。

4 电容C1的作用

对于一般的AVR单片机来说,内部都有BOD(Brown-down Detection)电路。这个电路具有低电压检测功能:当输入电压由高变低时,单片机就会自动复位。

如图1所示,想关机的时候,按下S1,单片机输出低。按键抬起后,Q1、Q2截止,单片机掉电。然而单片机的BOD电路检测到单片机的电压突然降低后,就会使单片机复位,并将I/O设置为上拉状态,Q1、Q2导通,导制电路再次开启。

加入C1后,使单片机掉电后要对C1进行充电,而在C1充电没有达到单片机工作最低电压期间,Q1、Q2已经截止了,从而打乱了单片机复位操作。

5 开关机延时处理

在一些具体的应用场合,例如手机等数码产品,开关机都需要延时操作。一种简单的实现方式就是,单片机在按键按下时开始计数,直到按键抬起。只有这个计数值足够大,才允许开机,否则不认为是开机操作。同理,关机也可以做类似的处理。

单片机程序流程如图3所示。

闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾剧懓顪冪€n亝鎹i柣顓炴閵嗘帒顫濋敐鍛婵°倗濮烽崑娑⑺囬悽绋垮瀭濡わ絽鍟粻娑樏归敐鍛础缂佸鑳剁槐鎾诲磼濮橆兘鍋撻悜鑺ュ€块柨鏇氱劍閹冲矂姊绘担鍛婂暈闁荤喆鍎抽幑銏狀潨閳ь剙顕f繝姘亜缁炬媽椴搁弲顒勬⒑閹稿海绠撴繛璇х到鏁堟俊銈呮噺閸嬧剝绻濇繝鍌涘櫣妞わ絽銈搁幃浠嬵敍濞戞ɑ璇為梺璇″枟閻燂妇鎹㈠┑瀣倞闁靛ě鍐ㄥ婵犵數濮烽弫鎼佸磹椤栫偛鐒垫い鎺戝绾惧鏌熼崜褏甯涢柣鎾寸洴閹鏁愭惔鈥茬敖婵犫拃鍐粵闁逛究鍔嶇换婵嬪川椤曞懍鍝楅梻浣告贡閹虫挾鈧氨澧楁穱濠囧箹娴h倽銊╂煥閺冣偓閸庡磭绱為幒妤佲拻闁稿本鐟ㄩ崗宀勬煙閾忣偅宕岀€规洜鏁诲浠嬵敇閻愭鍞甸梻浣芥硶閸o箓骞忛敓锟�...

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top