新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > S3C2440-蜂鸣器

S3C2440-蜂鸣器

作者: 时间:2016-12-02 来源:网络 收藏
ARM驱动蜂鸣器的方式有两种:一种是PWM输出口直接驱动,另一种是利用IO定时翻转电平产生驱动波形对蜂鸣器进行驱动。PWM输出口直接驱动是利用PWM输出口本身可以输出一定的方波来进行驱动。在ARM中可以用几个特殊功能寄存器对占空比和周期进行设置。通过设置这些寄存器产生符合蜂鸣器要求的方波后,这个时候利用这个方波就可以对蜂鸣器进行驱动了。使用PWM时,通过TCMPn可以决定脉宽,TCNTn决定频率,TCMPn/TCNTn决定占空比。使用IO口电平翻转时,需要使用定时器来做定时,通过定时翻转产生符合要求频率的波形。由于蜂鸣器一般的工作电流比较大,以至于IO口无法驱动,一般使用放大电路来驱动,一般使用三极管来放大电流就可以了。





使用PWM控制蜂鸣器:

rTCFG0用来设置预分频值,rTCFG1用来设置多路选择器MUX的分频值,TCNTB0也起到分频作用。使用PWM控制蜂鸣器注意设置GPB0为TOUT0。这里设置PWM频率为1HZ,占空比50%,也就是半秒响一次。S3C2440定时器中有双缓冲rTCNTBn,rTCMPBn,他们是可以通过编程访问的,他们会将数据自动装入rTCNTn,rTCMPn,这两个16位计数器对程序员来说是透明的。

一般启动定时器的步骤如下:
  • 将初始值写入到rTCNTn,rTCMPn
  • 设置对应定时器的手动更新位,自动装载
  • 启动定时器,并关闭手动更新位

上一页 1 2 下一页

关键词: S3C2440蜂鸣器PW

评论


技术专区

关闭