judy的博客

C51单片机是怎么存储程序和数据的

初学51总是会有这样的疑问,从电脑下载程序到开发板后,程序去哪了? C51中,用户或应用程序,系统程序和数据都是存放在哪的?

51单片机从物理结构上,可分为片内,片外程序存储器,片内片外数据存储器。

51单片机从功能上,有程序存储器,片内数据存储器,特殊功能寄存器,位地址空间,片外数据存储器。

程序存储器

51单片机的程序存储器用于存储代码和一些固定表格常数。

可寻址的程序存储器空间为64KB。

51单片机的从物理角度上可分为:片内,片外程序存储器,作为编址空间,编址规律是:先片内,后片外,片内片外连续,不重叠。

如图:为51单片机程序存储器编址图。

C51单片机是怎么存储程序和数据的

单片机如何执行指令?

51单片机模拟串口的方法的总结

随着单片机的使用日益频繁,用其作前置机进行采集和通信也常见于各种应用,一般是利用前置机采集各种终端数据后进行处理、存储,再主动或被动上报给管理站。这种情况下下,采集会需要一个串口,上报又需要另一个串口,这就要求单片机具有双串口的功能,但我们知道一般的51系列只提供一个串口,那么另一个串口只能靠程序模拟。

单片机小白学步(8) 用面包板搭建实验电路

前面介绍了几种准备实验板的方案。这里先介绍方案一,我将同大家一起搭建一块简易的单片机实验板,一起感受动手实践的乐趣。

我们有两种自己搭建实验板的方案,一是用面包板,二是用万用焊板。本篇我们介绍面包板搭建电路。

面包板和面包板线

面包板是一种用于电路实验的器材,上面有很多孔,我们可以将元器件和导线插进去,组成我们需要的电路。如果发现电路有错,拔下元件和导线重新插接即可。电路做完后,所有元件还可以拔下来再次使用。

面包板搭建电路简单易行,节省时间和材料。但是缺点在于,面包板只能搭建一些比较简单的电路,而且是对电气连接要求不高的电路。如果电路太复杂,面包板上全是各种导线,出现某些导线或元件松动的情况,不容易找到;如果有些电路对电气连接要求比较高,比如要通过很大电流,微弱信号处理,高频电路等,由于元件是简单的插进去的,与面包板之间的电阻值较大等原因,效果就不理想了。

下图展示了面包板线和一种常用的面包板。面包板线可以用粗细合适的普通硬导线,也可以使用图中所示的专用线,会更方便。

图中的面包板,外侧标有红线和蓝线的整个竖排是分别连在一起的,一般用于接电源。中间每一横排五个孔分别连在一起的,用于插接各种元件。

单片机开发者的常疏忽的几个问题

我的工作主要是主导新产品试产,在实际的工作中,经常出现因为RD人员的设计“疏忽”导致试产失败。这个疏忽要加上引号,是因为这并不是真正的粗心造成的,而是对生产工艺的不熟悉而导致的。为了避免各位做RD的朋友出现同样的错误,或为了更好的完成试产我对一些常见的问题点做一些总结,希望能对大家有所帮助。

1、IC封装的选择。现在电子产品都在向环保的无铅发展,欧洲2006年7月1日就要实现全部无铅化,,现在正处于有铅向无铅的过渡期。因此,元器件厂商提供的元器件也出现无铅与有铅两种规格,有的厂商甚至已经停止了有铅元器件的生产。

问题点就在于这有铅和无铅两种元器件的选择上,当一个产品设计完成后,RD人员需要对具体元器件进行确认,请在确认前要做出该产品采用无铅工艺还是有铅工艺的选择。如果没有一个具体的确定,在选料时不注意这个问题,原料中出现有铅元件与无铅元件同时使用,就会导致SMT工艺的困难。

无铅元件的回流峰值温度在255度,有铅元件的回流峰值温度最高不超过235度,如果混用两种材料,那么必然会导致1、有铅元件被高温损坏。

单片机小白学步(7) 准备实验板——萝卜青菜,各有所爱

单片机的学习,最重要的一点就是多实践。站在岸上学不会游泳。没有实践,恐怕永远也学不好单片机。我将和大家一起,选择一款适合自己的单片机实验板。

方案选择

我们主要有三个可选方案:

1、自己动手搭建学习板;

2、购买成品开发板;

3、使用Proteus等仿真软件。

方案一非常适合动手能力较强,想锻炼动手能力,时间比较充裕的读者选用。自己动手搭建电路,能让我们对单片机更加了解,充分锻炼了动手能力,对以后需要自己制作东西很有帮助。或许你只是用现成的开发板学完单片机,等到想给好友或者心仪的异性做点东西表达下自己的心意时,才发现不会焊板子,那实在非常尴尬。这种方案的缺点在于:各种零散的元件不是很方便购买,不过如果能在淘宝上找到合适的卖家就好了;只适合一开始搭建比较简单的电路,如果太复杂或者有一些不便于焊接的器件,就很麻烦了;比较耗费时间,容易出现一些疑难问题,并且很难解决,不过解决问题的过程中能加深对单片机的了解。

通俗讲解单片机、ARM、MCU、DSP、FPGA、嵌入式错综复杂的关系!

首先,“嵌入式”这是个概念,准确的定义没有,各个书上都有各自的定义。但是主要思想是一样的,就是相比较PC机这种通用系统来说,嵌入式系统是个专用系统,结构精简,在硬件和软件上都只保留需要的部分,而将不需要的部分裁去。所以嵌入式系统一般都具有便携、低功耗、性能单一等特性。

然后,MCU、DSP、FPGA这些都属于嵌入式系统的范畴,是为了实现某一目的而使用的工具。

MCU俗称”单片机“经过这么多年的发展,早已不单单只有普林斯顿结构的51了,性能也已得到了很大的提升。因为MCU必须顺序执行程序,所以适于做控制,较多地应用于工业。而ARM本是一家专门设计MCU的公司,由于技术先进加上策略得当,这两年单片机市场份额占有率巨大。ARM的单片机有很多种类,从低端M0(小家电)到高端A8、A9(手机、平板电脑)都很吃香,所以也不是ARM的单片机一定要上系统,关键看应用场合。

DSP叫做数字信号处理器,它的结构与MCU不同,加快了运算速度,突出了运算能力。可以把它看成一个超级快的MCU。低端的DSP,如C2000系列,主要是用在电机控制上,不过TI公司好像称其为DSC(数字信号控制器)一个介于MCU和DSP之间的东西。高端的DSP,如C5000/C6000系列,一般都是做视频图像处理和通信设备这些需要大量运算的地方。

单片机小白学步(6) 单片机最小系统——麻雀虽小,五脏俱全

前面介绍了集成电路的管脚编号识别,这里我们简单了解下51单片机的40个管脚具体的作用。对于没有接触过复杂电子元器件的读者来说,或许会感觉非常难,但实际上完全不需要有畏惧心理。

单片机管脚

单片机小白学步(6) 单片机最小系统

按照集成电路的管脚识别方法,缺口朝上,逆时针转一圈,单片机的引脚编号从1到40,如图所示。图中同时给出了各个管脚的名称。我们完全不需要刻意去记这些管脚顺序和名称,在需要的时候查一下就好了,如果用的比较多,后来自然就记住了。

编写单片机应用程序的步骤

1、搞清楚功能、编制方案。

接到一个单片机项目设计文件之后,并不是马上动手编写程序,而是仔细研究用户提出的技术要求或者技术说明,根据这些技术要求和技术说明,也就是客户要求,把程序应该具备的主要功能写清楚,写仔细,这是最关键的工作。如不清楚,应向客户和使用者问清楚,否则在设计完成以后会发现有些功能由于事先没有考虑清楚再重新设计将会很麻烦,可能有些需要重新增加的功能很容易补充,而有些可能由于没有事先考虑周全而无法实现。

2、编制总流程图和各功能模块的流程图

根据要完成的程序功能写出总流程图,根据总流程图把整个程序划分成几个主要的功能模块,每个功能模块都要写出基本流程图,这主要是为以后的程序编写起到一个指导作用。当然,在实际的程序编写过程中肯定会有一些改动,1个基本的流程会指导您在写程序的过程中不会出现太大的偏差。例如,编写键盘扫描并且区分是功能键还是数字键的子程序,如果是功能键就转相应的功能处理程序;如果是数字键就在相应的数码管上显示出来;可以写出其流程图。

软件层次的划分。一般分为应用层、功能层、硬件隔离层、硬件驱动层。

3、准备编程资料

单片机小白学步(5) 集成电路、封装相关知识

在前文大家都有见到集成电路的图片,其外形有很多种。在这些芯片中真正起作用的部分是集成在硅片上的晶体管。而我们看到的样子,则是在其外部用外壳进行封装。把硅片上的电路管脚,用导线接引到外部接头处,以便于其它器件连接。封装有安装、固定、密封、保护芯片及增强电热性等作用。硅片必须与外界隔离,以防止空气中的杂质对电路的腐蚀等造成电气性能下降。

单片机开发的7个规则

【规则1】设计满足要求的最精简的系统。

正确估计单片机的能力,知道单片机能做什么,最大程度的挖掘单片机的潜力对一个单片机系统设计者来说是至关重要的。我们应该有这样一个认识,即单片机的处理能力是非常强大的。

早期的PC机,其CPU(8086)处理能力和8051相当,却能处理相当复杂的任务。单片机的能力的关键就在软件设计者编写的软件上。只有充分地了解到单片机的能力,才不会做出“冗余”的系统设计。而采用许多的外围芯片来实现单片机能实现的功能。这样做,即增加了系统成本,也可能会降低了系统的可靠性。

【规则2】使用看门狗。

看门狗电路通常是一块在有规律的时间间隔中进行更新的硬件。更新一般由单片机来完成,如果在一定间隔内没能更新看门狗,那看门狗将产生复位信号,重新复位单片机。更新看门狗的具体形式多是给看门狗芯片相关引脚提供一个电平上升沿或读写它的某个寄存器。使用看门狗电路将在单片机发生故障进行死机状态时,重新复位单片机。