PIC 单片机基础教程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PIC 单片机基础教程
第一章PIC 系列单片机结构原理目前在全世界,利用单片机设计的嵌入式系统带来的工业年产值已超过几万亿美元。在美国,但是使用嵌入式电脑的全数字电视产品预计每年将产生超过1500亿美元的于世界市场,我国的占有率好不到1 % 。这说明单片机应用早我国才刚刚起步,有着广阔的前景。因此,培养单片机应用人才,特别是在大学和中等专业学校相关专业中普及单片机知识,有着重要现实意义。
1.1单片机概述
微型计算机是一种以电子器件为基础,可以介入输入信息,并能够对各种输入的数字化信息进行算术和逻辑运算,最后产生输出的电子设备。微型计算机机油快速运算能力,又有极强的逻辑判断能力和的容量存储功能,是20世纪人类最卓越的发明之一,而单片微型计算机就是将CPU 、RAM、ROM、定时器/计数器和多种接口都集成到一块集成电路芯片上的尖端武器和日常生活中最广泛使用的计算机。
近年来,单片机得到突飞猛进的发展,已经完全深入到了人们的生活和工作的各个方面。单片机的发展过程和性能的日益完善,实际上是对传统控制技术的一场革命,开创了为控制技术的新天地,现代控制系统的核心内涵就是嵌入式计算机应用系统(MCU),而单片机就是最典型、最广泛和最普及的嵌入式计算机应用系统。可以毫不夸张地说,在现代化的设备中,单片机无处不在,如电信、家用电器、工业控制、仪器仪表、汽车和玩具等;单片机也比比皆是,如自动调台收音机、VCD、遥控空调、微波炉、智能玩具、人体秤和心电监护仪等。随着科技的发展,单片机必将在更多的方面发挥作用。
目前,全世界各大公司的单片机品种已经形成多个系列,同一系列的单片机在软件和硬件方面有很大的相同之处。例如,PIC16F87X系列单片机有着相同的内核、相同和兼容的指令系统。
各种单片机在其内部所处理的对象都是用二进制数表示的信息,因此在学习单片机原理之前,首先要了解二进制数和二进制编码。
1、1、1 二进制数和编码
1 计算机中的二进制
数字的表示,有二进制、十进制和十六进制等。而各种数据在计算机内部都是以二进制编码形式来表示的。这些数据由1和0组成,按“逢二进一”的进位计数方式进行计数。不同的数码在不同的数位上的值不相同的,例如:二进制的0001代表1, 0010代表2 , 0100代表4, 1000代表8,那么二进制究竟有何优点呢?
二进制的优点:
简单、可行
由于二进制只有0和1两个数字,用计算机内部的电子元件开关状态来表示,不仅容易实现,而且稳定、可靠.。以我们的习惯使用的十进制为例,十进制有0,1,2,3,4,5,6,7,8,9,共10个数字,对应10种状态,用开关的状态来区分很困难;而二进制的0和1对应的电器开关的开或关,却十分方便。
运算规则简单
二进制的运算规则非常简单,主要发则有:
0+0=0 1+0=1 0+1=1 1+1=10
0×0=0 1×0=0 0×1=0 1×1=1
适合逻辑运算
二进制的两个只用于表示逻辑的“真”于“假”,比较方便。
(1)二进制转换成十进制
在讲解之前,我们先将一个十进制写成
(123)10=1×102+2×101+3×100
一个十进制数是以10的位权关系来转化的;同理,一个二进制数是以2的位权关系来转化的。下面看一道例题。
【例1—1】二进制数(1010)2=1×23+0×22+1×21+0×20=8+0+2+0=﹙10﹚10
(2)十进制转化成二进制
通常,我们采取除以2取余数地方法。
【例1—2】将十进制数(26)10转化成二进制。
解:
2 26 ……余0 (最低位)
2 1
3 ……余1 取
值
2 6 ……余0 顺
序
2 3 ……余1
2 1 ……余1 (最高位)
因此,
(26)=(1 1010)2
(3)十六进制
计算机程序出了使用二进制表示数字之外、也经常用到十六进制。在这种进制中,逢16进1,16个数字字符表示为0~9、A、B\、C、D、E和F,字母A、B、C、D、E、和F表示10~15.
例如,十六进制的E 是十进制的14,二十六进制的2A 是十进制的42(2×16+10)。十六进制数字使用前缀“0x”,如十六进制的2A或2AH。
(4)二进制转换成十六进制
【例1—3】将二进制数(0110 1110 1101 0101)2转化成十六进制数。
解:按4 位进行分组,每组对应的一个十六进制数:
(0110 1110 1101 0101)2=(6ED5)16
6 E D 5
【例1—4】将十六进制(ABF1)16转化成二进制数。
解:每位十六进制数对应一组4为二进制数:
(A B F 1)16=(1010 1011 1111 0001)2
1010 1011 1111 0001
2 计算机中的字符编码
信息编码是对输入计算机中的各种非数值型数据用二进制编码的方式。常用的编码方式有以下两种:
(1)二—十进制编码
二—十制编码也称为BCD码。这是一种用4为二进制数来表示1为十进制数的编码方式。它貌似二进制,实为十进制。这种编码形式比较便于识别和转换,可以简化人机联系,通常采用与0~9各个数字对应的二进制数作为代码。最常用的方法8421码,即4为二进制数的最高位到最低的一位分别对应表示8/4/2/和1(23,22,21,20)。
[【例1—5】求十进制(7985)10的BCD码。
因为
7 9 8 5
0111 1001 1000 0101
则
(7985)10=(0111 1001 1000 0101)BCD
(2)ASCII码
计算机最常用的字符编码是ASCII码。ASCII码用7位二进制代码来表示,共有128个字符,其中34个为控制符,94个为可见字符。本书中ASVII码附表中只给出了常用的后80个字符(见表8—2),包括10个数字,英文字母大、小写标点符号和运算符号等。ASCII 码的最高位用作奇/偶校验位用来校验代码在传输过程中是否出现错误;ASCII码的两个次高位主要用来表示控制符。
1.1.2单片机工作原理简述
单片微型计算机系数的组成与通用计算机的组成基本相同,都是由硬件系统和软件系统构成。
硬件(Hardware)【ha:dwεə】是构成单片机的所有实体部件。它分为5大功能部件,即运算器、控制器、存储器(Memory)[meməri】、输入(input)设备和输出(output)单片机的硬件结构如图1—1所示。
运算器ALU是指算术逻辑单元,主要完成算术逻辑运算。在单片机里,ALU的主要作用是进行算术运算、逻辑运算、位操作(位置位和复位)、增量减量、左移位、右移位、半字节交换等。