单片机基础培训

上传人:ji****n 文档编号:54405475 上传时间:2018-09-12 格式:PPT 页数:65 大小:1.25MB
返回 下载 相关 举报
单片机基础培训_第1页
第1页 / 共65页
单片机基础培训_第2页
第2页 / 共65页
单片机基础培训_第3页
第3页 / 共65页
单片机基础培训_第4页
第4页 / 共65页
单片机基础培训_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《单片机基础培训》由会员分享,可在线阅读,更多相关《单片机基础培训(65页珍藏版)》请在金锄头文库上搜索。

1、單片機 基礎培訓,Honortone 內部學習資料,目錄,第一章 單片機簡介 第二章 基本結構和工作原理 第三章 開發仿真介面 第四章 單片機指令系統 第五章 單片機程序設計 第六章 定時/計數器 第七章 中斷,第一章 單片機簡介,1.1 什麼是單片機所谓单片机,就是把中央处理器CPU(Central Processing Unit)、存储器(Memory)、定时器、I/0(Input/Output)接口电路等一些计算机的主要功能部件集成在一块集成电路芯片上的微型计算机。虽然单片机只是一个芯片,但从组成和功能上看,它已具有了微型计算机系统的含义。中文“单片机”的称呼由英文名称“Single C

2、hip Microcomputer”直接翻译而来。单片机把微型计算机的各主要部分集成在一块芯片上,大大缩短了系统内信号传送距离,从而提高了系统的可靠性及运行速度。因而在工业测控领域中,单片机系统是最理想的控制系统。所以,单片机是典型的嵌人式系统, 是嵌入式系统低端应用的最佳选择。,1.2 單片機的分類 按生產廠家分:常用的有 SAMSUNG、EMC、HOLTEK、TENX、SONIX 、ATEML、MICROCHIP、MOTOROLA、PHILIPS、WINBOND 等 按價位分可分為:高價位,中價位和低價位機。高價位機一般都會有比較多的副加功能(如ADC、LCD driver、PWM、CCR

3、、COMPARE),I/O口多,性能穩定;中價位機次之;低價位機講究經濟實用,一般都隻有機個I/O口,很少有副加功能。 按ROM的組織形式可分為:Flash、OTP ( one time program )、Mask 。 按MCU的封裝形式可分為:DIP、SOP、QFP、PLCC、BGA 等。 按總線結構可分為:4位機、8位機,16位機,32位機等,1.3 單片機的應用領域1、智能产品:单片机微处理器与传统的机械产品相结合,使传统机械产品结构简化、控制智能化,构成新一代的机电一体化的产品。例如传真打字机采用单片机,可以取代近千个机械器件;缝纫机采用单片机控制,可执行多功能自动操作、自动调速、控

4、制缝纫花样的选择。 2、智能仪表:用单片机微处理器改良原有的测量、控制仪表,能使仪表数宁化、智能化、多功能化、综合化。而测量仪器中的误差修正、线性化等问题也可迎刃而解。,3、测控系统:用单片机微处理器可以设计各种工业控制系统、环境控制系统、数据控制系统,例如温室人工气候控制、水闸自动控制、电镀生产线自动控制、汽轮机电液调节系统等。 4、数控型控制机:在 目前数字控制系统的简易控制机中,采用单片机可提高可靠性,增强其功能、降低成本。例如在两坐标的连续控制系统中,用805l单片机微处理器组成的系统代 替Z-80组台系统,在完成同样功能的条件下,其程序长度可减少50,提高了执行速度。数控型控制机采用

5、单片机后口可能改变其结构模式,例如使控制机与 伺服控制分开,用单片机构成的步进电机控制器可减轻数控型控制机的负担。,第二章 基本結構和 工作原理,2.1單片機內部框圖,一般的MCU内部都會有数术逻辑单元ALU(Arithmetic Logic Unit)、累加器A、寄存器B、程序状态字PSW、程序计数器PC(有时也称为指令指针,即IP,16位)、地址寄存器AR (16位)、数据寄存器DR(8位)、指令寄存器IR(8位)、指令译码器ID、控制器等部件组成。,2、程序计数器PC PC 的作用是用来存放将要执行的指令地址,共16位,可对64K ROM直接寻址,PC低8位经P0口输出,高8位经P2口输

6、出。也就是说,程序执行到什么地方,程序计数器PC就指到哪里,它始终是跟蹿着程序的执行。我 们知道,用户程序是存放在内部的ROM中的,我们要执行程序就要从ROM中一个个字节的读出来,然后到CPU中去执行,那么ROM具体执行到哪一条呢?这 就需要我们的程序计数器PC来指示。 程序计数器PC具有自动加1的功能,即从存储器中读出一个字节的指令码后,PC自动加1(指向下一个存储单元)。,3、指令寄存器IR 指令寄存器的作用就是用来存放即将执行的指令代码。 在这里我们先简单的了解下CPU执行指令的过程,首先由程序存储器(ROM)中读取指令代码送入到指令寄存器,经译码器译码后再由定时与控制电路发出相应的控制

7、信号,从而完成指令的功能。关于指令在单片机内部的执行过程,我们在后面将会以另一节课来进行详细的讲解。 4、指令译码器ID 用于对送入指令寄存器中的指令进行译码,所谓译码就是把指令转变成执行此指令所需要的电信号。当指令送入译码器后,由译码器对该指令进行译码,根据译码器输出的信号,CPU控制电路定时地产生执行该指令所需的各种控制信号,使单片机正确的执行程序所需要的各种操作。,5、地址寄存器AR(16位) AR的作用是用来存放将要寻址的外部存储器单元的地址信息,指令码所在存储单元的地址编码,由程序计数器PC产生,而指令中操作数所在的存储单元地址码,由指令的操作数给定。从上图中我们可以看到,地址寄存器

8、AR通过地址总线AB与外部存储器相连。 6、数据寄存器DR 用于存放写入外部存储器或I/O端口的数据信息。可见,数据寄存器对输出数据具有锁存功能。数据寄存器与外部数据总线DB直接相连。,7、程序状态字PSW 用于记录运算过程中的状态,如是否溢出、进位等。 例如,累加器A的内容83H,执行: ADD A,#8AH ;累加器A与立即数8AH相加,并把结果存放在A中。 指令后,将产生和的结果为10DH,而累加器A只有8位,只能存放低8位,即0DH,元法存放结果中的最高位B8。为些,在CPU内设置一个进位标志位C,当执行加法运算出现进位时,进位标志位C为1。 8、时序部件 由时钟电路和脉冲分配器组成,

9、用于产生微操作控制部件所需的定时脉冲信号在后面的课程中我们将会安排一节课来讲解这些专用的寄存器。,2.3單片機功作原理,馮.诺伊曼思想:把运算程序存在机器的存储器中,程序设计员只需指导机器去存储器中寻找运算指令,机器就会自行计算,这样,就 不必每个问题都重新编程,从而大大加快了运算进程。,哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14

10、位宽度,而数据是8位宽度。哈佛结构的微处理器通常具有较高的执行效率。其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安谋公司的ARM9、ARM10和ARM11,51单片机也属于哈佛结构 冯诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处

11、理器的程序指令和数据都是16位宽。,2.2引腳功能,S3C9228 引腳功能圖,S3C9228引腳功能表,2.3 ROM結構,S3C9228 ROM 結構,EM78P258 ROM 結構,2.4 RAM結構,S3C9228 RAM 結構,第三章 開發仿真介面,仿真、仿真机 仿真是单片机开发过程中非常重要的一个环节,除了一些极简单的任务,一般产品开发过程中都要进行仿真,仿真的主要目的是进行软件调试,当然借助仿真机,也能进行一些硬件排错。一块单片机应用电路板包括单片机部份及为达到使用目的而设计的应用电路,仿真就是利用仿真机来代替应用电路板(称目标机)的单片机部份,对应用电路部份进行测试、调试。所谓

12、仿真是指用仿真机代替目标机的CPU,由仿真机向目标机的应用电路部份提供各种信号、数据,进行调试的方法。这种仿真可以通过单步运行、连续运行等多种方法来运行程序,并能观察到单片机内部的变化,便于改正程序中的错误。,一般不同制造商的MCU需要不同的仿真器,一台仿真器有可能隻能仿真單一型號的MCU,也可能是仿真同一造商的多個不同型號的MCU。一般一台仿真器都需要它特定的仿真軟件來支持,下面就以仿真S3C9228 舉例說明。 S3C9228的仿真器OPENice i500和仿真軟件OPENice SLD v2.9都由韓國三星公司提供。找到安裝軟件進行安裝,安裝完成後啟動其畫面如下圖。,寫好一段程序後,先

13、進行編譯。如果程序有基本語法及標記錯誤在編譯時就會被系統報錯,雙擊錯誤提示信息跟蹤到出錯點更改基本語法及標記錯誤,再編譯更改直到編譯通過。編譯通過後運行程序就可以看到仿真效果,一般稍大一點的程序寫完後不經過調試是難以實現所希望的功能,接下來就是程序的調試。程序的調試主要有以下方法: 1 查看寄存器值 2 單步運行 3 斷點測試 4 測試運行運行時間 5 加入測試程序,第四章 單片機指令系統,第五章 單片機程序設計,5.1程序设计语言这里的语言与我们通常理解的语言是有区别的它指的是为开发单片机而 设计的程序语言如果您没有学过程序设计可能不太明白我给大家简单解释一下您知道微软的VB VC 吗VB

14、VC 就是为某些工程应用而设计的计算机程序语言通俗地讲它是一种设计工具只不过这种工具是用来设计计算机程序的要想设计单片机的程序当然也要有这样一种工具说设计语言更确切些单片机的设计 语言基本上有三类: 5.1.1完全面向机器的机器语言机器语言就是能被单片机直接识别和执行的语言计算机能识别什么以前我们讲过-是数字0或1 所以机器语言就是用一连串的0 或1 来表示的数字比如MOV A 40H 用机器语言来表示就是11100101 0100000 很显然用机器语言来编写单片机的程序不太方便也不好记忆我们必须想办法用更好的语言来编写单片机的程序于是就有了专门为单片机开发而设计的语言,5.1.2 汇编语言

15、汇编语言也叫符号化语言它使用助记符来代替二进制的0 和1 比如刚才的MOV A40H 就是汇编语言指令显然用汇编语言写成的程序比机器语言好学也好记所以单片机的指令普遍采用汇编指令来编写用汇编语言写成的程序我们就叫它源程序或源代码可是计算机不能识别和执行用汇编语言写成的程序啊怎么办当然有办法我们可以通过翻译把源代码译成机器语言这个过程就叫做汇编,汇编工作现在都是由计算机借助汇编程序自动完成的不过在很早以前它是靠手工来做的值得注意的是:汇编语言也是面向机器的,它仍是一种低级语言每一类计算机都有它自己的汇编语言比如51 系列有它的汇编语言;PIC 系列也有它的汇编语言微机也有它自己的汇编语言它们的指

16、令系统是各不相同的也就是说不同的单片机有不同的指令系统它们之间是不通用的,这就是为什么世界上有很多单片机类型的缘故了,为了解决这个问题人们想了很多的办法设计了许多的高级计算机语言而现在最适合单片机编程的要数C 语言.,5.1.3C 语言高级单片机语言C 语言是一种通用的计算机程序设计语言,它既可以用来编写通用计算机的系统程序也可以用来编写一般的应用程序,由于它具有直接操作计算机硬件的功能所以非常适合用来编写单片机的程序与其他的计算机高级程序设计语言相比它具有以下的特点:1 .语言规模小使用简单:在现有的计算机设计程序中C 语言的规模是最小的ANSIC 标准的C 语言一共只有32 个关键字9 种

17、控制语句然而它的书写形式却比较灵活表达方式简洁使用简单的方法就可以构造出相当复杂的数据类型和程序结构2 .可以直接操作计算机硬件: C 语言能够直接访问单片机的物理空间地址KEIL C51 软件中的C51 编译器更具有直接操作51单片机内部存储器和I/O 口的能力亦可直接访问片内或片外存储器还可以进行各种位操作3 .表达能力强表达方式灵活:C 语言有丰富的数据结构类型可以采用:整型实型字符型数组类型指针类型结构类型联合类型枚举类型等多种数据类型来实现各种复杂数据结构的运算,利用C 语言提供的多种运算符我们可以组成各种表达式还可以采用多种方法来获得表达式的值从而使程序设计具有更大的灵活性,所以单片机入门后尽量学习C言。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号