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

OKI单片机——ML610Q4XX Melody Driver

xjtudll8年前 (2017-08-30)技术心得4000

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://www.xjtudll.cn/Exp/468/

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

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

tenx(十速)TM87系列常用宏(二)

tenx(十速)TM87系列常用宏(二) 接上篇:http://www.xjtudll.cn/Exp/42/5、位操作⑴ 位清零;BIT清零 RAM 00~6FH 70~7FH也可用,但是浪费了两条语句       &n...

NSToolBar-设定初始化选中的item

NSToolBar-设定初始化选中的item

参考资料: http://stackoverflow.com/questions/11004072/nstoolbar-how-do-i-initialise-with-a-selected-item 使用方法: -setSelectedItemIdentifier 举例如下: [self.win...

QuartusII编译工程后显示资源消耗为零的原因

参考资料:http://www.eefocus.com/li_mengxiang/blog/11-04/208828_3da3b.html 近日,编译了一个CPLD工程,编译OK,无任何错误,但是显示资源消耗为0,这个显然是不正常的。 网上搜了一番,一般是两种原因: 1、qurtusII编译工程后显...

ListView.setOnItemClickListener 点击无效

如果ListView中的单个Item的view中存在checkbox,button等view,会导致ListView.setOnItemClickListener无效, 事件会被子View捕获到,ListView无法捕获处理该事件. 解决方法: 在checkbox、button对应的view处加...

EEPROM读写注意事项

EEPROM读写注意事项

在实际使用EEPROM过程中,发现一些问题: 一、快速操作EEPROM造成读写数据出错 现象:读取的数据与写入的不同,但时序波形和硬件未发现任何问题。 在查阅EEPROM规格书后发现有一个很容易忽略的参数:TDHDL,此参数用于规定当对EEPROM进行一次I2C操作后必须再等待一段时间才能再对EEP...

PowerPCB转Protel

PowerPCB转Protel

第一步:用PowerPCB打开文件,选择Export导出,保存类型选择"ASCII Files(*.asc)",按保存按钮,弹出"ASCII Output"对话框,在导出格式(Format)中选择"PowerPCB V3.5",然后Sele...

发表评论

访客

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