产品选型

让单片机蜂鸣器唱歌 理工男用51单片机蜂鸣器演奏《往后余生》

小编 2024-11-25 产品选型 23 0

理工男用51单片机蜂鸣器演奏《往后余生》

视频加载中...

理工男就是神一样的人物,这样的理工男,应该非常受欢迎吧。

传播小知识:

51单片机

51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。

51单片机蜂鸣器

蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。三极管的作用为驱动,通过三极管放大驱动电流,从而可以让蜂鸣器发出声音。

有源蜂鸣器和无源蜂鸣器的区别:

这里的“源”不是指电源。而是指震荡源。 也就是说,有源蜂鸣器内部带震荡源,所以只要一通电就会叫。

而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K~5K的方波去驱动它。

有源蜂鸣器往往比无源的贵,就是因为里面多个震荡电路。

无源蜂鸣器的优点是:1。便宜,2。声音频率可控,可以做出“多来米发索拉西”的效果。3。在一些特例中,可以和LED复用一个控制口 有源蜂鸣器的优点是:程序控制方便 。

工程师故事|与单片机结缘只因兑现童年时的一个梦!

我是一个平凡的工程师,标准的80后,从事单片机及嵌入式相关工作已经有几年有余。每天忙忙碌碌,上班下班,既有做出产品时的开心,也有调试程序时的痛苦。一个平凡的人,做着一些平凡的事,每天过着平凡的生活。

有人说做电子工程师是年轻人的活,过了30还不转管理无论是体力上还是精力上都无法胜任了。这句话有一定的道理,但如果兴趣依旧为何不继续追寻自己的梦想呢? 从小我就对机械、电子方面的东西感兴趣。听父母说,每次买回的玩具我都要拆开看看里面的结构,美其名曰:看看为啥能动?为啥能工作。到现在有时回到乡下的老房子里,还能看到不少缺胳膊少腿的玩具呢。

特别是这个小青蛙,我拆开研究了很久

真正让我对电子感兴趣的还得从一个著名的玩具开始,它就是经典的任天堂红白机。 想当初,把这个东西搬回家时还兴奋了不少时间呢,一个暑假把所有能玩的游戏都玩了遍,接着就在琢磨这东西真神奇,到底里面有啥东西呢?拆开一看发现居然全都是绿绿的板子,上面还有不少黑色的玩意。忽然觉得做这个东西的人好伟大,以后自己也要学会做这个。

80后的经典啊,我也是从这里开始对电子一类的东西感兴趣

真正开始接触电子、电脑这一块那就到大学了。当时信息太闭塞了,填志愿的时候也不太清楚计算机、电子信息工程、通信专业都有啥区别。只是问了下同乡的几个师兄,都说计算机是今后的发展。既然是这样,那就报呗。于是我把所有能填的地方都填满了计算机专业,功夫不负有心人,最后还真去了个二本的计算机系。

其实现在想起来我最应该去的就是电子信息工程或机电工程专业,毕竟这两个专业学的才是后来我们所说的嵌入式,不过好在该学校的计算机系既不偏软也不偏硬,属于软件也学硬件也学的那一种,所以大学四年还是学到了不少东西的。

大学4年的时间是短暂的,在这里我还要鄙视下某些所谓的大学老师,记得有一次上微机原理讲到8253、8255我就问:这个东西现在还在用吗?能不能弄个实物来看看?老师当时回答我说:这个芯片已经不用了,所以也不能找到实物,大家只要记住它就好。当时我就无语,既然淘汰的东西为啥要学???

不过后来事实证明这些东西老是老了一点,但现在在很多的地方还是在用的。当然也不是说所有的大学老师都是严重脱离实际的,有些老师还是很厉害的,我就有幸碰到了一个,据说以前是某个公司的技术主管,专弄单片机这块。他让我知道了任天堂红白机里面绿绿的东西叫做PCB。有时他上课会给我们带一些小的玩意,比如说让单片机做流水灯,让蜂鸣器唱歌等等,让我们这些人崇拜的不行了。也正是在他的带领下我开始与单片机结下了不解之缘。

经典的AT89C51单片机,也是我的第一块单片机

51单片机开发板,我们就是从这里开始的

现在想想当时挺有意思的,在用51单片机做完了所有实验后忽然感觉它真是无所不能,所有东西都琢磨着是不是能用51单片机完成,甚至尝试着用51单片机做个手机啥的玩玩(当然,这是无法实现的...)不过还是做了很多好玩的东西,比如说远距离万能遥控器啦,晚上偷偷的遥控对面楼的电视。51大概玩了1年左右,期间还把PCB给画了一遍,学会了用PROTEL。

在一次偶然的机会听说51过时了,ARM才是现在的老大,于是省吃俭用花了600多大洋弄了块44B0X的板子,拿回来一看傻眼了,比51复杂的多啊,光是引脚就密密麻麻的一排,看都看不清,后来听师兄说居然有人能够徒手焊接,更是佩服得五体投地。

经典的44B0X板子,还记得吗?

据说这块板子是某个高手布的线,所有的44B0X都是参考它的,堪称经典。到目前有人学习PCB走线我还要求他好好琢磨这块板子呢。

除了主芯片外,其它外围设备也不简单啊,网卡,硬盘接口,FLASH等等应有尽有,既然买了就硬着头皮学呗,不过好在有51的基础,这块板子裸奔的程序很快就搞定了,也琢磨出个味来:不管芯片多复杂,最终到底无非就是配置下寄存器而已,只要配对了寄存器其它一切都好办。 在软件方面就相对复杂多了,为了搞这块板子我还特意去买了好几本LINUX方面的书,现在闲暇下来翻翻这些书还是很有感觉的。不过linux太过于复杂了,花了大半年的时间我才把这些书粗略的看了一遍。

经典的Linux书籍,你看过没有?

很多精髓的东西都没有弄清楚。这时候已经是大三下学期,刚好老师有个小项目看到我弄得还行就派我过去干了,其实东西现在想起来挺简单:有4~5路模拟信号采集到系统中,再通过AD转换变为数字信号用单片机进行运算,再把结果通过RS232发送给上位机软件。但这毕竟是我接的第一个项目,心里的忐忑可想而知,特别怕搞不定丢了老师的脸。于是在拿完需求后,先自己买了点器件用万用表搭了一个电路先试试。项目最终很成功,我也拿到了第一份报酬。

丑陋的自搭电路

大学4年很快就过去了,带着一堆的开发板、书籍和满腹的电子知识我离开了校园。很快我就找到了第一份工作:在一家小公司做技术员,公司主要的产品是为各种电子设备定做测试仪器。

由于我学的是计算机专业,所以公司希望招我来做上位机软件。这我可傻眼了,以前所有的时间都花在了电子方面,谈到做上位机软件倒还真的不会。毛主席说过:世上的事最怕“认真”二字。没学过没关系,只要现在开始也不晚。

那到底学什么语言和开发工具呢?跑到电子发烧友论坛上晃了一圈,很多人都说C++功能强大,以后发展也好。不过到底是VC还是C++ builder呢?VC难学,但据说学会了以后啥都好办了。既然是这样,那我就弄VC吧。好在公司的任务不紧,有充足的时间看书和学习,再加上有几个前辈指引,学习起来轻松多了。如果有朋友现在还想学习VC和windows程序设计的话,下面几本书可不能错过。这些书都是对应于VC 6.0的,到现在估计应该有对应.net的新版本了吧。

在这个公司的两年里先后完成了许多小的项目,从一开始的帮别人打下手,到后来的自己负责、带徒弟,感觉自己成长了很多。离开这家公司后,我往北边发展。进入了一家做视频相关系统的公司B,公司不大,但各个都是技术强人,这也给我了不小的压力。还记得入职的第一天,项目经理就和我说:我们这任务比较紧,你今天把入职手续办完就进入项目组吧,最近视频点播系统那边活比较多,你先去那边。于是我就误打误撞进入了视频领域,想想自己对这方面什么都不懂还真是胆大,不过这个选择对我今后的方向有重大影响,这个后面再说。

搞过视频的朋友应该都知道,这东西对工程师的综合素质要求还是挺高的,硬件方面所用处理器的都是主频比较高,性能比较好的,很多都是用DSP或FPGA来做;软件方面对算法、数据结构要有较深的理解。不过当时我可不知道这些,总觉得无非就是单片机的升级版本,没什么大不了的。到了项目组后,简单的和项目沟通了下,了解到目前上位机这边有个问题:无法获取当前鼠标所指的位置的文字。当时我立马想到金山词霸不是有个屏幕取词功能么?应该和这个类似。于是立即动手查资料,看到到底是什么原理。等我把相关的资料看完后已经到了下午5点多钟,这是大家都陆陆续续准备下班了,正当我犹豫要不要告诉项目经理时,项目经理走到了我身边于是我顺势就把自己的想法告诉了他,只见他两眼“闪光”,说:那个谁。。。还有那个谁。。。都别走了,留下来加个班,我们一起把这个东西解决了。等到完成基本框架已经到了深夜1点多钟,路上已经基本看不到行人了,晚风吹在脸上,心里充满了作为工程师的自豪,像一个得胜而归的将军。

在这里我特别要感谢项目经理,在B公司的3年时间里是我成长最快的3年,我陆续接触了AT9200,I.MX系列,OMAP,达芬奇系列等各种处理器的开发,特别是达芬奇系列,当时公司里的板子才2块,项目经理居然允许我带一块回家,要知道当时这个板子要好几万呢。当时可把我高兴坏了,像中了500万一样...嚯嚯,开玩笑的。

可能在一个地方久了就会厌倦,B公司虽然不错,但几年的光阴已经把我的激情磨灭,而我又是个需要激情的人。所以最终我还是从B公司离职了。离职后并没有立即找工作,当然并不是找不到,而是我需要一段时间放松下自己,整理下心情。

恰巧这段时间各个半导体公司在不停的开研讨会,像ARM, TI,ST,Xilinx等等。于是乎,我就免费吃了好几顿大餐:)不过最让我印象深刻的是XILINX的研讨会,它们当时在推Spartan系列FPGA。说实话,我对这个FPGA这个东西只有耳闻,但到底是个什么东西还真不知道。在研讨会上看到了它们公司推出的几个案例,其中一个就是视频监控与模式识别的。由于我本身就是做这个的,所以对这块听得尤为仔细。相比于传统的DSP来做算法,FPGA做算法的速度、效率优势更为明显。

于是我很快就有了下一次目标----学习FPGA 。不过想法是好的,不过FPGA学起来真是相当的麻烦:开发板很贵,完全硬件编程。这对我们软件出生的人真是不小的挑战。好在当时xilinx开研讨会赠送了一块BASYS开发板,于是我就从它开始踏上了FPGA的不归路。

有人问:一直学习累不累?有的时候想想确实很累。

夜深人静的时候,总是会一个人坐在窗前发呆:为什么我要不停的学习?我到底要什么?其实我并不知道这些东西到底有什么用,或许只是为了实现童年时期的一个梦,就像筷子兄弟说的:梦想这东西和经典一样,永远不会因为时间而褪色,反而更显珍贵!

作为一名正在埋头苦学51单片机的你,或者刚刚涉足单片机开发的你,在未来几年时间内,你的梦想是什么?你想成为什么样子的人?

单片机工程师,硬件工程师,还是嵌入式工程师?

51系列单片机,作为已经整整地影响了一代人划时代产品,在面临网络化、智能化物联网的今天,已经显得力不从心。ARM作为移动物联网时代的王者,其Cortex系列产品已经遍及高、中、低端设备,将成为引领时代发展的先驱。以STM32作为学习Cortex系列产品的嵌入式开发,是电子初学者的最优学习之路。

相比51单片机,STM32具有如下优势:

1.无论在主频、速度和性能方面,STM32均优于51单片机,能够应付未来产品需求。

2.STM32的ST官方最新Hal库开发,是STM32开发的趋势,开发项目速度相比51单片机更加轻松快捷、方便。

3.嵌入式物联网开发,STM32占据核心地位。STM32是嵌入式系统的心脏,IoT、智能工业、智能家居应用,STM32使得开发产品更加智能化;同时,STM32也是大众市场第一MCU,基本满足任何开发者需求,引领物联网嵌入式系统开发行业潮流。

为帮助更多人学会嵌入式开发,发烧友学院联合创客学院,通过9天视频课程内容,教会大家嵌入式系统STM32在实际开发中常用的技术。只要你认真听课、多敲代码多练习,一周多的时间即可完全掌握!

扫码或点击阅读原文

立即报名嵌入式系统STM32学习!

课程特色

1.视频以STM32F0为讲解对象,大屏直播形式讲课;

2.采用ST官方最新Hal库方法开发,摒弃传统标准库;

3.所有项目基于STM32开发平台CubeMx建成;

4.引入大量传感器开发实例,如光照、三轴传感器;

5.视频均有对应实例代码、课程PPT等资料,方便及时复习。

学员服务

1.课程全部大屏直播讲解,摒弃传统视频形式;

2.学员专享课程QQ群专业讲师答疑。

↓↓↓ 点击"阅读原文" 立即报名嵌入式系统STM32学习!

相关问答

单片机 如何插入音乐?

单片机插入音乐需要先将音乐文件转换成单片机可以识别的数字信号,并将其存储在单片机的存储器中。然后通过单片机的IO口输出数字信号到音响系统中,实现音乐播...

51 单片机 控制 蜂鸣器 发出911声音c程序如下,求老师详细讲解,...

[最佳回答]什么叫911声音??不明白看程序应该是发出的声音频率越来越高,然后突然降低,再越来越高,如此循环main(){TMOD=0x01;//设定时方式1,16位定时器frq...

51 单片机 如何用 蜂鸣器 做报警器?

最简单的做法是用51单片机的IO引脚经NPN型三极管驱动一只有源蜂鸣器:蜂鸣器的正极接电源vcc,负极接三极管的集电极,三极管的基极通过一只10K左右的限流电阻接...

单片机 蜂鸣器 的是什么信号?

在单片机驱动蜂鸣器时,如果选用的是无源蜂鸣器,则单片机引脚输出的是方波脉冲频率,大约是1k赫兹左右,如果选用的是有源蜂鸣器,则单片机输出的信号是低电平。...

stc15 单片机 如何 让蜂鸣器 一直响?

1.可以让蜂鸣器一直响。2.因为STC15单片机可以通过设置IO口的电平状态来控制蜂鸣器的开关,只要将对应的IO口设置为高电平,蜂鸣器就会一直响。3.除了将对应I...

求助 51 单片机 怎么 让蜂鸣器 每隔一秒响两次-ZOL问答

蜂鸣器分有源和无源,有源的通电就响,无源的要给一个频率信号。定时器设个一秒的延时不就行了#include#defineucharunsignedcharuc...

51 单片机 怎么控制 蜂鸣器 音调?

51单片机只有驱动无源蜂鸣器时才可以控制音调。改变驱动引脚输出方波的频率,就可以调整音调。如果采用延时法产生方波,那就改变延时时间;如果采用定时器法,那...

单片机 怎么用定时器控制 蜂鸣器 ?

要使用定时器控制蜂鸣器,首先需要选择一个合适的定时器模块,并设置其工作模式和计数值。然后,根据需要设置定时器的中断使能位,以便在定时器计数完成时触发...

51 单片机 ,如何 让蜂鸣器 发出数字12345的声音?

要让51单片机的蜂鸣器发出数字12345的声音,可以通过以下步骤实现1.定义一个数组,存储数字12345对应的频率值,例如intfreq[]={1915,1700,1519,1432,...

单片机 ,按一下按键 蜂鸣器 响一下的代码c语言?

市场上买到的蜂鸣器都是施加直流电压就响,不需要什么频率!你的课题应该是:按住key1,蜂鸣器响;放开key1,蜂鸣器停。是这样的吧?市场上买到的蜂鸣器都是施加...

猜你喜欢