当前位置:首页 > 技术心得 > 正文内容

OKI单片机——ML610Q4XX Melody Driver

xjtudll9年前 (2017-08-30)技术心得7370

clip_image002

配置流程:

(1) Select a buzzer mode by setting the BZMD bit of the melody 0 control register (MD0CON) to “1”.

(MD0CON寄存器的BZMD位置一)。

(2) Select a buzzer output mode using the melody 0 tempo code register (MD0TMP).

(设置旋律节奏编码寄存器MD0TMP)。

(3) Select a duty of the High level width of the buzzer output waveform using the melody 0 tone length code register(MD0LEN).

(设置Buzzer高电平宽度和波形长度寄存器MD0LEN)。

(4) Set the buzzer output frequency in the melody 0 scale code register (MD0TON).

(设置波形输出频率寄存器MD0TON)。

(5)Set bit 2 (ENMLT) of the frequency control register 1(FCON1) to “1” to enable the low-speed double clock.

(频率控制寄存器1FCON1的ENMLT位置1,使能低速时钟(32K×2))。

(6) When the M0RUN bit of the melody 0 control register (MD0CON) is set to “1”, the waveform equivalent to the buzzer sound that is set from the MD0 pin is output.

(旋律控制寄存器MD0CON的M0RUN位置1,波形通过MD0脚输出)。

/***********************************************/

* @brief 输出4K频率的方波

* @details

/***********************************************/

void Buzzer_Mode(void)

{

//--配置P50--//

P50DIR = 0;//P50 pin: Output (initial value)

P50C0 = 1;//P50 pin: In CMOS output mode

P50MD1 = 0;//Melody 0 output

P50MD0 = 1;

BZMD = 1;//Buzzer mode

MD0TMP = 0X03;//Continuous sound output;连续输出

MD0LEN = 8; // 8/16 Duty

MD0TON = 0X00; // 4.096 kHz (initial value)

ENMLT = 1; // 32.767K X 2

M0RUN = 1;//Starts MD0 output.

}

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/468/

标签: OKI单片机
分享给朋友:

“OKI单片机——ML610Q4XX Melody Driver” 的相关文章

Quartus II:从verilog代码生成原理图框图(bsf文件)

Quartus II:从verilog代码生成原理图框图(bsf文件)

首先说下,为什么用这个功能。 个人习惯顶层用原理图方式绘制,底层模块用verilog代码实现,这样的话在顶层原理图里可以清晰的知道要干啥,比代码更直观。 方法: File ->Create/Update -> Create Symbol Files for Current File 生...

Modelsim ase se版本区别

首先放出Modelsim Altera官网下载地址: ftp://ftp.altera.com/outgoing/release    Menter公司的Modelsim是业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业界唯一的单核支持VHDL和Verilog混合仿真...

Keil WARNING L16: UNCALLED SEGMENT……解决

Keil WARNING L16: UNCALLED SEGMENT……解决

Keil默认情况下会给所有的代码分配使用空间的,如果某些函数没被调用过,Keil则会给出警告 Warning L16:Uncalled Function(Segment),Ignored For Overlay Process。 这个警告本身不关键,关键是不使用的函数居然占用了ROM。如何解决这个...

Windows10 安装软件时提示 the error code is 2503/2502 错误解决办法

Windows10 安装软件时提示 the error code is 2503/2502 错误解决办法

问题内容:Windows10 安装软件时提示“ the error code is 2503/2502”错误代码分析原因:由于安装.msi格式的软件时,无法使用管理员身份运行,导致权限不够,从而引起2503/2502代码的错误解决方法:设置 C:\WINDOWS\TEMP的权限1、依次打开“ 我的电...

无法嵌入互操作类型“*****.Class”,请改用适用的接口

无法嵌入互操作类型“*****.Class”,请改用适用的接口

引用某些类时,会提示无法嵌入互操作类型“*****.Class”。请改用适用的接口。 找到应用的类,点视图-->解决方案资源管理器,找到“嵌入互操作类型”选项,把true改为false就可以了,如下图所示。...

BIN转BCD

BCD代码,Binary-Coded Decimal‎,是一种二进制的数字编码形式,用二进制编码的十进制代码。这种编码形式利用了四个位元来储存一个十进制数,使二进制和十进制之间的转换得以快捷的进行。常见BCD编码有8421 BCD码,2421 BCD码,余3码。我们要说的就是8421 BCD码与二进...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。