永发信息网

单片机AT89C51编汇报警信号:用P1.0输出1KHz和2KHz的音频信号驱动扬声器,作报警信。

答案:3  悬赏:0  手机版
解决时间 2021-04-02 20:51
单片机AT89C51编汇报警信号:用P1.0输出1KHz和2KHz的音频信号驱动扬声器,作报警信。
最佳答案
#include
#define uchar unsigned char
uchar th1,tl1,th2,tl2;
uchar cnt;
bit flag;
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
cnt++;
sbit pluse=P1^0;
if(cnt>=10)
{
cnt=0;
flag=~flag;
}
}
void t1isr() interrupt 3
{
if(flag)
{
TH1=(65536-500)/256;
TL1=(65536-500)/256;
}
else
{
TH1=(65536-250)/256;
TL1=(65536-250)/256;
}
pluse=~pluse;
}
main()
{
TMOD=0x11;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TH1=(65536-500)/256;
TL1=(65536-500)%256;
flag=1;
TR0=1;
TR1=1;
ET0=1;
ET1=1;
EA=1;
while(1);
}
全部回答
用一个定时器,足矣。
;用P1.0输出1KHz和500Hz的音频信号驱动扬声器, ;要求1KHz信号响100ms,500Hz信号响200ms,交替进行. ORG 0000H JMP MAIN ORG 0030H MAIN: CALL BP1K CALL BP500 SJMP MAIN ;------------------------- BP500: MOV R6, #200 BP50: CPL P1.0 CALL DL500US CALL DL500US DJNZ R6, BP50 RET ;------------------------- BP1K: MOV R6, #200 BP10: CPL P1.0 CALL DL500US DJNZ R6, BP10 RET ;------------------------- DL500US: MOV R7, #247 DJNZ R7, $ RET ;------------------------ END 上述程序经过实验,可以满足题目要求。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
对于比赛第一友谊第二的看法 ~~~~~~~~~~~~~~~
求教下上海买灯具去哪里比较好的有哪家
针灸过后生气了有事吗
22÷5等于多少?余数是多少?
修持皈依时,应该念诵什么样的偈颂?怎么样明
招聘时笔试部分的英语题如何复习
LOL游戏工作室是怎么运营的?
木头粉虫怎么冶
新的丝袜刚穿在脚上会有细菌吗?
用一心是什么,有人知道吗
请问如果我要找一个人的号码,是不是可以打11
东京新宿京王线在哪座
中国农村信用合作社(新店信用社)地址有知道的
有没有财务口号
小牛出生多少斤?一个月能长多大?
推荐资讯
骑马与砍杀风云三国2.4为什么有的女NPC问别人
“荐绅先生难言之”是什么意思?
怎么才算真正搞懂一道题?
逃出密室纸条27354618什么意思
职场接到不确定要不要去的公司的电话怎么办?
五菱荣光v1.5c磨合期多少公里?
电工补考是什么时候
明奘法师:六祖坛经说什么 诸佛妙理 非关文字
VS2008团队资源管理器怎么使用 VS2008TeamExp
A.行 伍 (háng) 名 宿 (sù) 恶贯满
朋友儿子英国留学毕业典礼祝福语
幼儿园的韵怎么读
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?