STM8 蜂鸣器

来自丢石头百科
Admin讨论 | 贡献2019年11月18日 (一) 16:32的版本 (简介当LS时钟工作在128kHz时可产生频率为1kHz,2 kHz或者是4 kHz的蜂鸣信号。(图23:STM8蜂鸣器功能图)蜂鸣器操作为了使用蜂鸣功能,按顺序执行如下的步骤:1.根据13.2.2中描述的方法确定BEEPDIV的值来校准LS时钟的频 ...)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
<tbody></tbody>

简介 当LS时钟工作在128kHz时可产生频率为1kHz,2 kHz或者是4 kHz的蜂鸣信号。

STM8 P96 1.jpg (图23:STM8蜂鸣器功能图) 蜂鸣器操作 为了使用蜂鸣功能,按顺序执行如下的步骤: 1.根据13.2.2中描述的方法确定BEEPDIV[4:0]的值来校准LS时钟的频率; 2.通过写BEEP_CSR的BEEPSEL[1:0]位来选择1 kHz,2 kHz或4 kHz的输出频率; 3.置位BEEP_CSR的BEEPEN位来使能LS的时钟源; 注意:预分频计算器仅仅在当BEEPDIV[4:0]的值不同于复位值0x1F时才开始运行。 蜂鸣器校准 该步骤可以用来校准LS 128 kHz的时钟以便达到标准的1 kHz,2 kHz或4 kHz频率输出采用如下的步骤: 1.测量LSI的时钟频率(请参考12.2.3)

2.采用如下方法计算BEEPDIV的值,这里A和x是fLS/8(kHz)的整数和小数部分值:

当x小于或者等于A/(1+2*A)时,BEEPDIV=A-2; 否则BEEPDIV=A-1

3.将BEEPDIV值写入到BEEP_CSR的BEEPDIV[4:0]位。


蜂鸣器控制/状态寄存器(BEEP_CSR) 地址偏移值:0x00 复位值:0x1F STM8 P97 1.jpg

<tbody></tbody>
位7:6BEEPSEL[1:0]:蜂鸣频率选择

00:输出fLS/(8 x BEEPDIV)kHz 01:输出fLS/(4 x BEEPDIV)kHz

1x:输出fLS/(2 x BEEPDIV)kHz
位5BEEPEN蜂鸣器允许

此位由软件设置和清零,使能蜂鸣器功能 0:禁止蜂鸣器功能

1:使能蜂鸣器功能
位4BEEPDIV[4:0]蜂鸣器预分频器

此位由软件置位和清零。设置蜂鸣器分频因数BEEPDIV. 00h:BEEPDIV=2 01h:BEEPDIV=3 ... 0Eh:BEEPDIV=16 0Fh:BEEPDIV=17 .... 1Eh:BEEPDIV=32 注意:此寄存器不能设置成其初始复位值(0x1F)

BEEP寄存器表和复位值 STM8 P97 2.jpg

(表25:STM8蜂鸣器寄存器表)