




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机极速入门范文 单片机极速入门在众多的单片机教材或参考书中,都是从单片机的原理开始叙述,给初学者带来一定难度。 就象购买一台PC机后,好象没搞清楚PC机的原理就不能用PC机一样;又如购买一辆轿车后,没有搞清楚发动机原理就不能开车一样。 大家都知道,实际情况并非如此。 同样,单片机就象一般的数字电路,对使用者来说,重要的是以最快最简单的方式,将单片机应用到实际项目中去。 为了做到单片机极速入门,读者应该拥有必要的实验设备一台具有RS232串行通信口的PC机,以及一台简单的单片机实验板。 通常高校的实验室中都有这些设备。 如果你是一个非常关心细节的人,根据本书的描述,完全可以自力更生,设计一块单片机实验板,这也是作者认为学习单片机的最好方法。 本章分成六小节,第一节是检验实验装置,学习单片机下载编程工具软件的使用方法;第二节是单片机简单编程实验,同时简单介绍单片机交叉开发平台的使用,以及二进制数和十六进制简述;第三节说明用printf()函数调试单片机软硬件的方法;第四节是单片机简单概述,主要介绍本书用到Philips公司的MCS51系列单片机P89V51Rx2;第五节描述单片机的外封装,较详细地说明各引脚的功能和接线方案;第六节分析设计成本。 1.1单片机下载编程工具软件的使用方法下面介绍P89V51Rx2的编程方法,如果你用宏晶STC的单片机,随书光盘上有STC_ISP写入工具软件,并有详细使用说明,最新软件版本可在网站.mcu-memory.下载。 下图就是STC单片机下载介面说明。 P89V51Rx2单片机可以用随书光盘中的工具软件Flash Magic下载编程。 Flash Magic是支持众多Philips单片机ISP下载的驱动程序,其中就包括对P89(L)V51RB 2、RC 2、RD2的支持。 该软件可以在网站.zlgmcu.、.esacademy.获得最新版本,该工具软件的作用是将在PC机中编制后好的单片机程序写入到P89V51Rx2单片机,然后单片机即可执行所写程序。 进一步的说明可以通过网络阅读以下网页.zlgmcu./philips/80c51/P89V51RD2/P89V51_isp.pdf第一步安装Flash Magic软件。 直接执行即可完成安装,具体步骤略过。 第二步连接单片机实验板。 在有电或没电情况下,都可以用通信电缆将PC机与单片机实验板连接,然后给单片机实验板供电。 第三步下载光盘中的闪灯验证程序010101.hex图1-1是Flash Magic的运行界面,首先要设置一些参数,这样PC机才能与单片机实验板联接,实现数据传送,请设置以下六个选项? (1) Port选择实际PC机使用的串行口,通常为1;? (2)Baud RatePC机波特率不可设置得过高,推荐用9600或19200;? (3)Device请选择正确的型号,这里选P89V51RB2;? (4)Interface选择None(ISP);? (5)勾中“Erase blocksused byHex File”;? (6)勾中“Verify afterprogramming”(编程后校验);完成上面设置后,鼠标点击“Browse”按钮从目录“例题hex0101”中找到文件010101.hex装入(也就是文件全路径名出现在“Hex File”窗口即为装入);按住复位键不松手,再用鼠标点击Flash Magic软件的“Start”按钮。 当出现提示复位的对话框时再松开复位键,ISP下载过程开始。 ISP下载结束后,按一次复位键或者重新上电程序即开始运行。 如果单片机工作正常的话,16个发光二极一起闪烁,速度由慢变快,循环不止。 第四步重复前三步到完全掌握为止。 第五步验证所有0101*.hex程序010102.hex的功能单向流水灯010103.hex的功能双向流水灯010104.hex的功能随意流水灯010105.hex的功能变速流水灯注意,实际工作中,如果“Hex File”窗口下载的是同一路径下的同一文件,即使文件内容发生了变化,下载前也不用再装入,直接下载即可。 如果调试单片机时要用到PC机的串行通信接口,则必须关闭Flash Magic,再次用到Flash Magic之前,必须关闭PC机的串行通信口软件,原因是Flash Magic使用PC机的串行通信口下载程序,而同一时刻同一串行通信口只能被一个程序所使用,同时使用即发生冲突,导致错误出现。 图1-1单片机程序下载软件FlashMagic的运行界面1.2Keil平台简介Keil是MCS51单片机的主要开发软件工具平台,运行中PC机的Windows系统上,也是我们学习单片机的主要工具。 为了方便学习,我们从网上找到一个早期的非安装版本放在光盘上,最新版本的可以通过合法方式获得。 1.2.1KEIL51开发平台的安装将光盘中软件工具中的keil目录拷贝到PC机的D盘根目录中即可,也可以拷贝到任何磁盘的任何目录下工作。 如果不是放在D盘的根目录下,在使用KEIL之前,必须配置KEIL中的一个文件TOOLS.INI,该文件就在KEIL目录下,可以用文本器对TOOLS.INI文件进行修改,实现配置。 该文件的内容如表1-1所示表1-1Keil软件配置文件Tools.ini的内容UV2BOOK0=UV2RELEASE_NOTES.HTM(uVision2Release Notes)BOOK1=UV2UV2.HLP(uVision2Users Guide)Version=V2.2ORGANIZA TION=homeNAME=11RI2Z11RI2ZC166BOOK3=HLPC51LIB.CHM(C51Library Functions,C)BOOK4=HLPA51.PDF(Assembler/Utilities)BOOK5=HLPTR51.PDF(RTX51Tiny Users Guide)BOOK6=HLPDBG51.CHM(uVision2Debug Commands)BOOK7=ISD51ISD51.HTM(ISD51In System Debugger)TDRV0=BINMON51.DLL(Keil Monitor-51Driver)TDRV1=BINISD51.DLL(Keil ISD51In-SystemDebugger)BOOK0=HLPRELEASE.TXT(Release Notes)BOOK1=HLPGS166.PDF(uVision2Getting Started)BOOK2=HLPC166.PDF(C166Users Guide)BOOK3=HLPC166LIB.CHM(C166Library Functions,C)BOOK4=HLPA166.PDF(A166&Utilities Users Guide)BOOK5=HLPDBG166.CHM(uVision2Debug Commands)TDRV0=MONITORMON166.DLL(Keil Monitor-166Driver)TDRV1=OCDSCBC166.DLL(Keil OCDS-166Driver)RTOS1=RTXTINY.DLL(RTX-166Tiny)RTOS2=RTXFULL.DLL(RTX-166Full)Version=V4.2C51BOOK0=HLPRELEASE_NOTES.HTM(Release Notes)BOOK1=HLPGS51.PDF(uVision2Getting Started)BOOK2=HLPC51.PDF(C51Users Guide)TDRV2=BINTE5_UV2.DLL(Triscend E5Driver)RTOS1=RTXTINY.DLL(RTX-51Tiny)RTOS2=RTX51.DLL(RTX-51Full)Version=V6.2PATH=i:keilC51SN=K1RIP-M2192-K014EC251BOOK0=HLPRELEASE.TXT(Release Notes)BOOK1=HLPGS51.PDF(uVision2Getting Started)BOOK2=HLPC251.PDF(C251Users Guide)BOOK3=HLPC251LIB.CHM(C251Library Functions,C)BOOK4=HLPA51.PDF(Assembler/Utilities)BOOK5=HLPDBG251.CHM(uVision2Debug Commands)TDRV0=BINMON251.DLL(Keil Monitor-251Driver)Version=V3.2C51组中的目录路径项PATH=i:keilC51在本文中应从i盘改为d盘目录路径PATH=D:keilC51项,改完后存回磁盘复盖原TOOLS.INI文件即可。 为了使用方便,通常在桌面上新建一“快捷方式”,通过浏览方法找到项目位置“DKEILUv2Uv2.exe”。 鼠标双击桌面上的“Uv2.exe快捷方式”即可正常进入KEIL编程平台,参见图1-2。 图1-2KEIL平台的主界面1.KEIL开发平台的使用为了快速学习单片机,这里暂不描述keil的详细使用方法,而是直接利用keil工具修改光盘上完好的项目程序,并编译产生单片机可执行代码,然后用1.1节的方法进行测试验证。 将光盘中的“源程序”目录全拷贝到D盘上,启动keil进入图1-2界面,按以下步骤操作第一步“Project”=“Open project”出现“Select ProjectFile”对话框后,请选择“例题源程序第一章010101010101.vu2”文件打开即可;第二步鼠标双击左边窗口的“main.c”即可在右边窗口看到main.c的程序清单;表1-2main.c程序清单/*-*/*FILE main.c DESCRIPTIONMain programfor testall LEDson MCS51motherboard COPYRIGHT(C)xxLiberty digitalTechnology CorporationAll rightsreserved HISTORY*/*-*/#include#includeclock.hvoid main(void)unsigned intuiTimeDelay;/用于记录延时毫秒数systemClockInitial();/系统时钟初始化EA=1;/允许系统中断P1=0xff;/P1端口的8个发光二极管熄灭P3=0xff;/P3端口的8个发光二极管熄灭uiTimeDelay=500;/0.5秒间隔至0.01秒间隔while (1)/永远循环systemClockDelayMs(uiTimeDelay);/延时uiTimeDelay毫秒P1=0x00;/P1端口的8个发光二极管发亮P3=0x00;/P3端口的8个发光二极管发亮systemClockDelayMs(uiTimeDelay);/延时uiTimeDelay毫秒P1=0xff;/P1端口的8个发光二极管熄灭P3=0xff;/P3端口的8个发光二极管熄灭uiTimeDelay-=5;/每次加快5毫秒(倒数第7行)if(uiTimeDelay“Options forTarget?Target1?”出现图1-3。 点击“Output”后选中“Create HEXFi”,即打上勾选择即可。 图1-3程序项目配置界面第四步“Projec”=“Rebuild alltarget files”即可完成全部编译转换工作,同时显示编译结果。 参见图1-4。 图1-4、编译界面最终产生单片机可执行代码010101.hex文件存入在目录路径“D:源程序第一章010101”下。 用Flash Magic即可下载到单片机中。 第五步修改程序?修改表1-2倒数第7行,可以改变发光二极闪烁变化速度;?修改表1-2倒数第6行,可以改变最快闪烁;?修改表1-2倒数第4行,可以改变最慢闪烁;1.3二进制基础知识入门(了解的读者只看最后一段即可)单片机集成电路有很多引脚,这里介绍的单片机有40根引脚。 当单片机工作时,每个引脚通常处于有电(5伏,或称为高电平H,或称为逻辑1)和无电(0伏,或称低电平L,或称为逻辑0)两种状态,可以用表示数值1和数值0,n个引脚排列可以形成a n-1a n-2a1a0(a i=140),每个a i都可取值0或1,即可2n种组合,每种组合表示一个数,即可表示十进制数0到2n-1,可以通过工式计算出十进制数a n-1x2n-1+a n-2x2n-2+a1x21+a0x20例如4位二进制数1010(n=4),其中a3= 1、a2= 0、a1= 1、a0=0,代入上式计算得a4-1x24-1+a4-2x24-2+a4-3x24-3+a4-4x24-4=1x23+0x22+1x21+0x20=8+0+2+0=10。 实际上面的a n-1a n-2a1a0,就是大家常听说到的二进制数。 如二进制数0101表示十进制数5,而二进制数10000000表示十进制数128。 但在计算机的C语言程序中,没有二进制数的表示方法,而是用十六进制数来描述二进制数,原因是一位十六进制数正好由四位二进制数构成,对应十进制数0到15,十六进制数表示成 0、1 8、 9、A、B、C、D、E、F。 例如二进制数01011010可表示成十六进制数0x5A(0x开头的数为十六进制数,例0x50=80)。 在计算机中,一个位只有0和1两种状态,称为bit;八位构成一个字节,称为byte;两个字节构成一个字,称为word;两个字构成一个双字,称为dword;256个字节构成一页,称为page。 一个字节由8位二进制数组成,可以表示28(=256)种状态,作为无符号整数可取值0,255=0x00,0xFF,而作为有符号整数可取值-128,127。 一个字由16位进制数组成,可以表示216(=65536)种状态,作为无符号整数可取值0,65535=0x00,0xFFFF,而作为有符号整数可取值-32768,32767。 一个双字由32位进制数组成,可以表示232种状态,作为无符号整数可取值0,232-1=0x00,0xFFFFFFFF,而作为有符号整数可取值-231,231-1。 在表1-2程序清单中出现一个P1的符号,实际上它是一个字节,其8位正好对应单片机的8个引脚P1.i(i=7.0),最高位对应P1.7,最低位对应P1.0。 当某位为1时,对应引脚上的发光二极管熄灭,为0时;则对应引脚上的发光二极管发亮。 例P1=0x55则隔一亮一,P1.i中i为奇数亮;而P1=0xAA时则i为偶数亮。 符号P3与P1类似,请修改表1-2中P1和P3的值测试一下。 1.4实例分析与修改?项目010102的功能参见表1-3,通过逐条指令改变P1字节的值,从而改变P1字节的每一位,对应控制P1对应的8个引脚输出电平,实现左边一列8支发光二极管从上到下轮流往复发亮。 现修改要求由下向上发亮,同时修改转动的速度;第二点要求是将P1改为P3,控制右边的发光二极管。 表1-3项目010102部分代码清单P1=0xfe;systemClockDelayMs (100);P1=0xfd;systemClockDelayMs (100);P1=0xfb;systemClockDelayMs (100);P1=0xf7;systemClockDelayMs (100);/P1.0对应的LED发光二极管亮11111110/延时100毫秒/P1.1对应的LED发光二极管亮11111101/延时100毫秒/P1.2对应的LED发光二极管亮11111011/延时100毫秒/P1.3对应的LED发光二极管亮11110111/延时100毫秒P1=0xef;systemClockDelayMs (100);P1=0xdf;systemClockDelayMs (100);P1=0xbf;systemClockDelayMs (100);P1=0x7f;systemClockDelayMs (100);/P1.4对应的LED发光二极管亮11101111/延时100毫秒/P1.5对应的LED发光二极管亮11011111/延时100毫秒/P1.6对应的LED发光二极管亮10111111/延时100毫秒/P1.7对应的LED发光二极管亮01111111/延时100毫秒?项目010103的功能参见表1-4,将项目010102的指令换成表ucMapP1和ucMapP3,从左到右,依次循环送给P1和P3,实现对全部LED发光二极管的控制。 现修改要求左列从中向外发散,而右边由外向内收拢。 表1-4项目010103的部分代码清单code unsignedchar ucMapP18=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;code unsignedchar ucMapP38=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe;?项目010104的功能参见表1-5,在项目010103的基础下,依据16个LED有65536种显示组合,我们设计一个变化更丰富的表,实现复杂灯光控制,这里设字表ucMapP3P1,从上到下,从左到右,依次循环送给P1和P3,表中每个字的高8位控制P3,而低8位控制P1。 如果一个字的值为0x1234,其高8位是0x12,低8位是0x34。 比如表中第一个字是0x7fff,则P3=0x7f,P1=0xff。 由于单片机本身的原因,此表能容纳的最大字个数为232=32768。 现修改要求扩大表中的字个数,同时将灯反转。 表1-5项目010104的部分代码清单code unsigned int ucMapP3P1=0x7fff,0xbfff,0xdfff,0xefff,0xf7ff,0xfbff,0xfdff,0xfeff,0xfffe,0xfffd,0xfffb,0xfff7,0xffef,0xffdf,0xffbf,0xff7f,0xffff,0x0000,0xffff,0x5555,0xffff,0xaaaa,0xffff;?项目010105的功能参见表1-6,在项目010104的基础上,在表ucMapLed中每个字后加入延时数,使得每个控制字保持的延时时间不变,比如最后一个控制字0xff7f的保持时间为234毫秒,从而实现变速流水灯。 表1-6项目010105的部分代码清单code unsigned int ucMapLed=0x7fff,100,0xbfff,200,0xdfff,300,0xefff,400,0xf7ff,350,0xfbff,250,0xfdff,150,0xfeff,50,0xfffe,75,0xfffd,123,0xfffb,456,0xfff7,888,0xffef,1000,0xffdf,1234,0xffbf,789,0xff7f,234;1.3printf()函数调用方法由于缺少专业的调试工具,给调试单片机的软硬件带来一定困难,不过利用单片机的串行通信接口,在主要硬件无故障的情况下(通常很容易做到),就可以解决大部分调试问题。 1.3.1超级终端使用方法首先光盘上提供一个样版项目010301,其功能是给PC机不断发送“Hello,您好!”。 第一步将010301.hex下载到单片机后,关闭Flash Magic;第二步在Windows下,运行超级终端。 ?“开始”-“所有程序”-“附件”-“通讯”-“超级终端”;?在“连接描述”界面中随意输入名称“MyTest”;?在“连接到”界面“连接时使用”项目中选“1”;?在“1属性”界面中依次选 57600、 8、无、 1、无;第三步按一下单片机复位,在PC机上的超级终端界面即可看到接收的内容。 1.3.2printf函数说明程序中使用printf()函数,将要调试的内容通过通信接口送给PC,并显示出来。 有关printf()函数的详细使用方法,在网上非常容易找到,这果只给出一些实例供参考?显示一串字符方法之一显示的内容被括中双引号中,显示内容中有双引号时写成”,有右括号时写成),回行写成r,换行写成n;printf(”显示内容”);?显示一串字符方法之二用符号str表示串,%s是输出串格式,表明str是一个串;char str=”显示内容”;printf(”%s”,str);?显示字符变量ch的内容printf(”%c”,ch);?显示整数var的数值printf(”%d”,var);?以十六进制方式显示整数var的值printf(”%X”,var);?组合显示方式printf(”nr十进制var=%d,十六进制var=0x%Xnr”,var,var);注意如果var是字节型变量时,要写成(int)var,强制转为整数才能正确显示。 ?显示实数x的值printf(”%f”,x);项目010302中给出了一个显示实例,大家可以在此基础上进行修改,熟练掌握printf的使用方法,以便后面的学习。 1.3.3C程序语言简介C语言是我们学习单片机的主要程序设计语言,此处简单描述C语言一些常用的知识,更详细的内容可以参考专业C语言教程。 如下从四个方面进行说明。 1.3.3.1变量在C语言中处理的数据通称为变量,每一变量在使用前都要事先定义其类型,例如程序中要用到两个整数变量x和y,则用下面语句定义int x,y;由于计算机储存能力有限,每种类型变量的取值范围还有限制,比如说在数学上,整数的取值范围从负无穷到正无穷,而这里单片机的整数是用2个字节表示,取值只能从-32768到+32767。 表1-7给出了MCS51系列单片机C语言中几种基本常用变量类型的情况。 通常情况下,给变量赋值不要超过变量类型的取值范围,以免产生结果。 表1-7常用变量表变量类型char unsignedchar intunsigned intlong unsignedlong float类型说明字符无符号字符整数无符号整数长整数无符号长整数浮点数字节数取值范围1122444-128,1270,2550,65535-231,231-10,232-1其它说明短整数无符号短整数-32768,32767-3.402823E+38,实数3.402823E+381.3.3.2变量算术运算表1-7的变量可以进行加(+)、减(-)、乘(*)、除(/)算术运算,并满足算述四则运算规则,整数还可以进行整除求余(%)运算。 运算结果的类型将变成等号左边变量的类型。 表达式x=x+y;表示变量x在现有基础增加了y,比如原x=2,y=3,则运算后x=5,y=3。 表达式p*=f(q);表示变量p=p*f(q)。 表达式+k和k+都是表示k加一,前者k先加一才运算,后者k先运算后加一。 比如原t= 10、k=100,做t=t+k后t= 101、k=101;而做t=t+k+后t= 100、k=101。 表达式-k和k-都是表示k减一,前者k先减一才运算,后者k先运算后减一。 1.3.3.3变量逻辑运算变量的逻辑运算是针对相同的无符号数,而且是按二进制数进行位运算,即A变量的第i位只能与B变量的第i位运算,运算结果也只能存在第i位,无进位,也无借位。 一个二进制位只有两种值,不是1就是0。 常用的逻辑运算有四种与(&)、或(|)、非()、异或()。 两位作与运算时,只有两位都为1时,结果为1;只要有一位为0,结果必为0。 两位作或运算时,只有两位都为0时,结果为0;只要有一位为1,结果必为1。 两位作异或运算时,两位不同时,结果为1;两位相同时,结果必为0。 非运算只用于单变量,为1则变0,为0则变1,所以非运算也叫取反运算。 用一位二进数两个变量P和Q作逻辑运,结果列表成表1-8,此表也称为真值表。 表1-8逻辑运算真值表变量P0011变量Q0101与P&Q0001或P|Q0111异或PQ0110非P1100光盘项目010303利用函数printf通过串行通信接口,演示了逻辑运行的结果。 下面绐出一个例子,X=0x5a0f,Y=0xa53c,则有表1-9的结果。 表1-9逻辑运算示例表X Y与0101101000001111101001010011110000000000000011000x5a0f0xa53c0x000c=逻辑运算表达0x5a0f&0xa53c或异或非X非Y11111111001111111111111100110011101001011111000001011010110000110xff3f0xff330xa5f00x5ac3=0x5a0f|0xa53c0x5a0f0xa53c0x5a0f0xa53c1.3.3.4控制指令我们说2比1大,是真的,而2比1小,是假的。 两个数进行比较的运算称为关系运算,比较结果真(TRUE)和假(FALSE)就是关系表达式的值,称为布尔值。 两个布尔数也可以进行关系运算,结果仍是布尔值。 关系运算表达式称为条件表达式。 具体运算说明见表1-10。 表1-10关系运算说明比较运算xy x=y xy)|(iy)i=1;k=4;elsei=2;n=12;说明如果x大于y(即exp),则执行第一个的语句i=1和k=4,否则执行第二个的语句i=2和n=12。 if(expr)表示如果expr为假时,不执行中的语句。 ?开关控制语句switch(expr)case:break;default,swith(expr)case:break;例switch(x+y)case1:printf(“good”);i=5;break;case3:printf(“bad”);j=34;break;default:printf(“I don?t know”);说明先计算x+y(即expr),然后根据expr的结果执行中的语句。 如果结果为1,则执case1的语句;如果结果为3,则执行case2的语句,如果是其它值,则执行default的语句。 任何情况下只能执行其中之一。 swith(expr)case:break;表示expr都不是case列表值时,则不执行中的语句。 ?循环控制语名for(expr1;expr2;expr3)例for(i=1;i100;i+)printf(“i=%d”,i);p*=2;说明首先i=1(即expr1);第二步判别i(即expr2),如果小于100则执行中的语句;否则往下执下其它语句;第三步i加1(即expr3),然后回到第二步。 ?条件循环语句while(expr),dowhile(expr);说明while(expr)表示如果expr为真时执行中的语句,然后循环回来计算expr,直到expr为假,才往下执行其它语句。 而dowhile(expr)是先执行中的语句,然后循计算expr,如果expr为真则循环回去再执行的语句,否则往下执行其它语句。 1.3.3.5函数调用在数学中,一个多元函数可写成y=f(x1,x2,?,x n);C语言中函数写法完全相同。 其中f称为函数名,自变量x1,x2,?,x n称为形参,函数值可赋给变量y。 例int power(unsignedintcursorX,unsignedintcursorY);说明函数power的值为整数,有两个无符号整数输入参数。 有些函数没有形参,例如float random(void)。 与数学不同的是,C语言中有些函数没有值,这些函数只是处理处理一些事情,这类函数有时称为过程。 例如void delay(int time)。 有些函数既无形参,也没有返回值,例如void main(void)。 1.3.3.6其它C语言中还有一些非常重要变量类型,分别为指针、地址、数组、结构、联合、牧举,这里不再详述,可以参考相关的C语言书籍。 本书用到这些变量类型时,将作进一步说明。 1.4单片机简单概述,单片机就是一种计算机。 通常计算机由四部分组成,核心是运算单元(ALU)和控制单元(CU),其次是储存器(MEMORY)和输入输出系统(I/O),ALU和CU集成在一起时组成中央处理器(CPU),CPU和I/O集成在一起时组成微处理器(MPU),MPU与MEMORY集成后就称为单片机,也称为微控制器(MCU)。 有些时候,计算机又分成四类,即计算机、微机、单板机、单片机。 计算机又分为大型计算机、中型计算机和小型计算机,此时ALU和CU都是独立的;而微机则是指采用CPU的计算机;单板机是指在一块电路板上制作的计算机;单片机则是在单一芯片上集成的计算机。 现有单片机又分为信号处理DSP类单片机、非DSP单片机和双核单片机,单片机也出现在单片可编程系统芯片(SOPC)上。 本书所指单片机为非DSP单片机。 单片机一般由现存的CPU系演变而成,所以有多种体系指令系统的单片机。 CPU是针对通用目标而设计的,而单片机则是针对具体应用目标而设计的,这样每一种CPU指令系统演变出同一系列、功能不同的多个型号单片机,一般同系列、不同型号的单片机具有相同的CPU、不同容量的内存和I/O组件。 本书用到的单片机是MCS51系列Philips公司的单片机P89V51Rx2。 P89V51RB2/RC2/RD2是一款80C51微控制器,包含16/32/64kB Flash和1024字节的数据RAM。 选择X2方式可在相同时钟频率下获得2倍的吞吐量,极大地降低电磁干扰(EMI)。 Flash程序存储器支持并行和串行在系统编程(ISP),采用在应用中编程(IAP),允许随时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 产教融合与职业课程动态调整机制-洞察及研究
- 江西省南昌市进贤县2024-2025学年中考联考数学试题含解析
- 2025中国中信金融资产管理股份有限公司中层管理人员社会招聘笔试参考题库附答案详解ab卷
- 2023年山东济南市章丘区殡仪馆工作人员招聘10人笔试备考试题及答案详解1套
- 医疗合规审计方法-洞察及研究
- 2025年皖北煤电集团有限责任公司招聘笔试备考题库含答案详解(综合卷)
- 八年级物理期中考试真题解析
- 北京版三年级数学期中试卷解析
- 数字货币风险管理-第2篇-洞察及研究
- 供热系统管道安装方案
- 中小学教师参与学校管理研究论文
- 液氧泄漏应急处置的培训与演练
- 沥青路面施工-沥青混合料配合比设计
- 《健康心理学》 课件 第1-3章 健康心理学绪论、人体的生理系统、健康行为及其理论
- 田野考古学基本理论与方法
- 能源服务、产品、设备和能源采购控制程序
- 2022-2023 山东大学物理学院 数学物理方法期末试题
- 农副产品配送服务服务方案
- 500种药店常见药品及进货价格
- 焊装工艺学习课件
- 【个人简历】保洁经理求职个人简历模板
评论
0/150
提交评论