单片机大虾是怎么样炼成的 强烈要求学习单片机的同志们看完!前言:近来在论坛总是见到一些菜鸟们在大叫:“我想学单片机”,“我要学单片机”,“如何入门啊?”,“你们怎么这么厉害,是怎样学的??”等等等等一系列的问题,实在是看多了也感到烦了,今天,就由我电子白菜厚着面皮,顶着无数老虾的砖头,在这里写上一篇单片机学习心得,让菜鸟们勇敢地跨出第一步。首先解释什么是虾米先,以我个人意见吧。1、来单片机论坛的时候能够看懂大多数家伙在说什么,(当然不是看懂他们在灌水的帖子啦)并且能适当地提出问题(非弱智的问题)和讨论,解答别人的问题。2、当希望自己用单片机开发一个东东,或公司要求开发一个方案的时候,能够很快地在心中建立一个基本模型,知道应该需要些什么知识,而自己又掌握多少,并根据一定的灵感开始搜索资料。就是以上这2 点了,如果你满足了,基本下面的东西你就当作是故事来读就可以了。然后是心态问题,不久前看到有人这么问:“我想学单片机啊,因为听说很有钱途,请问学那种单片机最有钱途?”这个问题,我看到了就觉得反感,可以这么说,在这个坛子混的单片机大虾只有两种:第一、是一直从事单片机类工作的;第二、是爱好者,爱好者包括从事单片机工作的和非单片机工作的。的确,单片机是有一定的钱途,但对于那些本来不是从事单片机工作的,而又没有兴趣的,单从钱的角度出发的家伙,想学好单片机??恐怕是做白日梦。
标签: 单片机
上传时间: 2013-11-04
上传用户:firstbyte
单片机原理与应用技术 单片机到底是什么呢?就是一个电脑,只不过是微型的,麻雀虽小,五脏俱全:它内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可......用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机,排烟罩VCD等等的家电里面都可以看到它的身影!......它主要是作为控制部分的核心部件。 它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。 单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性! 由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K的尺寸!对于家用PC的硬盘来讲没什么,可是对于单片机来讲是不能接受的。 单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC上来运行,家用PC的也是承受不了的。 目前最常用的单片机为MCS-51,是由美国INTEL公司(生产CPU的英特尔)生产的,89C51是这几年在我国非常流行的单片机,它是由美国ATMEL公司开发生产的,其内核兼容MCS-51单片机。 单片机的应用领域 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用 单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。 2.在工业控制中的应用 用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3.在家用电器中的应用 可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 4.在计算机网络和通信领域中的应用 现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5.单片机在医用设备领域中的应用 单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途
上传时间: 2013-11-14
上传用户:gououo
单片机音乐中音调和节拍的确定方法:调号-音乐上指用以确定乐曲主音高度的符号。很明显一个八度就有12个半音。A、B、C、D、E、F、G。经过声学家的研究,全世界都用这些字母来表示固定的音高。比如,A这个音,标准的音高为每秒钟振动440周。 升C调:1=#C,也就是降D调:1=BD;277(频率)升D调:1=#D,也就是降E调:1=BE;311升F调:1=#F,也就是降G调:1=BG;369升G调:1=#G,也就是降A调:1=BA;415升A调:1=#A,也就是降B调:1=BB。466,C 262 #C277 D 294 #D(bE)311 E 330 F 349 #F369 G 392 #G415A 440. #A466 B 494 所谓1=A,就是说,这首歌曲的“导”要唱得同A一样高,人们也把这首歌曲叫做A调歌曲,或叫“唱A调”。1=C,就是说,这首歌曲的“导”要唱得同C一样高,或者说“这歌曲唱C调”。同样是“导”,不同的调唱起来的高低是不一样的。各调的对应的标准频率为: 单片机演奏音乐时音调和节拍的确定方法 经常看到一些刚学单片机的朋友对单片机演奏音乐比较有兴趣,本人也曾是这样。在此,本人将就这方面的知识做一些简介,但愿能对单片机演奏音乐比较有兴趣而又不知其解的朋友能有所启迪。 一般说来,单片机演奏音乐基本都是单音频率,它不包含相应幅度的谐波频率,也就是说不能象电子琴那样能奏出多种音色的声音。因此单片机奏乐只需弄清楚两个概念即可,也就是“音调”和“节拍”。音调表示一个音符唱多高的频率,节拍表示一个音符唱多长的时间。 在音乐中所谓“音调”,其实就是我们常说的“音高”。在音乐中常把中央C上方的A音定为标准音高,其频率f=440Hz。当两个声音信号的频率相差一倍时,也即f2=2f1时,则称f2比f1高一个倍频程, 在音乐中1(do)与 ,2(来)与 ……正好相差一个倍频程,在音乐学中称它相差一个八度音。在一个八度音内,有12个半音。以1—i八音区为例, 12个半音是:1—#1、#1—2、2—#2、#2—3、3—4、4—#4,#4—5、5一#5、#5—6、6—#6、#6—7、7—i。这12个音阶的分度基本上是以对数关系来划分的。如果我们只要知道了这十二个音符的音高,也就是其基本音调的频率,我们就可根据倍频程的关系得到其他音符基本音调的频率。 知道了一个音符的频率后,怎样让单片机发出相应频率的声音呢?一般说来,常采用的方法就是通过单片机的定时器定时中断,将单片机上对应蜂鸣器的I/O口来回取反,或者说来回清零,置位,从而让蜂鸣器发出声音,为了让单片机发出不同频率的声音,我们只需将定时器予置不同的定时值就可实现。那么怎样确定一个频率所对应的定时器的定时值呢?以标准音高A为例: A的频率f = 440 Hz,其对应的周期为:T = 1/ f = 1/440 =2272μs 由上图可知,单片机上对应蜂鸣器的I/O口来回取反的时间应为:t = T/2 = 2272/2 = 1136μs这个时间t也就是单片机上定时器应有的中断触发时间。一般情况下,单片机奏乐时,其定时器为工作方式1,它以振荡器的十二分频信号为计数脉冲。设振荡器频率为f0,则定时器的予置初值由下式来确定: t = 12 *(TALL – THL)/ f0 式中TALL = 216 = 65536,THL为定时器待确定的计数初值。因此定时器的高低计数器的初值为: TH = THL / 256 = ( TALL – t* f0/12) / 256 TL = THL % 256 = ( TALL – t* f0/12) %256 将t=1136μs代入上面两式(注意:计算时应将时间和频率的单位换算一致),即可求出标准音高A在单片机晶振频率f0=12Mhz,定时器在工作方式1下的定时器高低计数器的予置初值为 : TH440Hz = (65536 – 1136 * 12/12) /256 = FBH TL440Hz = (65536 – 1136 * 12/12)%256 = 90H根据上面的求解方法,我们就可求出其他音调相应的计数器的予置初值。 音符的节拍我们可以举例来说明。在一张乐谱中,我们经常会看到这样的表达式,如1=C 、1=G …… 等等,这里1=C,1=G表示乐谱的曲调,和我们前面所谈的音调有很大的关联, 、 就是用来表示节拍的。以 为例加以说明,它表示乐谱中以四分音符为节拍,每一小结有三拍。比如: 其中1 、2 为一拍,3、4、5为一拍,6为一拍共三拍。1 、2的时长为四分音符的一半,即为八分音符长,3、4的时长为八分音符的一半,即为十六分音符长,5的时长为四分音符的一半,即为八分音符长,6的时长为四分音符长。那么一拍到底该唱多长呢?一般说来,如果乐曲没有特殊说明,一拍的时长大约为400—500ms 。我们以一拍的时长为400ms为例,则当以四分音符为节拍时,四分音符的时长就为400ms,八分音符的时长就为200ms,十六分音符的时长就为100ms。可见,在单片机上控制一个音符唱多长可采用循环延时的方法来实现。首先,我们确定一个基本时长的延时程序,比如说以十六分音符的时长为基本延时时间,那么,对于一个音符,如果它为十六分音符,则只需调用一次延时程序,如果它为八分音符,则只需调用二次延时程序,如果它为四分音符,则只需调用四次延时程序,依次类推。通过上面关于一个音符音调和节拍的确定方法,我们就可以在单片机上实现演奏音乐了。具体的实现方法为:将乐谱中的每个音符的音调及节拍变换成相应的音调参数和节拍参数,将他们做成数据表格,存放在存储器中,通过程序取出一个音符的相关参数,播放该音符,该音符唱完后,接着取出下一个音符的相关参数……,如此直到播放完毕最后一个音符,根据需要也可循环不停地播放整个乐曲。另外,对于乐曲中的休止符,一般将其音调参数设为FFH,FFH,其节拍参数与其他音符的节拍参数确定方法一致,乐曲结束用节拍参数为00H来表示。下面给出部分音符(三个八度音)的频率以及以单片机晶振频率f0=12Mhz,定时器在工作方式1下的定时器高低计数器的予置初值 : C调音符 频率Hz 262 277 293 311 329 349 370 392 415 440 466 494TH/TL F88B F8F2 F95B F9B7 FA14 FA66 FAB9 FB03 FB4A FB8F FBCF FC0BC调音符 1 1# 2 2# 3 4 4# 5 5# 6 6# 7频率Hz 523 553 586 621 658 697 739 783 830 879 931 987TH/TL FC43 FC78 FCAB FCDB FD08 FD33 FD5B FD81 FDA5 FDC7 FDE7 FE05C调音符 频率Hz 1045 1106 1171 1241 1316 1393 1476 1563 1658 1755 1860 1971TH/TL FB21 FE3C FE55 FE6D FE84 FE99 FEAD FEC0 FE02 FEE3 FEF3 FF02
上传时间: 2013-10-20
上传用户:哈哈haha
模块化LED大屏幕显示器的设计:LED大屏幕显示器由于其醒目! 内容灵活多变等特点" 已经越来越多地应用于广告! 信息发布! 交通指示等公共场所" 取得了良好效果LED显示屏主要分为数码显示和点阵显示两大类" 本文只讨论点阵显示$ 目前的627 显示屏基本上都是先由用户提出要求" 生产厂家根据需要订做$ 每次都要重复设计电路和机械结构" 造成资源浪费" 而且若用户的需求改变" 改动将十分困难$实际上不论显示屏的大小" 其原理都是相同的"因此完全可以设计出一种标准化% 模块化的LED 显示屏" 针对不同的需要" 只需要简单组合相应的模块即可$ 本文介绍的就是一种模块化的LED 显示屏" 可以根据需要灵活改变大小" 并可以脱离计算机独立运行" 还可以实现如闪烁! 滚动显示等特效$ 对整体式显示屏刷新率不足发生闪烁的常见问题" 在这个设计中由于被分割成小模块" 不再成为问题$
上传时间: 2013-10-09
上传用户:fxf126@126.com
嵌入式系统是一种应用范围非常广泛的系统。可以说除了桌面计算机和服务器外所有计算设备都属于嵌入式系统,例如从便携式音乐播放器到航天飞机上的实时系统控制都属于嵌入式系统。 大多数商用的嵌入式系统都设计成专用任务的低成本的产品。大多数的嵌入式系统都具有实时性的要求。有些功能需要非常快的主频,但其他大多数功能并不需要高速的处理能力。这些系统通过特定的器件和软件来满足实时性的要求。 简单地通过速度和成本来定义嵌入式系统是困难的,但对于大批量的产品而言,成本常常对系统设计起决定作用。通常,一个嵌入式系统的很多部分相对系统主要功能来说需要较低的性能,因此嵌入式系统和通用PC相比,能够使用一个满足辅助功能的合适的CPU,从而简化了系统设计,降低了成本。例如,数字电视的机顶盒需要处理每秒以百万兆位计的连续数据,但这些数据处理大部分是由定制的硬件来实现的,如解析、管理和编解码多个频道的数字影像。 对于大批量生产的嵌入式系统,如便携式音乐播放器或手机等,降低成本就成为最主要的问题。这些系统通常只具有几个芯片:一个高度集成的CPU,一个定制的芯片用于控制其他所有的功能,还有一个存储芯片。在这种设计中,每部分都设计成使用最小的系统功耗。 对于小批量的嵌入式应用,为了降低开发成本,常常使用PC体系结构,通过限制程序的执行时间或用一个实时操作系统来替换原先的操作系统。在这种情况下,可以使用一个或多个高性能的CPU来替换特殊用途的硬件。 嵌入式系统的软件通常运行在有限的硬件资源上:没有硬盘、操作系统、键盘或屏幕。软件一般都没有文件系统,如果有的话,也会采用Flash驱动器。如果有人机交互接口的话,也是一个小键盘或液晶显示器。硬件是计算机的物理部分,和存储在硬件中的计算机软件程序和数据区分开来。 嵌入到机械中的嵌入式系统需要长期无故障连续运行,因此它的软件需要比PC中的软件更加仔细地开发和更加严格地测试。 那么,到底什么是嵌入式系统呢? 根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助设备、机器和车间运行的装置”(原文为devices used to control,monitor,or assist the operation of equipment,machinery or plants)。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。 目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础,软件 硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 可以这样认为,嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。 本书是按照人事部、信息产业部全国计算机技术与软件专业技术资格(水平)考试要求编写,内容紧扣《嵌入式系统设计考试大钢》。全书共六章,分别对嵌入式系统基础知识、嵌入式微处理器与接口设计、嵌入式软件与操作系统、嵌入式软件程序设计、嵌入式系统设计与维护等知识进行了详细的讲解。最后介绍了一个典型的嵌入式系统设计案例。 本书内容丰富,结构合理,概念清晰。既可作为全国计算机技术与软件专业技术资格(水平)考试中嵌入式系统设计师级别的考试用书,供有关考生学习使用,也可作为本科生嵌入式系统相关课程教材或培训书使用。
上传时间: 2013-10-29
上传用户:dongqiangqiang
很多使用CAD的朋友因为找不到自己需要的字体而烦恼,网上各种可供下载的CAD字库也不少。之前我也将我收集的600多种字体上传到百度网盘了,最近又下载了一个1000多种字体的字体库。 不过发现一个问题:字体名可以随便改,同一字体也可能有好多不同的版本。从下载的字体库中就可以看到txt1\2\3\....等多种字体,这些字体到底有什么区别。hztxt.shx是国内使用很广泛的一种字体文件,但这个文件我就见过多个版本,每个版本文件大小不同,字符显示效果也不完全相同。因此要找到自己需要的字体说容易,也不容易,最保险的方法就是找到绘图者使用的原始字体,到网上下载各种字库都不是很保险。 不过我用过一个SHX字体查看工具,可以直接看到字体文件中的字符,给大家共享一下,但愿能给大家一些帮助。 利用SHX查看器,点“打开”按钮,可以直接打开SHX文件,看到字体文件中包含的字符及字体效果,如下图所示: 使用这个工具有下面三个用处: 1、在找到一个字体后,可以先用这个工具检查一下,是否是自己所需要的字体,不要找到字体就盲目地复制到CAD的字体目录下。 2、分别打开txt.shx、hztxt.shx、ltypeshp.shx这几个形文件,可以了解一下字体、大字体和符号形文件里到底里面放了写什么东西。 3、如果你想更深入了解字体,你可以将SHX在保存为字体源文件*.shp,这是一个纯文本文件,你可以了解形文件的定义形式,如果你有兴趣的话,甚至可以根据一些教程的指导自己来定义或修改字体文件。 cad字体查看工具SHX查看器注册码 Name: (Anything) s/n: sv89356241 Code: LLJL6Y2L
上传时间: 2015-01-01
上传用户:Togetherheronce
数字地模拟地的布线规则,如何降低数字信号和模拟信号间的相互干扰呢?在设计之前必须了解电磁兼容(EMC)的两个基本原则:第一个原则是尽可能减小电流环路的面积;第二个原则是系统只采用一个参考面。相反,如果系统存在两个参考面,就可能形成一个偶极天线(注:小型偶极天线的辐射大小与线的长度、流过的电流大小以及频率成正比);而如果信号不能通过尽可能小的环路返回,就可能形成一个大的环状天线(注:小型环状天线的辐射大小与环路面积、流过环路的电流大小以及频率的平方成正比)。在设计中要尽可能避免这两种情况。 有人建议将混合信号电路板上的数字地和模拟地分割开,这样能实现数字地和模拟地之间的隔离。尽管这种方法可行,但是存在很多潜在的问题,在复杂的大型系统中问题尤其突出。最关键的问题是不能跨越分割间隙布线,一旦跨越了分割间隙布线,电磁辐射和信号串扰都会急剧增加。在PCB设计中最常见的问题就是信号线跨越分割地或电源而产生EMI问题。 如图1所示,我们采用上述分割方法,而且信号线跨越了两个地之间的间隙,信号电流的返回路径是什么呢?假定被分割的两个地在某处连接在一起(通常情况下是在某个位置单点连接),在这种情况下,地电流将会形成一个大的环路。流经大环路的高频电流会产生辐射和很高的地电感,如果流过大环路的是低电平模拟电流,该电流很容易受到外部信号干扰。最糟糕的是当把分割地在电源处连接在一起时,将形成一个非常大的电流环路。另外,模拟地和数字地通过一个长导线连接在一起会构成偶极天线。
上传时间: 2013-10-19
上传用户:playboys0
128Mb以上的串行闪存被认为是电子产品满足市场需求、增加更多功能的一个主要障碍,针对需要128Mb以上串行闪存的应用要求,美光科技 (Micron Technology)推出一个简单的独一无二的扩容解决方案。这个解决方案可以把存储容量轻松地扩大到4G或更大,完全兼容现有的串行外设接口(SPI)协议,无需重新设计主芯片的硬件。该解决方案优于市场上现有的要求创建一个新的32位寻址模式的解决方案,因为创建新的寻址模式可能强迫设计人员修改软硬件。
上传时间: 2013-12-20
上传用户:569342831
比较详细地列出了各种现行的稳压电源,对于从事模拟开发的工程人员有很大的参考价值
上传时间: 2014-01-25
上传用户:zhangyigenius
石子归并问题:在一个圆形操场的四周摆放着N堆石子(N<= 100),现要将石子有次序地合并成一堆.规定每次只能选取相邻的两堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分.编一程序,由文件读入堆栈数N及每堆栈的石子数(<=20)。 (1)选择一种合并石子的方案,使用权得做N-1次合并,得分的总和最小; (2)选择一种合并石子的方案,使用权得做N-1次合并,得分的总和最大;
上传时间: 2015-04-28
上传用户:84425894