#includereg51.h
unsigned char count = 0;
sbit key = P2^0;
sbit seep = P2^3;
void delay(unsigned char a)
{
unsigned char i;
while(a--)
for(i=0;i120;i++);
}
void main()
{
TMOD = 0x21;
TH0 = (65536-50000) / 256;
TL0 = (65536-50000) % 256;
ET0 = 1;
TR0 = 0;
ET1 = 1;
TR1 = 0;
EA = 1;
while(1)
{
if(key == 0)
{
delay(10);
if(key == 0)
{
TR0 = 1;
count=0;
flag = ~flag;
}
}
}
}
void time0() interrupt 1
{
TH0 = (65536-50000) / 256;
TL0 = (65536-50000) % 256;
i++;
if(count=8)
{
count=0;
if(flag == 0)
{
TR1 = 1;
}
else
{
TR1 = 0;
}
}
}
void time0() interrupt 3
{
seep = ~seep;
}
我的看法和楼上的相反!用单片机做门铃,应该是智能门铃,要是只“叮咚”一声了事,岂不是大炮打蚊子?虽然大学教育与实际脱节,但是作为工科的毕业生进入社会是靠真本事生存的!产品要考虑性价比。
你的问题不够详细。
1。是什么层次的毕业设计,本科?硕士?博士?
2。电路图只要逻辑图还是要有具体型号和管脚标注。是否指定型号或型号系列。
3。是否限定使用集成电路或元件数量。是否限定产品价格。
4。是否要程序清单或只要程序流程图。
如真心需要帮助把QQ号发到我信箱,heibao0049@sina.com.我在QQ中通过耳麦指导你设计,不能代劳!否则是害了你!因为我希望我儿子以后一人在外也有好心人帮助。
51资源还不够啊?汗!用51都能实现GSM远程防盗报警器 这么个门铃就不行了啊
再说了 这个电路提供了功放和录放音电路 单片机需要做的很少 但是我不知道楼主用的是什么样的录放电路 所以我没办法提供程序 不过我可以详细化工作流程
按一次 门铃之后 单片机会延时10秒 十秒之后无人应答 说明家里无人 那么这时候单片机会通过指示灯告知来人可以留言 然后根据录放电路的存储容量进行时间的管理。在录音时间快完毕的时候点亮指示灯 提示录音时间快完毕 避免漏掉信息 然后在录音时间到后自动关闭录音电路 并提示 来人可以离开了 主人来的是后可以按按键进行录音的播放,并且会显示录音的时间 根据录音电路的容量可以设置 3段录音 5段录音等 当然随着段数的增加,单片机的编程会变得复杂,但是其工作原理同一段式录音控制程序是一样的
晶振、复位电路、按键必定是学习板上本来就有的。
可能没有的就是三极管放大电路和蜂鸣器(一般也会有)。
你的电路原则上没有问题,建议作如下修改:
1、由于单片机一般高电平驱动能力比较弱,建议将三极管更换为PNP的,如9012.
2、R6改为1kΩ串联在IO口和三极管基极之间。
3、简易门铃采用蜂鸣器就好,C8可以省略。R5位置直接连蜂鸣器。
清单如下:
1、9012一只
2、1/8W,1k~4k7Ω电阻一只
3、5V蜂鸣器一只
当i==4时,是循环4次,判断一次j==2000,那2000可以被4整除,这样当中断2000次时,i==4是成立的。可是i==3时,是循环3次判断一次j==2000,2000是不能被3整除的,所以,当中断2000次时,i==3的条件是不成立的,也就是i==3和j==2000是不会同时成立的,就不会执行下面的程序了。可以将两段的if(j==2000){ 都改成if(j2000){ 就好了,这个条件一定会成立的。
单片机门铃仿真图的介绍就聊到这里吧,感谢您花时间阅读,谢谢。
本文标签:单片机门铃仿真图