题目:基于51单片机的简易电子琴的设计与制作(proteus仿真部分)
单片机介绍:
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了i/o设备。概括来讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。从二十世纪九十年代开始,单片机技术就已经发展起来,随着时代的进步与科技的发展,目前该技术的实践应用日渐成熟,单片机被广泛应用于各个领域。
单片机(microcontrollers)作为计算机发展的一个重要分支领域,根据发展情况,从不同角度,单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。
通用型
这是按单片机(microcontrollers)适用范围来区分的。例如,80c51式通用型单片机,它不是为某种专门用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成adc接口等功能的温度测量控制电路。
总线型
这是按单片机(microcontrollers)是否提供并行总线来区分的。总线型单片机普遍设置有并行地址总线、 数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。
控制型
这是按照单片机(microcontrollers)大致应用的领域进行区分的。一般而言,工控型寻址范围大,运算能力强;用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。 显然,上述分类并不是惟一的和严格的。例如,80c51类单片机既是通用型又是总线型,还可以作工控用。
现如今,人们越来越重视单片机在智能电子技术方面的开发和应用,单片机的发展进入到新的时期,无论是自动测量还是智能仪表的实践,都能看到单片机技术的身影。当前工业发展进程中,电子行业属于新兴产业,工业生产中人们将电子信息技术成功运用,让电子信息技术与单片机技术相融合,有效提高了单片机应用效果。作为计算机技术中的一个分支,单片机技术在电子产品领域的应用,丰富了电子产品的功能,也为智能化电子设备的开发和应用提供了新的出路,实现了智能化电子设备的创新与发展。单片机也被称为单片微控器,属于一种集成式电路芯片。在单片机中主要包含cpu、只读存储器rom和随机存储器ram等,多样化数据采集与控制系统能够让单片机完成各项复杂的运算,无论是对运算符号进行控制,还是对系统下达运算指令都能通过单片机完成。由此可见,单片机凭借着强大的数据处理技术和计算功能可以在智能电子设备中充分应用。简单地说,单片机就是一块芯片,这块芯片组成了一个系统,通过集成电路技术的应用,将数据运算与处理能力集成到芯片中,实现对数据的高速化处理。
(以上内容摘自百度百科)
仿真图:
proteus仿真连线图
程序源代码:/**@brief: 基于单片机的简易电子琴设计与制作*@author:逗比小憨憨*@website:https://space.bilibili.com/314404732*/#include reg51.h#define uint unsigned int#define uchar unsigned char#define keyport p1#define smgport p0#define delayvalue 10sbit buzzer=p2^3;uint value=0;uchar code dis[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};uint code tone[8]={0xfc44,0xfcac,0xfd09,0xfd34,0xfd82,0xfdc8,0xfe06,0xfe22};uchar code button_sel[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};void button_scan(void);void handler(void);void delay_ms(uint k);void delay_ms(uint k){ uint j=0,i=0; for(j=0;j< k;j++) for(i=0;i< 118;i++);}void button_scan(void){ keyport=0xff; if(keyport==button_sel[0]) { delay_ms(delayvalue); if(keyport==button_sel[0]) { value=tone[0]; smgport=dis[1]; } } if(keyport==button_sel[1]) { delay_ms(delayvalue); if(keyport==button_sel[1]) { value=tone[1]; smgport=dis[2]; } } if(keyport==button_sel[2]) { delay_ms(delayvalue); if(keyport==button_sel[2]) { value=tone[2]; smgport=dis[3]; } } if(keyport==button_sel[3]) { delay_ms(delayvalue); if(keyport==button_sel[3]) { value=tone[3]; smgport=dis[4]; } } if(keyport==button_sel[4]) { delay_ms(delayvalue); if(keyport==button_sel[4]) { value=tone[4]; smgport=dis[5]; } } if(keyport==button_sel[5]) { delay_ms(delayvalue); if(keyport==button_sel[5]) { value=tone[5]; smgport=dis[6]; } } if(keyport==button_sel[6]) { delay_ms(delayvalue); if(keyport==button_sel[6]) { value=tone[6]; smgport=dis[7]; } } if(keyport ==button_sel[7]) { delay_ms(delayvalue); if(keyport==button_sel[7]) { value=tone[7]; smgport=dis[8]; } }}void handler(void){ if(keyport==0xff) { p2=0xff; tr1=0; buzzer=1; } else { tr1=1; }}void main(void){ et1=1; tmod |=0x10;//使用定时器t1的模式1 th1=(65536-500)/256; tl1=(65536-500)%256; p0=0x00; ea=1; while(1) { button_scan();//按键扫描函数 handler(); }}void time1_handler(void) interrupt 3 using 1{ buzzer=~buzzer; th1=value/256; tl1=value%256;}
带你玩转物联网HMI中的表格控件!
ACFT-57D5ATPZ 长距离8Gb/s(LR, Lon
SuperLight推出业界首个便携式宽带激光器
北斗时空子链重磅发布!移远通信与中国移动携手打造更加可靠的高精定位产品
基于W77E58单片机和68HC908MR16芯片实现串行通信监控系统的设计
基于51单片机的简易电子琴设计
理想的车规电容:KEMET全新Y2安规电容(二)
WCDMA和HSDPA的单系统的系统的容量以及系统间干扰进行仿真分析
腾讯将打造“可进化的机器人”
基于区块链的分布式游戏分发系统Motion将重新定义游戏模式
E拆解:走进Galaxy S10e的内心世界
2021哪款蓝牙耳机值得买?2021的高性价比蓝牙耳机推荐
现代汽车集团明确2022年目标
自动驾驶的人群感知和合作学习
德工业机器人迅速普及并未削弱就业数据
小米MAX2什么时候上市:小米MAX2代言人、发布时间、配置、价格先知道,小米MIUI9延后发布不同台
富士通助日本产业技术综合研究所构建关键业务系统
IAR Systems发布 IAR Embedded Wor
基于一种可以点亮大功率LED的供电线路设计
AMT-DO300智能型溶解氧传感器的工作原理