void Output_Sound(void)
{
C=(46083/f)*10; //计算定时常数
TH0=(8192-C)/32; //可证明这是13位计数器TH0高8位的赋初值方法
TL0=(8192-C)%32; //可证明这是13位计数器TL0低5位的赋初值方法
TR0=1; //开定时T0
delay(); //延时200ms,播放音频
TR0=0; //关闭定时器
sound=1; //关闭蜂鸣器
keyval=0xff; //播放按键音频后,将按键值更改,停止播放
}
C调低音5-高音5的频率是多少,如何转换成51系列单片机的频率?
定时常数为880.当发生频率为f时的时候,定时常数C=(1000000\/2f)us\/1.085us=46083\/f.当t0工作方式0时,最大计数8192,定时初值计算如下:TH0=(8192-C)\/32;TL0=(8192-C)%32;下面给你个例子:(用定时T0的方式0控制播放:好人一生平安)希望对你有帮助 #include<reg51.h> \/\/包含51单...
用51单片机控制1602液晶显示10进制数字~~
TH0=(65536-46083)\/256; \/\/定时器T0高8位重新赋初值 TL0=(65536-46083)%256; \/\/定时器T0低8位重新赋初值 } 看看哪些用得上 就选择下 改吧改吧 就是你的啦 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 宇宙跳跃 2012-05-27 · 超过23用户采纳过TA的回答 知道答主 回答量:89 采纳率...
单片机怎么设计一个0-9的一位数秒表,用定时器实现 c语言程序及其...
TMOD=0x01; \/\/使用定时器T0 TH0=(65536-46083)\/256; \/\/将定时器计时时间设定为46083×1.085微秒 \/\/=50000微秒=50毫秒 TL0=(65536-46083)%256;EA=1; \/\/开启总中断 ET0=1; \/\/定时器T0中断允许 TR0=1; \/\/启动定时器T0开始运行 int_time=0; \/\/中断次数初始化 second...
单片机c语言编译出现C(2): error C100: unprintable character 0xA1 ski...
?\/\/显示秒{ P2=0xbf; \/\/打开 P0=tab[s\/10];\/\/显示秒的十位 delay(); P2=0x7f; P0=tab[s%10]; \/\/显示秒的个位 delay()
求51单片机风扇转速监控程序 C语言
给你个我写的基于89c52的单片机测频率的程序,你参考下 include <reg52.h>#include <intrins.h>#include <stdlib.h>#define uchar unsigned char#define uint unsigned int#define LCD_data P0sbit LCD_RS=P2^0;sbit LCD_RW=P2^1;sbit LCD_EN=P2^2;sbit LCD_PSB=P2^3;bit flag=0;uint ...
C调低音5-高音5的频率是多少,如何转换成51系列单片机的频率
让单片机每0.955s取反一次就可以得到523hz的音调,机器周期总数为955us\/1.085us=880,定时常数为880.当发生频率为f时的时候,定时常数C=(1000000\/2f)us\/1.085us=46083\/f.当t0工作方式0时,最大计数8192,定时初值计算如下:TH0=(8192-C)\/32;TL0=(8192-C)%32;下面给你个例子:(用定时T0的方式0控制播放:好人...