ARM_4412_蜂鸣器

本文档详细介绍了如何使用ARM Cortex-M4处理器的定时器配置蜂鸣器。通过设置GPD0CON寄存器进行复用功能,设定定时器分频器,然后设置TCNTB0和TCMPB0的计数值来控制蜂鸣器频率。最后,通过TCON寄存器启动定时器,实现蜂鸣器的自动重载功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >





#define GPD0CON   (volatile unsigned int *)0x114000a0
#define TCFG0  (volatile unsigned int *)0x139D0000
#define TCFG1  (volatile unsigned int *)0x139D0004


#define TCNTB0  (volatile unsigned int *)0x139D000c
#define TCMPB0  (volatile unsigned int *)0x139D0010
#define TCON  (volatile unsigned int *)0x139D0008




void buzzer_init(void)
{
*GPD0CON = *GPD0CON & ~(0xf) | 0x2; //复用功能 设置为TOUT0
//Timer Input Clock Frequency = PCLK/({prescaler value + 1})/{divider value}
*TCFG0 = 249; //一级分频
*TCFG1 = 3;   //二级分频


*TCNTB0 = 500;
*TCMPB0 = 250;


*TCON = 0xa;  //auto reload ; update TCNTB0 and TCMPB0 ; stop timer


*TCON = 0x9;  //auto reload  ; start timer




}
int main(void)
{


buzzer_init();


}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值