完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
在PWM输出讲解中设计了两个实验,分别是无源蜂鸣器和直流有刷电机的控制,相关电路开发板上都有。无源蜂鸣器通过一个三极管驱动,直流有刷电机通过L9110S这款驱动芯片进行驱动,电路图如下。
ATtiny24/44/84有一个带有两个PWM通道的8位定时器/计数器和一个带有两个PWM通道的16位定时器/计数器,分别在ATtiny的第5脚(PB2)、第6脚(PA7)、第7脚(PA6)、第8脚(PA5)上,其在Arduino IDE中的序号如下图所示。 用Arduino IDE进行编程时PWM输出函数为analogWrite(pin, value),其中pin表示要写入的ATtiny引脚,value表示占空比,介于 0(始终关闭)和 255(始终打开)之间。 用analogWrite这个函数操作第5脚和第6脚以及第7脚和第8脚时,PWM的周期分别为4ms和2ms,我们可以通过一个小程序来验证一下。 该程序将这四个引脚均输出占空比为50%的PWM波,烧录成功后用示波器测量第5(6)脚和第7(8)脚,波形如下。 无源蜂鸣器的控制较为简单,将三极管的基极接到PWM输出引脚上,在频率固定时PWM占空比的大小反映蜂鸣器的响度大小。 L9110S内置了一个H桥驱动电路,其中IA、IB连接单片机,OA、OB连接电机其控制逻辑如下表所示。
以下为控制电机以一定的速度分别正转、反转、停止的演示视频,完整程序和开发板电路可在本系列第一篇博客中电路城链接中下载。 |
||
|
||
只有小组成员才能发言,加入小组>>
3314 浏览 9 评论
2995 浏览 16 评论
3494 浏览 1 评论
9059 浏览 16 评论
4088 浏览 18 评论
1178浏览 3评论
605浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
599浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2335浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1896浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 09:19 , Processed in 1.156600 second(s), Total 49, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号