找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4186|回复: 4
打印 上一主题 下一主题
收起左侧

定时器控制蜂鸣器频率输出1,10,50,100,200,400,800,1000hz方波的代码

[复制链接]
跳转到指定楼层
楼主
请高手帮忙查错,为什么只能输出1到100的频率,后#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
unsigned code table[]={50000,50000,10000,2000,1000,500,250,125,100};
sbit beep=P2^3;
uchar a,i,j;
uchar j=0,i=0;
void main()

{beep=0;
TMOD=0X11;//初始化,方式1;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
EA=1;
ET1=1;
TR1=1;
TH0=(65536-table[j])/256;
TH0=(65536-table[j])%256;
ET0=1;
TR0=1;
while(1);
}
void time()interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
i++;
if(i==20)
{ i=0;
j++;
if(j==9)
j=0;

}
}

void time_t0() interrupt 1
{ TR0=0;
TH0=(65536-table[j])/256;
TH0=(65536-table[j])%256;
a++;
if(a==10)
{  a=0;
  beep=~beep;
}

TR0=1;
}面的输不了
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:111634 发表于 2017-8-28 08:09 | 只看该作者
本帖最后由 zl2168 于 2017-8-28 08:10 编辑

实例69  输出周期脉冲方波(示波器显示)
实例69 输出周期脉冲方波.rar (34.2 KB, 下载次数: 12)

Proteus仿真一下,确认有效。
以上摘自张志良编著《单片机实验实训100例》 ISBN 978-7-5124-1603-1,北航社出版.。书中电路和程序设计有详细说明,程序语句条条有注解。仿真电路和Hex文件能在清华出版社网站免费下载,程序源代码只能到书上看了。到图书馆借,或到新华书店翻阅,或到网上书店打折购买。


回复

使用道具 举报

板凳
ID:164602 发表于 2017-8-28 09:39 | 只看该作者
初中物理书上是这样说的:人耳能听到的频率为20~20000Hz之间。你输出的1、10频率听不到哦!
回复

使用道具 举报

地板
ID:225054 发表于 2017-8-28 12:10 来自手机 | 只看该作者
HC6800-ES-V2.0 发表于 2017-8-28 09:39
初中物理书上是这样说的:人耳能听到的频率为20~20000Hz之间。你输出的1、10频率听不到哦!

1hz应该就是扬声器一秒响一下吧
回复

使用道具 举报

5#
ID:225054 发表于 2017-8-29 23:12 | 只看该作者
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表