原创 单片机应用中的实用技巧(二)

2008-9-22 11:22 2203 7 7 分类: MCU/ 嵌入式
单片机应用中的实用技巧(二)
作者:Azhu  E-mail:circuit51@tom.com
4、利用单片机的时钟输出产生高电压。
大多数的单片机都会有个时钟输出脚,利用该脚可以产生一个高过VDD的输出电压值,在输出功率不大的场合,很实用。电路如下图所示。在未接负载情况下,最大输出电压可以达到2*VDD-2*Vd。注:Vd为二极管的导通压降。

点击看大图

5、用一个带A/D的I/O口实现16个键盘输入。
许多单片机带有A/D转换功能,在实际运用中,如果利用其中的一路A/D转换,可以很方便地实现4×4键盘输入。
其电路图如下图所示。

1144044302.jpg

如图所示,由于键盘的纵向电阻R1~R4的阻值为递增状态,其增幅超过横向最大阻值电阻R8,因此当按键从S1至S16按下时,纵向电阻与横向电阻串联的阻值也会相应由低到高增加,如S1按下时串联阻值为11k,S2按下时阻值为13.9k,S5按下时为25k,…,由于每个键按下后的串联阻值均不同,并且依按键的次序呈逐渐增大趋势,经与R9分压后,会在单片机的输入端产生不同的电压值,该电压经过A/D转换后进行相应处理,即可判断出是哪个键按下。
在实际应用中,由于阻值与电压为非线性关系,因此在电阻选用及编程时需要注意,同时A/D转换应进行相应的软件处理(如重复检测两次才确认),以消除按键抖动引起的误判断。
6、用软件产生PWM实现模拟量输出。
在单片机应用中,常需要通过输出模拟量来对外部进行控制,但增加D/A转换芯片不仅需要占用I/O口资源,同时也会使成本增加。下图提供一种通过单片机的定时器中断来用软件的方法产生PWM,并经过滤波与跟随电路产生准确的模拟量输出。
其电路如下图所示。

1144044330.jpg

该电路只用单片机的一个I/O脚实现D/A转换功能。其输出的模拟量电压Vout=VDD*D1/(D1+D2)。该输出电压带有纹波,当RC值足够大时,该纹波值几乎为零,可忽略不计。D1与D2可通过单片机内部的定时器中断来准确产生。该模拟量从输出PWM到稳定状态,需要一定的时间,若要缩短达到稳定的时间,可以减小R1和C1的值,但纹波会增大,这在设计时需要注意。

http://azhu.blog.dianyuan.com/blog_comment_list.php?blar_id=810
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /3 下一条