单片机原理与C基础赵丽清单片机基础介绍_第1页
单片机原理与C基础赵丽清单片机基础介绍_第2页
单片机原理与C基础赵丽清单片机基础介绍_第3页
单片机原理与C基础赵丽清单片机基础介绍_第4页
单片机原理与C基础赵丽清单片机基础介绍_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章绪论第1章目录1.1单片机

1.1.1掌握单片机的概念

1.1.2了解单片机的发展历史及产品近况

1.1.3熟悉嵌入式处理器家族

1.1.4明确单片机的课程地位及其学习方法1.2单片机开发所需软硬件介绍

6.2.1模式0 6.2.2模式1 6.2.3模式2 6.2.4模式31.3数字电路基础

1.4数制与编码的简单回顾

6.3.2定时/计数器模式1的应用

6.3.3定时/计数器模式2的应用

6.3.4定时/计数器门控位GATE的应用

6.3.5运行中读定时/计数器1.1单片机1.1.1单片机的概念1、单片机“单片机”的称呼由英文名称“SingleChipMicrocomputer”直接翻译而来,缩写为SCM。所谓单片机就是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM(内存)、只读存储器ROM(硬盘)、I/O口、中断系统、定时/计数器和串行接口等功能集成到一块芯片上构成的一个小而完善的计算机系统。单片机是一个芯片级的电脑。1.1单片机1.1.1单片机的概念1、单片机目前单片机业界主流产品之一,深圳宏晶公司出品的STC89系列单片机的芯片照片,(a)双列直插DIP封装(b)贴片式封装1.1单片机1.1.1单片机的概念2、单片机的应用领域单片机的应用领域十分广泛,如智能仪表(各类检测仪表、数字电压表、数字示波器)、家用电器(洗衣机、空调等)、军事装置(夜视仪、导航仪)、实时工业控制(电镀生产线、工业机器人)。单片机在系统中主要起到测量和控制的作用。各种机械装置一旦用上了单片机,就能使得产品升级换代,并会将其名称冠以“微电脑控制”、“智能型”标志。1.1单片机1.1.1单片机的概念2、单片机的应用领域单片机在仪表、家电、火箭领域的应用图片。其中最左侧的仪表是由本书主编指导本科学生自主研发的水体化合物分析仪器,其能够实现在线检测水体中氨氮及亚硝氮等化合物的含量。是单片机和分析化学原理相结合的跨学科成果。1.1单片机1.1.1单片机的概念2、单片机与计算机(PC)的区别从本质上讲,单片机和计算机属于同祖同宗,单片机追求的是满足特定功能的基础上,体积要足够小,终极目标是将尽量多的外设集成到芯片内部;而计算机则追求的主要是高速运算、海量存储,对体积没有显著要求。

单片机与普通微型计算机的不同之处在于其将CPU、ROM和RAM三部分,通过内部总线连接在一起,集成于一块芯片上。1.1单片机1.1.2单片机的发展历史及产品近况1、51系列单片机的诞生第一阶段(1974-1976)单板机的产生:单板机是单片机的前身。风靡我国上世纪80年代,由北京工业大学研发、生产的TP801单板机就是以Z80为内核设计的。有代表性的还有美国Fairchild(仙童)公司的F8系列。第二阶段(1976-1978)单片机的低性能阶段:最早的单片机是由美国INTEL(英特尔)公司1976年推出的MCS-48系列,其早已经退出历史舞台。1.1单片机1.1.2单片机的发展历史及产品近况1、51系列单片机的诞生第三阶段(1978-1983)单片机的基本发展阶段:这一时期INTEL公司的8031单片机因为简单可靠、性能良好获得了很大的好评。此后INTEL公司发展出了MCS-51系列单片机系统,“MCS”代表了INTEL公司的产品。 其中基本型产品是8031/8051/8751(对应的低功耗是80C31/80C51/87C51)和增强型的8032/8052/8752单片机。MCS-51系列单片机的产品典范是8051单片机。INTEL公司以专利转让或技术交换的形式把8051的内核技术转让给了世界许多半导体芯片厂家,如ATMEL、Philips(飞利浦)、LG、ADI。这些厂家生产的兼容机与8051的内核结构与指令系统相同,并在此基础上不断完善其性能,形成了后来称作“8051系列单片机”的庞大体系1.1单片机1.1.2单片机的发展历史及产品近况2、51系列单片机的发展从1983年至今,8位51系列单片机不断自我发展、长盛不衰。这时8位单片机追求更低的功耗,从而8051系列中的大部分产品已经发展成为80C51,其字符“C“表示了单片机内部集成电路工艺的CMOS化,其功耗更低。更多的外围电路被装入单片机内部,“单片化”设计思想被更大、更广的应用于单片机芯片设计中。在我国市场上曾经风靡的机型有台湾华邦(Winbond)公司的W78系列,美国ATMEL(爱特梅尔)公司的AT89C5X系列以及AT89S5X系列单片机。1.1单片机1.1.2单片机的发展历史及产品近况3、AVR、PIC进入8位机主流市场目前8位单片机市场上占有率高的除了采用复杂指令集(CISC)的51系列,还有AVR和PIC(PeripheralInterfaceController)系列单片机。其中AVR单片机是1997年美国Atmel公司挪威设计中心的A先生与V先生共同研发出的,所以就简称AVR,其第三个字母R代表了该芯片CPU的精简指令(RISC)结构。PIC单片机是美国Microchip(微芯)公司的产品,PIC单片机CPU亦属精简指令结构,分别有33、35、58条指令。其种类多,芯片抗干扰能力强,也是可以和51系列单片机抗衡的单片机。其他如Motorola(摩托罗拉)单片机、Scenix(西门子)单片机、EPSON(爱普生)等诸多公司的单片机也在8位单片机市场占有自己的位置。1.1单片机1.1.2单片机的发展历史及产品近况4、16位和32位高档单片机的推出20世纪90年代初,随着工业控制领域要求的提高,各大公司都开始推出16位单片机,但因为性价比不理想并未得到很广泛的应用。但TI(美国德州仪器)公司出品的MSP430系列以其超低功耗的特性在仪器仪表及手持设备领域占有绝对优势。进入21世纪,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场,其中ARM7是典型代表。总之,目前市场以8位低端和32位高端单片机齐头并进的形式存在、发展。8位单片机的性能得到了飞速提高,处理能力比起20世纪80年代提高了数百倍,其主要应用在工业控制领域。32位单片机主频已经超过300MHz,性能直追90年代中期的个人电脑CPU,主要应用在高端智能通信设备领域。1.1单片机1.1.3嵌入式处理器家族4、16位和32位高档单片机的推出具有各种不同体系结构的处理器构成了嵌入式处理器家族,它们是嵌入式系统的核心部件。据不完全统计,全世界嵌入式处理器的品种数已经超过1000种,按其体系结构主要分为如下四类:单片机(嵌入式微控制器);嵌入式数字信号处理器(DigitalSignalProcessor,DSP);嵌入式微处理器(EmbeddedMicroprocessorUnit,EMPU)片上系统(SystemOnChip,SOC)。1.1单片机1.1.3嵌入式处理器家族具有各种不同体系结构的处理器构成了嵌入式处理器家族,它们是嵌入式系统的核心部件。据不完全统计,全世界嵌入式处理器的品种数已经超过1000种,按其体系结构主要分为如下四类:单片机(嵌入式微控制器);嵌入式数字信号处理器(DigitalSignalProcessor,DSP);嵌入式微处理器(EmbeddedMicroprocessorUnit,EMPU)片上系统(SystemOnChip,SOC)。1.1单片机1.1.3嵌入式处理器家族1、嵌入式数字信号处理器(DSP)DSP是非常擅长于高速实现各种数字信号处理运算(如数字滤波FFT,频谱分析等)的嵌入式处理器。1981年,美国TI(TexasInstruments)公司研制出了著名的TMS320系列,首片低成本、高性能的DSP处理器芯片TMS320C10,使DSP从概念走向了产品。1.1单片机1.1.3嵌入式处理器家族2、嵌入式微处理器(EMPU)嵌入式微处理器(EMPU)的基础是通用计算机中的CPU。EMPU嵌入式微处理器是由通用计算机中的CPU演变而来的。与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。但是,嵌入式微处理器在功能方面与标准的微处理器基本上是一样的。嵌入式处理器目前最成功的就是32位ARM系列,其性能已经与几年前的笔记本电脑相当,主要有ARM7、ARM9、ARM11以及最新的ARMCrotex系列。1.1单片机1.1.3嵌入式处理器家族2、嵌入式微处理器(EMPU)以嵌入式微处理器为核心的嵌入式系统能够运行实时多任务系统,因此其在多媒体手机、机顶盒、数字电视等领域都应用广泛。“嵌入式系统”这个名词在业界已经应用很久,但是对其的定义仍然存在很多争论。广义上讲,凡是系统中嵌入了“嵌入式微处理器”,如:单片机、DSP、嵌入式微处理器,都称为“嵌入式系统”。但还是有人仅把“嵌入”嵌入式微处理器的系统称为“嵌入式系统”。目前人们所说的“嵌入式系统”多指后者。1.1单片机1.1.3嵌入式处理器家族3、嵌入式片上系统(SOC)该技术始于20世纪90年代中期,随着半导体工艺和超大规模集成电路(VLSI)设计技术的飞速发展,在一个硅片上可实现一个更为复杂的系统,这就是片上系统(SOC,SystemOnChip)。SOC的核心思想就是把整个应用电子系统(除无法集成的电路)全部集成在一个芯片中,避免了大量的PCB设计及板机的调试工作。SOC将使系统设计的技术发生革命性变化,标志着一个全新时代的到来。SOC是在集成电路(IC)向集成系统(IS)转变的大方向下产生的。在单一集成电路芯片上就可以实现一个复杂的电子系统,诸如手机芯片、数字电视芯片、DVD芯片等。在未来几年内,上亿个晶体管、几千万个逻辑门都可望在单一芯片上实现。1.1单片机1.1.4

单片机的课程地位及其学习方法1、单片机的课程地位单片机是大学自动化类及其相关专业的一门专业课,有些学校甚至把它列为选修课,在众多课程中,没有显出它有多么重要。为什么要学习它呢?自动化类相关专业有很多专业课,这些专业课非常重要,是各个专业存在的必需课程,学完这些课程可以使学习者成为大学者的继承人,但市场对学者继承人的需求太少,大量需要的是产品的研发者,而学习单片机课程就可以成为一个实用的研发工程师。1.1单片机1.1.4

单片机的课程地位及其学习方法1、单片机的课程地位另外,即使是在校期间。如果你单片机实践动手能力强,可以参加国内认知度极高的国家级大学生第二课堂创新赛事。比较有代表性的有“全国大学生电子设计大赛”、“挑战杯全国大学生课外学术科技作品竞赛和创业计划大赛”、“全国大学生智能汽车大赛”等赛事。另外还可以参加各省教育厅举报的各类赛事,如山东省规模最大的大学生赛事是“机电产品大赛”,另山东省“机器人大赛”的发展也方兴未艾。据统计,我国的单片机年容量已达1-3亿片,且每年以大约16%的速度增长,但相对于世界市场我国的占有率还不到1%。这说明单片机应用在我国才刚刚起步,有着广阔的前景。培养单片机应用人才,特别是在工程技术人员中普及单片机知识有着重要的现实意义。1.1单片机1.1.4

单片机的课程地位及其学习方法2、单片机的学习方法51系列单片机是初学者的最佳选择

51系列单片机经过多年的发展,图书、资料丰富,相应的网站多、答疑解惑都比较容易。初学者选择51系列单片机开始,是非常明智的选择。近两年比较典型51单片机芯片是AT89C(S)51和宏晶公司的STC89C51芯片。学好51单片机,再去学习AVR//PIC/MSP430将会触类旁通。也会为ARM、DSP等高级可编程硬件设备的学习打下很好的基础。如果在学会单片机的基础之上,学会CPLD和FPGA的开发以及硬件描述语言,就可以在高速产品的开发方面获得一杯羹。1.1单片机1.1.4

单片机的课程地位及其学习方法2、单片机的学习方法51系列单片机是初学者的最佳选择 一般来说本科生能够熟练除51外的另外一种单片机或熟悉ARM就已经很优秀了,其他留在工作或研究生阶段学习是比较现实的。图1-3嵌入式硬件技术体系图1.1单片机1.1.4

单片机的课程地位及其学习方法2、单片机的学习方法扎实掌握单片机内部结构及原理十分必要

现在有一种观点是只要掌握C语言,只需对具体单片机结构及原理稍作了解,即能开发单片机应用系统。实际上由于单片机的硬件资源极其有限,因此只有真正了解单片机内部的结构、时序和寄存器的特点,才能开发出执行率高、误码率少的代码。当你有一天真正开发项目时就能感到硬件基础扎实的意义。汇编语言的学习可以使学习者更扎实的理解单片机的内部结构和原理。但是一定是边动手编程边学习理论,而不是等到把知识掌握得滚瓜烂熟才开始动手。1.1单片机1.1.4

单片机的课程地位及其学习方法2、单片机的学习方法学习过程应突出主要矛盾,分层次推进

学习过程的第一步应该购买现成的单片机学习板,这样只要代码写错,肯定就是软件的错误,从而不需要去怀疑硬件有问题。学完学习板配套的程序后,就应该用万能板焊接单片机的外围电路,按学习板原理图焊接好电路后,运行你已经编好的程序,出了问题肯定是硬件的事情,这样你算是真正入门了。下面你该需要学习的是怎么处理多任务。因为这个才是工作中真正用到的,包括时间片的概念,状态机的概念,学会这个你已经是个实用的自动化类本科毕业生了。1.1单片机1.1.4

单片机的课程地位及其学习方法2、单片机的学习方法初学必要装备

单片机是一门动手能力要求极高的课程,因此不建议使用PROTEUS等虚拟软件来学习。一定要真正的调试、焊接线路板。现在学习单片机的成本已经是极低了,下面我们列出了初学单片机的必要装备。 首先,一定要有一台个人电脑,无论是台式机还是笔记本都可以,一般的配置对于单片机学习来说足以,如果是笔记本尽量购买带RS232串口的,以后你会感到拥有它还是很方便的。1.1单片机1.1.4

单片机的课程地位及其学习方法2、单片机的学习方法初学必要装备

其次,需要购买一块单片机学习板(开发板),最好带在线调试(仿真)功能,带学习视频更好。初学忌买功能全而复杂的学习板,只买基本功能的板子,其电路简单、容易上手。这样的学习板整套价位在100~200元左右的属合理。学习板套件包括:学习板(开发板)一块、下载线(一般是USB下载线,用来连接计算机和学习板,是程序烧录必备的硬件条件,其还将计算机USB的5V电源提供给学习板)、编程软件(实现程序的编辑、编译、软件仿真功能等。一般卖家提供KeilC51)、下载软件(烧写程序需要使用,在计算机上运行,卖家也免费提供)。图1-4是价格在100元左右的学习板图片。1.1单片机1.1.4

单片机的课程地位及其学习方法2、单片机的学习方法图1-451单片机学习板图片1.1单片机1.1.4

单片机的课程地位及其学习方法2、单片机的学习方法初学必要装备第三,要有一块万用表,买国产四位半的即可,价格在150元左右吧,经济条件有限的买三位半的也可,价格一般在80元以内。有的人说必备项里应该有示波器,如果加上这一条那恐怕90%以上的学生都会放弃尝试,因为即使国产50MHZ的示波器价格也要上千元了。对于入门级学习有这三条是能够基本满足学习需求的。要想进一步学习,通过参加各类大赛进入学校实验室,就能够享有更好的学习环境和硬件设备条件。那么示波器、逻辑分析仪、信号发生器、仿真器、编程器等实验室一般都有配置。1.2单片机开发所需软硬件介绍单片机的开发过程包括硬件电路设计、程序编写(编辑)、编译、仿真调试、烧写(烧录、固化、下载)等过程。程序的编辑是指利用C语言或汇编语言在个人电脑上完成程序的书写过程,一般的文本编辑器例如word及windows自带的文本编辑器都可以提供程序书写环境。但其由于不具备语法错误识别功能,因此开发者一般都选用专用的单片机程序编辑软件。编译是指将编程语言翻译成单片机能够识别的二(十六)进制代码的过程。烧写是指把编译好的二(十六)进制代码下载到单片机程序存储器ROM的过程。仿真调试包括软件仿真和硬件仿真,是指程序不可能一次编写成功,需要借助专业的软、硬件仿真调试工具,利用单步、断点、运行到光标处等功能实现对程序中各变量中间结果的监测。1.2单片机开发所需软硬件介绍1.2.1关于keilC51及其集成开发环境keilμVision3KeilC51是德国Keilsoftware公司开发的用于51系列单片机的C51语言开发软件。具有Windows风格的可视化操作界面(见图1-5);支持汇编语言、C51语言以及两者混合编程等多种方式的单片机设计;能够完成51系列单片机以及和51系列兼容的绝大部分类型单片机的程序设计和仿真。1.2单片机开发所需软硬件介绍1.2.1关于keilC51及其集成开发环境keilμVision3图1-5KeilμVision3集成开发环境界面1.2单片机开发所需软硬件介绍1.2.2仿真技术和仿真器1、仿真技术单片机开发过程中没有中间调试过程,仅使用编程器或ISP下载线的开发方法叫做“崩溃——烧写”模式。其只能从最终结果检验硬件设计和软件编程是否正确。如果程序运行结果错误,只能改动程序后擦除芯片重新烧写,为了调试一个程序连续烧写芯片数十次是很正常的事情,但是这样不但麻烦,还会缩短芯片使用寿命,而且无法观察程序运行中的状态。在单片机开发中一般简单的程序利用KeilμVision3本身具有的软件仿真功能,可以大大减少烧写次数。只要不涉及到外部扩展接口,在KEIL上仿真运行成功的程序,绝大部分烧写以后都能正常运行,对于大型复杂的程序必须使用单片机仿真器完成调试。1.2单片机开发所需软硬件介绍1.2.2仿真技术和仿真器2、仿真器仿真器是指以调试单片机软件为目的而专门设计制作的一套专用的硬件装置。最早的单片机仿真器是一套独立装置,具有专用的键盘和显示器,用于输入程序并显示运行结果。现在仿真器都是利用PC机作为标准的输入输出装置,而仿真器本身成为PC和目标系统之间的接口而已,仿真方式也从最初的机器码发展到汇编语言、C语言仿真,配合仿真器使用的上位机软件与PC机上的高级语言编程与调试环境非常类似。图1-6是伟福仿真器外形图。1.2单片机开发所需软硬件介绍1.2.2仿真技术和仿真器2、仿真器 目前,随着单片机的小型化,贴片化和具有ISP,IAP等功能的单片机的广泛应用,传统单片机仿真器的应用范围也有所缩小。类似KeilC51等具有单片机仿真功能的程序软件在调试中的应用逐渐广泛。1.2单片机开发所需软硬件介绍1.2.2仿真技术和仿真器3、硬件仿真和软件仿真 软件仿真是指在不存在实际的单片机应用系统硬件电路的情况下,我们可以用上位机仿真软件(即能够实现仿真功能的上位机应用软件,如KEIL仿真器)对单片机应用系统的软件部分进行调试。硬件仿真是用硬件仿真器或其他替代方法对一个实际的单片机应用系统的软件和硬件部分进行调试,它能真实地反映实际的单片机应用系统存在的问题。很明显硬件仿真的效果更强大,但不同的硬件仿真器仿真能力各不相同。近年又有仿真芯片推出,即该类芯片除具有一般单片机的功能外,在开发阶段还能够有一定的在线调试功能,但与专业仿真器功能相去甚远。即使不同型号的专业仿真器性能差别也较大。1.2单片机开发所需软硬件介绍1.2.3编程器和下载软件 编程器:程序编辑好后,并且通过编译生成了HEX格式的二进制烧写文件,就要用编程器把它烧写到单片机里面。学习阶段购买的学习板会带一条下载线,其完成的功能与编程器相同。编程器的使用需要配合上位机的下载软件来完成。该软件一般由编程器厂家或学习板出售者免费提供。1.2单片机开发所需软硬件介绍1.2.3编程器和下载软件

图1-7下载(烧写)软件界面1.2单片机开发所需软硬件介绍1.2.3编程器和下载软件

图1-7编程器1.2单片机开发所需软硬件介绍1.2.4PROTEL与单片机学习单片机还需要掌握一种原理图绘图软件,现在常见的是Protel99SE和Protel2004DXP,前者应用的人比较多,而且这部分在公司都比较有地位,资格老嘛,用的软件也老,有时候也要求手下人用99SE,至于2004DXP的用户相对较为年轻,其元件库和封装库里要新一些,但是大多数情况下都需要自己做元件,也就没什么区别了。还有个很严重的问题是二者有点不兼容,大体上说,你如果想和你的上司关系好点,做设计时容易沟通点就学99SE。串口调试助手和字模提取软件等在学习串口通讯和点阵及液晶显示时一般会用到,去网站下载即可,如果你购买了学习板都会赠送你。

1.2单片机开发所需软硬件介绍1.2.5关于PROTEUS软件Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。Proteus是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、PIC、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。

1.2单片机开发所需软硬件介绍1.2.6

字模提取软件与串口调试助手单片机测量或控制的结果一般都需要显示,主要选用LED点阵显示器或LCD液晶显示器。采用LED点阵显示器或LCD液晶显示器时,显示的字符要经过字模提取软件转换成字形码,这个过程由人工通过描点也能完成,但是通过字模软件效率要高得多。 1.2单片机开发所需软硬件介绍1.2.6字模提取软件与串口调试助手

图1-8字模提取软件界面1.2单片机开发所需软硬件介绍1.2.6字模提取软件与串口调试助手

(a)LED点阵显示器

(b)液晶显示器图1-9LED点阵显示器和液晶显示器1.2单片机开发所需软硬件介绍1.2.6字模提取软件与串口调试助手串口调试助手可以实现的功能包括发送接受16进制数、字符串等,在单片机与PC机进行通信时会用到该类型小软件。有众多发烧友开发出各种版本,一般购买单片机学习板时卖方免费提供。(a)LED点阵显示器

(b)液晶显示器图1-10串口调试助手1.3数字电路基础1.3.1二进制的逻辑运算1、“与”运算“与”运算是实现“必须都有,否则就没有”这种逻辑关系的一种运算。逻辑与通常用符号“×”或“∧”或“·”来表示。逻辑乘法运算规则如下:0∧0=0,0∧1=0,1∧0=0,1∧1=1。其运算符号如图1-12所示。1.3数字电路基础1.3.1二进制的逻辑运算2、“或”运算“或”运算是实现“只要其中之一有就有”这种逻辑关系的一种运算。逻辑加法通常用符号“+”或“∨”来表示。逻辑加法运算规则如下:0∨0=0,0∨1=1,1∨0=1,1∨1=1。1.3数字电路基础1.3.1二进制的逻辑运算3、“非”运算“非”运算是实现“求反”这种逻辑关系的一种运算。0的反是1,1的反是0。其运算符号如图1-14所示。1.3数字电路基础1.3.1二进制的逻辑运算4、“同或”运算“同或”运算是实现“必须相同,否则就没有”这种逻辑关系的一种运算,其逻辑运算符为“⊙”。其运算规则如下:0⊙0=1,1⊙0=0,0⊙1=0,1⊙1=1。5、“异或”运算“异或”运算通常用符号"⊕"表示,“必须相异否则就没有”。其运算规则为:0⊕0=0,0⊕1=1,1⊕0=1,1⊕1=0,即两个逻辑变量相异,输出才为1。1.3数字电路基础1.3.2数字电路中“0”与“1”的定义单片机是一种数字集成芯片,数字电路中只有两种电平:高电平和低电平。常用的逻辑电平有TTL、CMOS、RS-232等。单片机、74LS系列逻辑芯片采用TTL电平信号:+5V等价于逻辑1,0V等价于逻辑0。当然这是理想状态,实际电压小于0.4V即认为是低电平,电压高于2.4V即认为是高电平(实际单片机工作在输入和输出状态高低电平范围略有差别)。1.3数字电路基础1.3.2数字电路中“0”与“1”的定义74HC系列和CD4000逻辑芯片一般采用CMOS逻辑电平。CMOS电平VCC达到5V时,其低电平的上线是0.3V,高电平的下限是3.6V。因此CMOS能驱动TTL电平,即CMOS作为TTL的输入端时,TTL电平能正确的识别CMOS的高低电平状态,但反之不可以。CMOS电路中不使用的输入端不不能悬空,否则会造成逻辑混乱,且HC采用COMS工艺功耗更低,LS的速度比HC略快。PC机的9针串口为RS-232C电平,其中高电平为-12V,低电平为+12V。这里要强调的是,RS-232C电平为负逻辑电平。因此当计算机与单片机之间要通信时,需要加电平转换芯片,一般常用的电平转换芯片是MAX232。1.3数字电路基础1.3.2数字电路中“0”与“1”的定义提高:TTL电路和CMOS电路的逻辑电平关系如下:①VOH——逻辑电平1的输出电压。②VOL——逻辑电平0的输出电压。③VIH——逻辑电平1的输入电压。④VIL——逻辑电平0的输入电压图1-15RS-232串口定义1.3数字电路基础1.3.2数字电路中“0”与“1”的定义TTL电平临界值:

①VOHmin=2.4V,VOLmax=0.4V。

②VIHmin=2.0V,VILmax=0.8V。CMOS电平临界值(设电源电压为+5v):

①VOHmin=4.99V,VOLmax=0.01V。

②VIHmin=3.5V,VILmax=1.5V。通常情况下,单片机、DSP、FPGA之间引脚能否直接相连要参考以下方法进行判断:一般来说,同电压的是可以相连的,不过最好还是好好查看芯片技术手册上的VIL、VIH、VOL,VOH的值,看是否能够匹配。有些情况在一般应用中没有问题,但是参数上就是有点不够匹配,在某些情况下可能就不够稳定,或者不同批次的器件就不能运行。1.4数制与编码的简单回顾1.4.1数制十进制是人们生活中普遍使用的计数制。在十进制中,数用0、1、…、9这10个符号来描述。计数规则是逢十进一。二进制是在计算机系统中使用的计数制。在二进制中,数用0、l这两个符号来描述。计数规则是逢二进一。二进制运算规则简单,便于物理实现;但书写冗长,不便于人们阅读和记忆。二进制数的位可以表示为0或1这两个值。生活中开关的通与断,指示灯的亮与灭,电动机的启与停都可以用它来描述和控制。1.4数制与编码的简单回顾1.4.1数制8个二进制的位构成字节。有些计算机存取的最小单位只能是字节(B)。1个字节可以表示28(即256)个不同的值(0~255)。字节中的位号从右至左依次为0~7。第0位称为最低有效位(LSB),第7位称为最高有效位(MSB)。当数值大于255时,要采用字(2B)或双字(4B)进行表示。字可以表示216(即65536)个不同的值(0~65535),这时MSB为第15位。1.4数制与编码的简单回顾1.4.1数制十六进制是人们在计算机指令代码和数据的书写与软件工具的显示中经常使用的数制。在十六进制中,数用0、1、…、9和A、B、…、F(或a、b、…、f)这16个符号来描述计数规则是逢十六进一。由于4位二进制数可以直观地用1位十六进制数表示,所以人们对二进制的代码或数据常用十六进制形式缩写。为了区分数的不同进制,可在数的结尾以一个字母标识。十进制(decimal)数书写时结尾用字母D(或不带字母);二进制(binary)数书写时结尾用字母B;十六进制(hexadecimal)数书写时结尾用字母H。部分自然数的3种进制表示如表1-1所示。1.4数制与编码的简单回顾1.4.1数制表1-1部分自然数的3种进制表示1.4数制与编码的简单回顾1.4.1数制 在单片机的程序设计中,有时要用到十进制到十六进制的转换。下面以一个示例说明一下十进制到十六进制的转换方法。【例1-1】若有一个十进制数为55536,试将其用十六进制表示?解:十进制到十六进制的转换的基本方法是:除16取余倒序,即先求出的余数是最低位。由于:

55536/16=3471余03471/16=216余F216/16=8余88/16=0余D 因此,十进制数55536的十六进制表示为:D8F0H。1.4数制与编码的简单回顾1.4.2编码1、字符的编码字符的编码采用的是美国标准信息交换代码(AmericanStandardCodeforInformationIn-terchange,即ASCII码)。一个字节的8位编码可以表示256种字符。当最高位为0时,所表示的字符为标准ASCII码字符,共有128个,用于表示数字、英文大写字母、英文小写字母、标点符号及控制字符等,如附录A所示;当最高位为1时,所表示的是扩展ASCII码字符,表示的是一些特殊符号(如希腊字母等)。ASCII码常用于计算机与外部设备的字符传输。如通过键盘的字符输入,通过打印机或显示器的字符输出。1.4数制与编码的简单回顾1.4.2编码2、十进制数的编码(BCD码)十进制是人们在生活中最习惯的数制,人们通过键盘向计算机输入数据时,常用十进制输入。显示器向人们显示的数据也多为十进制形式。计算机能直接识别与处理的是二进制编码。用4位二进制编码可以表示1位十进制数。这种用二进制编码表示十进制数的代码称为BCD码。常用的8421BCD编码如表1-2所示。1.4数制与编码的简单回顾1.4.2编码由于用4位二进制代码可以表示1位十进制数,所以采用8位二进制代码(1个字节)就可以表示2位十进制数。这种用1个字节表示2位十进制数的编码.称为压缩的BCD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论