网站首页 行业供求 行业产品 行业公司
行业资讯 行业网站 链接交换 网友收藏
行业资讯 >> 资讯展示:

初学51单片机几个不易掌握的概念

时间:2014-03-04   类别: 网络营销
随着电子技术的迅速发展,计算机已深入地渗透到我们的生活中,许多电子爱好者开始学习单片机

知识,但单片机的内容比较抽象,相对电子爱好者已熟
的模拟电路、数字电路,单片机中有一些新的概念,这些概念非常基本以至于一般作者不屑去谈,

教材自然也不会很深入地讲解这些概念,但这些内容又是
学习中必须要理解的,下面就结合本人的学习、教学经验,对这些最基本概念作一说明,希望对自

学者有所帮助。 
  一、总线:我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连线并不

成为一个问题,因为各器件间一般是串行关系,各器件之间
的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,

各器件之间的工作必须相互协调,所以就需要的连线就很多了
,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线,则线的数量将多得惊人,所以在

微处理机中引入了总线的概念,各个器件共同享用连线,所有
器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来,但仅这样还不行,如果有

两个器件同时送出数据,一个为0,一个为1,那么,接收方
接收到的究竟是什么呢?这种情况是不允许的,所以要通过控制线进行控制,使器件分时工作,任

何时候只能有一个器件发送数据(可以有多个器件同时接收)
。器件的数据线也就被称为数据总线,器件所有的控制线被称为控制总线。在单片机内部或者外部

存储器及其它器件中有存储单元,这些存储单元要被分配地址,才能使用,分配地址当然也是以电

信号的形式给出的,由于存储单元比较多,所以,用于地址分配的线也较多,这些线被称为地址总

线。

  二、数据、地址、指令:之所以将这三者放在一起,是因为这三者的本质都是一样的──数字

,或者说都是一串‘0’和‘1’ 组成的序列。换言之,地址
、指令也都是数据。指令:由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有

着严格的一一对应关系,不可以由单片机的***更改。
地址:是寻找单片机内部、外部的存储单元、输入输出口的依据,内部单元的地址值已由芯片设计

者规定好,不可更改,外部的单元可以由单片机***自行
决定,但有一些地址单元是一定要有的(详见程序的执行过程)。数据:这是由微处理机处理的对

象,在各种不同的应用电路中各不相同,一般而言,被处理
的数据可能有这么几种情况:
1·地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。
2·方式字或控制字(如MOV TMOD,#3),3即是控制字。
3·常数(如MOV TH0,#10H)10H即定时常数。
4·实际输出值(如P1口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,要灯全暗,则执行指令

:MOV P1,#00H)这里0FFH和00H都是实际输出值。又如
用于LED的字形码,也是实际输出的值。
理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把数据当成指令来执行了

  三、P0口、P2口和P3的第二功能用法初学时往往对P0口、P2口和P3口的第二功能用法迷惑不解

,认为第二功能和原功能之间要有一个切换的过程,或者说
要有一条指令,事实上,各端口的第二功能完全是自动的,不需要用指令来转换。如P3.6、P3.7分

别是WR、RD信号,当微片理机外接RAM或有外部I/O口时,
它们被用作第二功能,不能作为通用I/O口使用,只要一微处理机一执行到MOVX指令,就会有相应

的信号从P3.6或P3.7送出,不需要事先用指令说明。事实上
‘不能作为通用I/O口使用’也并不是‘不能’而是(使用者)‘不会’将其作为通用I/O口使用。

你完全可以在指令中按排一条SETB P3.7的指令,并且当
单片机执行到这条指令时,也会使P3.7变为高电平,但使用者不会这么去做,因为这通常这会导致

系统的崩溃(即死机)。
  四、程序的执行过程单片机在通电复位后8051内的程序计数器(PC)中的值为‘0000’,所以

程序总是从‘0000’单元开始执行,也就是说:在系统的
ROM中一定要存在‘0000’这个单元,并且在‘0000’单元中存放的一定是一条指令。
  五、堆栈堆栈是一个区域,是用来存放数据的,这个区域本身没有任何特殊之处,就是内部

RAM的一部份,特殊的是它存放和取用数据的方式,即所谓的
‘先进后出,后进先出’,并且堆栈有特殊的数据传输指令,即‘PUSH’和‘POP’,有一个特殊

的专为其服务的单元,即堆栈指针SP,每当执一次PUSH指令时
,SP就(在原来值的基础上)自动加1,每当执行一次POP指令,SP就(在原来值的基础上)自动减

1。由于SP中的值可以用指令加以改变,所以只要在程序开始
阶段更改了SP的值,就可以把堆栈设置在规定的内存单元中,如在程序开始时,用一条MOV SP,

#5FH指令,就时把堆栈设置在从内存单元60H开始的单元中。
一般程序的开头总有这么一条设置堆栈指针的指令,因为开机时,SP的初始值为07H,这样就使堆

栈从08H单元开始往后,而08H到1FH这个区域正是8031的
第二、三、四工作寄存器区,经常要被使用,这会造成数据的浑乱。不同作者编写程序时,初始化

堆栈指令也不完全相同,这是作者的习惯问题。当设置好堆
栈区后,并不意味着该区域成为一种专用内存,它还是可以象普通内存区域一样使用,只是一般情

况下编程者不会把它当成普通内存用了。
  六、单片机的开发过程这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设

已设计并制作好硬件,下面就是编写软件的工作。在编写软件
之前,首先要确定一些常数、地址,事实上这些常数、地址在设计阶段已被直接或间接地确定下来

了。如当某器件的连线设计好后,其地址也就被确定了,
当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编缉器(如EDIT、CCED等)编写

软件,编写好后,用编译器对源程序文件编译,查错,直到
没有语法错误,除了极简单的程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。

运行正确后,就可以写片(将程序固化在EPROM中)。在
源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够识别这种格式的文件,只要将

此文件调入即可写片。在此,为使大家对整个过程有个认识,
举一例说明:
ORG 0000H
LJMP START
ORG 040H
START:
MOV SP,#5FH ;设堆栈
LOOP:
NOP
LJMP LOOP ;循环
END ;结束
表1
:03000000020040BB
:0700400075815F000200431F
表2
02 00 40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 

FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 75 81 5F 00 02 00 

43

表3

表1为源程序,表2是汇编后得到的HEX文件,表3是由HEX文件转换成的目标文件,也就是最终写入

EPROM的文件,它由编程器转换得到,也可以由HEXBIN一类
的程序转换得到。学过手工汇编者应当不难找出表3与表1的一一对应关系,值得注意的是从02 00 

40后开始的一长串‘FF’,直到75 81,这是由于伪指令:ORG 040H造成的结果。

  七、仿真、仿真机仿真是单片机开发过程中非常重要的一个环节,除了一些极简单的任务,一

般产品开发过程中都要进行仿真,仿真的主要目的是进行
软件调试,当然借助仿真机,也能进行一些硬件排错。一块单片机应用电路板包括单片机部份及为

达到使用目的而设计的应用电路,仿真就是利用仿真机来
代替应用电路板(称目标机)的单片机部份,对应用电路部份进行测试、调试。仿真有CPU仿真和

ROM仿真两种,所谓CPU仿真是指用仿真机代替目标机的CPU,
由仿真机向目标机的应用电路部份提供各种信号、数据,进行调试的方法。这种仿真可以通过单步

运行、连续运行等多种方法来运行程序,并能观察到单片机
内部的变化,便于改正程序中的错误。所谓ROM仿真,就是用仿真机代替目标机的ROM,目标机的

CPU工作时,从仿真机中读取程序,并执行。这种仿真其实就是
将仿真机当成一片EPROM,只是省去了擦片、写片的麻烦,并没有多少调试手段可言。通常这是二

种不同类型的仿真机,也就是说,一台仿真机不能既做CPU仿真
,又做ROM仿真。可能的情况下,当然以CPU仿真好。

学习单片机看到的一篇文章供大家初学者分享。

 ★这里是【深圳信盈达嵌入式实训学院】,单片机培训、嵌入式ARM培训、linux培训、PCB培训、

FPGA培训,汇编C语言培训、Android培训、数电模电培训
、cortex-m3培训!
技术咨询:杨老师13724236349   QQ:1075349026



资讯来源:深圳信盈达嵌入式实训学院  
友情提示:
    信息由用户自行发布,采用请谨慎,我们鼓励您当面交易。如有不符合法规或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们。名站在线只为传递信息,我们不做任何双方证明,也不承担任何法律责任。 信息转载,请标明来源于www.fwol.cn ,谢谢。

其它相似链接:
北京安装净水系统,信赖中汇舒适家,售后有
1.北京京中汇技贸有限公司坐落于北京市、市辖区、朝阳区、北京市朝阳区石槽南路,是一家集研发、设计、生产、代工、销售于一体的企业,主要有北京安装净水系统、北京净水器、新风厂家等产品。致力于数码、家具、家居百货、母婴用品、家电行业优质品牌。 2.北京京中汇技贸有限公司长期专注于品质好的北京家用净水系统行业综合能力的提高。主要产品有3m净水器、3m净水器、3m净水器、3m净水器等。产品广泛应用于品质有保证的3m净水器...

R900337932现货
R900337932 联系人郑金华电话15306977484微信同号/0591-83855060 QQ2851617304 福建鸿飞达自动化科技有限公司是一家专业从事分销进口欧美知名品牌工业传感器、机器人备件、编码器、伺服驱动、流量计、变送器、分析仪、等进出口贸易型企业。 我司主要涉及数控机械、冶金、石油天然气、石油化工、化工、造纸印刷、纺织印染、机械、电子制造、汽车制造、包装、印刷、机械、烟草、塑胶机械、电力、水利、水处理/环保、市政工程、锅炉、...

湖南张家界路面裂缝灌缝胶冷施工不要太简单
刚性的水泥混凝土道路或是柔性的沥青路面,出现反射性,横向,纵向的裂缝都是路面常见的病害,一般这种裂缝不会很大,对于行车感受和行车安全性影响不是很明显,但是却对道路基层结构的破坏力非常大,所以一旦发现还是要及早修补进行防范。湖南张家界路面裂缝灌缝胶冷施工不要太简单,轻松处理各类路面以及各式病害裂缝切割缝等,给道路提供长久的密封防水功能,延长道路养护周期。 湖南张家界路面裂缝灌缝胶是单组份的冷灌缝胶,...

R900413064现货
R900413064 联系人郑金华电话15306977484微信同号/0591-83855060 QQ2851617304 福建鸿飞达自动化科技有限公司是一家专业从事分销进口欧美知名品牌工业传感器、机器人备件、编码器、伺服驱动、流量计、变送器、分析仪、等进出口贸易型企业。 我司主要涉及数控机械、冶金、石油天然气、石油化工、化工、造纸印刷、纺织印染、机械、电子制造、汽车制造、包装、印刷、机械、烟草、塑胶机械、电力、水利、水处理/环保、市政工程、锅炉、...

4 WEH 10 E2X/6AG24NETS2Z4/B08现货
4WEH10E2X/6AG24NETS2Z4/B08 联系人郑金华电话15306977484微信同号/0591-83855060 QQ2851617304 福建鸿飞达自动化科技有限公司是一家专业从事分销进口欧美知名品牌工业传感器、机器人备件、编码器、伺服驱动、流量计、变送器、分析仪、等进出口贸易型企业。 我司主要涉及数控机械、冶金、石油天然气、石油化工、化工、造纸印刷、纺织印染、机械、电子制造、汽车制造、包装、印刷、机械、烟草、塑胶机械、电力、水利、水处理/环保、...


相关评论:
(欢迎网友发表评论,请注意网络文明)
(不支持 HTML 显示,请勿发HTML代码)
(评论需审核后才能显示)

本站推荐:
简单学习网
天津家博会
一直被模仿,从未被超越的
西安密胺餐具,西安密胺碗
中山LED洗墙灯|中山L
C# Backgroun
8301400000hs
百度翻译在线翻译_百度知
崛鑫供应GWJ-6型光干
值得您信赖的匈牙利投资移
山东耐用的抓木机|抓木机
湖北单机收尘器河北单机除
春兰加氟╬维修┇保养武
ABS SFA34德国巴
青岛到天津物流公司 15
重庆工地监控系统
上海欧镜精密机械有限公司
济南联浩机械设备有限公司
西安中盛节能科技有限公司
ZGG80-38531A
重庆天安数码城怎样让你的
3HAC021914-0
松涛仿真树新工艺为何这么
石景山五里坨抽化粪池清洗
干洗加盟连锁店员工要讲究
开干洗店投资需要多少的成

电脑版

Copyright 2005-2024 名站在线[fwol.cn]版权所有
经营许可证:粤ICP备17047754号