用AVR128单片机的音乐门铃

一、系统方案
1、使用按键控制蜂鸣器模拟发出“叮咚”的门铃声。
2、“叮”声对应声音频率714Hz,“咚”对应声音频率500Hz,这两种频率由ATmega128的定时器生成,定时器使用的工作模式自定,处理器使用内部4M时钟。“叮”声持续时间300ms,“咚”声持续时间700ms。
3、发“叮”时8个发光二极管亮,发“咚”时发光二极管灭。
4、用LCD液晶显示芯片或数码管显示所用的定时器(ATmega128有定时器0-3),定时器时钟值、定时器的定时/计数器的初值及两种声音频率的持续时间等参数。
在这里插入图片描述
二、硬件设计
原理图如下:
在这里插入图片描述

三、单片机软件设计
1、首先是系统初始化
//定时器1初始化,
void timer1_init(void)
{
TCCR1B = 0x00; //stop
TCNT1H = 0xf5; //setup
TCNT1L = 0x0e;
TCCR1A = 0x00;
TCCR1B = 0x00; //start Timer //定时器不分频
}
2、液晶显示程序
//写入命令
void LCD_write_command(uchar dat)
{
//LCD_wait_ready(); //写数据之前,先判断液晶是否忙碌
lcd_ddr =0XFF; lcd_port=0XFF; //设置端口为输出,DI等于0代表指令操作
RW0();_delay_us(3);DI0(); //E下降沿将端口数据写到液晶显示器中
lcd_port=dat;
E1();_delay_us(3);E0();
}
//写入数据
void LCD_write_data(uchar data)
{
//LCD_wait_ready(); //写数据之前,先判断液晶是否忙碌
lcd_ddr =0XFF; lcd_port=0XFF; //设置端口为输出,DI等于1代表数据操作
RW0();_delay_us(3);DI1();
if(!fxshow) lcd_port=data;else lcd_port=~data;//E下降沿将端口数据写到液晶显示器中
E1();_delay_us(3);E0();
}
3、按键程序
void Do()
{
switch(state)
{
case 0 :LED3_CLR() ;TCCR3B = 0x01; state = 1 ;scnt = 0 ;Set_Frq(0);Start();break ; //启动定时器设定好相应的频率
case 1 :if(scnt>300) //时间大于300毫秒
{
state = 2 ; //跳转到状态2
}

	  break ;

case 2 :
Set_Frq(1); //设定咚的频率值
state = 3 ; //跳转到状态3
break ;
case 3 :
if(scnt>1000) //时间大于1000ms
{
state = 4; //跳转到状态4
}
LED3_SET() ;break ; //LED熄灭
case 4 :
scnt = 0 ;
state = 0 ;

	  if(tcnt<4){tcnt++;}else{enable = 0 ;TCCR3B = 0x00;	  			 //定时器3停止工作tcnt = 0 ;Stop();  						 //蜂鸣器停止输出}break ;						 //整个函数实现了叮 300毫秒,咚 700毫秒的过程

}
}
4、核心算法程序
//***********************************************************************
// 主程序
//***********************************************************************
void main(void)
{
system_init(); //系统初始化
LCDchushihua(); //液晶初始化
LCDQingPing(); //显示器清屏

timer1_init();								  //定时器1初始化
timer3_init();								  //定时器3初始化
TIMSK=0x04;								  	  //设置定时器中断
ETIMSK=0x04;								  //设置定时器中断
SEI();										  //开中断 
vision_init(0);								  //显示内容初始化
m_enable = 0 ;								  //叮咚模式
while(1)
{scan_key();	   							  //按键扫描if(enable==1){Do();}
}

}

四、 proteus仿真设计
Proteus软件是一款应用比较广泛的工具,它可以在没有硬件平台的基础上通过自身的软件仿真出硬件平台的运行情况,这样就可以通过软件仿真来验证我们设计的方案有没有问题,如果有问题,可以重新选择器件,连接器件,直到达到我们设定的目的,避免我们搭建实物的时候,如果当初选择的方案有问题,我们器件都已经焊接好了,再去卸载下去,再去焊接新的方案的器件,测试,这样会浪费人力和物力,也给开发者带来一定困惑,Proteus仿真软件就很好的解决这个问题,我们在设计之初,就使用该软件进行模拟仿真,测试,选择满足我们设计的最优方案。最后根据测试没问题的仿真图纸,焊接实物,调试,最终完成本设计的作品。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/144894.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

No150.精选前端面试题,享受每天的挑战和学习

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

【5G PHY】物理层逻辑和物理天线的映射

博主未授权任何人或组织机构转载博主任何原创文章&#xff0c;感谢各位对原创的支持&#xff01; 博主链接 本人就职于国际知名终端厂商&#xff0c;负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作&#xff0c;目前牵头6G算力网络技术标准研究。 博客…

【AI视野·今日NLP 自然语言处理论文速览 第四十四期】Fri, 29 Sep 2023

AI视野今日CS.NLP 自然语言处理论文速览 Fri, 29 Sep 2023 Totally 45 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computation and Language Papers MindShift: Leveraging Large Language Models for Mental-States-Based Problematic Smartphone Use Interve…

第五章——文件内容显示

5.1 浏览普通文件内容 注意 以上命令的语法&#xff1a;命令 【option】所查文件名 set命令 显示5到10行的信息 [rootcomeon ~]#sed -n 5,10p /etc/passwd 5.2 过滤文件内容显示--grep 语法 grep 【option】... 关键字符串 所查文件名... 使用特殊符号进行字符串的匹配 5…

论文笔记:ViTGAN: Training GANs with Vision Transformers

2021 1 intro 论文研究的问题是&#xff1a;ViT是否可以在不使用卷积或池化的情况下完成图像生成任务 即不用CNN&#xff0c;而使用ViT来完成图像生成任务将ViT架构集成到GAN中&#xff0c;发现现有的GAN正则化方法与self-attention机制的交互很差&#xff0c;导致训练过程中…

保姆级 -- Zookeeper超详解

1. Zookeeper 是什么(了解) Zookeeper 是一个 分布式协调服务 的开源框架, 主要用来解决分布式集群中应用系统的一致性问题, 例如怎样避免同时操作同一数据造成脏读的问题. ZooKeeper 本质上是 一个分布式的小文件存储系统 . 提供基于类似于文件系统的目录树方式的数据存储, …

【图论C++】链式前向星(图(树)的存储)

/*** file * author jUicE_g2R(qq:3406291309)————彬(bin-必应)* 一个某双流一大学通信与信息专业大二在读 * * brief 一直在竞赛算法学习的路上* * copyright 2023.9* COPYRIGHT 原创技术笔记&#xff1a;转载需获得博主本人…

基于微信小程序的刷题考试系统设计与实现(适用于各类考试类、答题类程序)

文章目录 前言系统主要功能&#xff1a;具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09;有保障的售后福利 代码参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计…

【Ambari】银河麒麟V10 ARM64架构_安装Ambari2.7.6HDP3.3.1(HiDataPlus)

&#x1f341; 博主 "开着拖拉机回家"带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——&#x1f390;开着拖拉机回家_大数据运维-CSDN博客 &#x1f390;✨&#x1f341; &#x1fa81;&#x1f341; 希望本文能够给您带来一定的帮助&#x1f338;文…

pygame - 贪吃蛇小游戏

蛇每吃掉一个身体块&#xff0c;蛇身就增加一个长度。为了统一计算&#xff0c;界面的尺寸和游戏元素的位置都是身体块长度的倍数 1. 上下左右方向键&#xff08;或者ASDW键&#xff09;控制蛇的移动方向 2. 空格键暂停和继续图片文件&#xff0c;复制到项目的asset\img目录下i…

KUKA机器人通过3点法设置工作台基坐标系的具体方法

KUKA机器人通过3点法设置工作台基坐标系的具体方法 具体方法和步骤可参考以下内容: 进入主菜单界面,依次选择“投入运行”—“测量”—基坐标,选择“3点法”, 在系统弹出的基坐标编辑界面,给基座标编号为3,命名为table1,然后单击“继续”按钮,进行下一步操作, 在弹出的…

300以内的开放耳机哪款好、300以内神级耳机推荐

开放式耳机基于不入耳、长久舒适佩戴的特点&#xff0c;在 2023 年迎来了增长爆发期。基于其开放式不入耳设计&#xff0c;佩戴时耳道会持续保持畅通状态&#xff0c;减少了对耳朵的压力&#xff0c;既能在通话或欣赏音乐时提供清晰的声音&#xff0c;又能让周围的环境声音透过…

win10,WSL的Ubuntu配python3.7手记

1.装linux 先在windows上安装WSL版本的Ubuntu Windows10系统安装Ubuntu子系统_哔哩哔哩_bilibili &#xff08;WSL2什么的一直没搞清楚&#xff09; 图形界面会出一些问题&#xff0c;注意勾选ccsm出的界面设置 win10安装Ubuntu16.04子系统&#xff0c;并开启桌面环境_win…

基于FPGA的图像坏点像素修复算法实现,包括tb测试文件和MATLAB辅助验证

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 vivado2019.2 matlab2022a 3.部分核心程序 timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 202…

华为智能企业远程办公安全解决方案(1)

华为智能企业远程办公安全解决方案&#xff08;1&#xff09; 课程地址方案背景需求分析企业远程办公业务概述企业远程办公安全风险分析企业远程办公环境搭建需求分析 方案设计组网架构设备选型方案亮点 课程地址 本方案相关课程资源已在华为O3社区发布&#xff0c;可按照以下…

CTF 入门指南:从零开始学习网络安全竞赛

文章目录 写在前面CTF 简介和背景CTF 赛题类型介绍CTF 技能和工具准备好书推荐 写作末尾 写在前面 CTF比赛是快速提升网络安全实战技能的重要途径&#xff0c;已成为各个行业选拔网络安全人才的通用方法。但是&#xff0c;本书作者在从事CTF培训的过程中&#xff0c;发现存在几…

mongodb Community 7 安装(linux)

链接&#xff1a;mongodb官网 链接&#xff1a;官方安装文档 一、安装 1.安装依赖 apt-get install gnupg curl2.安装public key cd /usr/localcurl -fsSL https://pgp.mongodb.com/server-7.0.asc | gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg --dearmor3.把mon…

什么是Times New Roman 字体

如何评价 Times New Roman 字体&#xff1f;&#xff1a;https://www.zhihu.com/question/24614549?sortcreated 新罗马字体是Times New Roman字体&#xff0c;是Office Word默认自带的英文字体之一。 中英文字体 写作中&#xff0c;英文和数字的标准字体为 Times New Roma…

[杂谈]-ESP32中的无线通信协议

ESP32中的无线通信协议 文章目录 ESP32中的无线通信协议1、ESP32 无线通信协议简介2、Bluetooth Low Energy (BLE)3、**Bluetooth Classic**4、**ESP-NOW**5、Wi-Fi&#xff08;客户端-服务器通信协议&#xff09;6、MQTT7、**LoRa**8、**GSM/GPRS/LTE**9、总结 ESP32是一个基于…

【中秋节快乐】Matplotlib:3d绘图合集

目录 一、环境介绍 二、Matplotlib绘图&#xff08;3d&#xff09; 0. 设置中文字体 1. 3D线框图&#xff08;3D Wireframe Plot&#xff09; 2. 3D散点图&#xff08;3D Scatter Plot&#xff09; 3. 3D条形图&#xff08;3D Bar Plot&#xff09; 4. 3D曲面图&#xff0…