当前位置:文档之家› 单片机程序烧录方法及问题解决方式解析

单片机程序烧录方法及问题解决方式解析

单片机程序烧录方法及问题解决方式解析

单片机程序烧录方法及问题解决方式解析

自学单片机是一场苦旅,这在第一次面对复杂的烧录界面的时候就会有深刻的感受,面对这幺多参数的界面,该如何让自己苦心编写的程序运行在单片机上呢?下面就给大家介绍一下。

?

?

先,将烧写线把开发板与电脑连接,安装驱动之后,烧写程序能自动识别设备

?

?

1,安装USB驱动程序,驱动程序在学习光盘中,具体安装方法参考配套使用说明书

?

?

2.驱动安装完后,请检查USB的COM 端口号。

?

?

?

?

3.程序烧录时,要满足下面各参数的设置情况,

?

单片机试题库分章节答案(C语言)

(红色是考试考过的,蓝色是老师给的习题“重点看“) 第1部分单片机概述及数学基础 一、填空题 1、十进制255的二进制是11111111 ,十六进制是FF 。 2、单片机是将CPU、存储器、特殊功能寄存器、定时/计数器和输入/输出接口电路、以及相互连接的总线等集成在一块芯片上。 3、十进制127的二进制是1111111,十六进制是7F。 4、+59的原码是00111011,-59的补码是11000101。 5、十进制数100转换为二进制数是1100100;十六进制数100转换为十进制数是256。 6、十进制数40转换为二进制数是101000;二进制数10.10转换为十进制数是 2. 5。 7、十进制99的二进制是1100 011 ,十六进制是63 。 二、判断题 (×)1、AT89S51是一种高性能的16位单片机。8位机 (×)2、有符号正数的符号位是用1表示的。 三、选择题 ()1、计算机中最常用的字符信息编码是(A) A. ASCII B.BCD码 C. 余3码 D. 循环码 四、简答题 1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点? 第2部分51单片机硬件结构、存储系统及 I/O接口 一、填空题 1、AT89S51单片机共有 4 个8位的并行I/O口,其中既可用作地址/数据口,又可用作一般的I/O口的是P0 。 2、若采用12MHz的晶振,则MCS-51单片机的振荡周期为__ 1/12 μS __ ,

机器周期为____1μS __。 3、AT89S51单片机字长是___8___位,有___40根引脚。 4.89S51单片机是8 位单片机,其PC计数器是16 位。 5.若单片机使用的晶振频率是6MHz,那么一个振荡周期是1/6 μS,一个机器周期是2μS μS。 6.89S51单片机是+5 V供电的。4.0-5.5V 7.堆栈是内部数据RAM区中,数据按先进后出的原则出入栈的。8.MSC-51系列单片机具有 4 个并行输入/输出端口,其中_P0_口是一个两用接口,它可分时输出外部存储器的低八位地址和传送数据,而_P1__口是一个专供用户使用的I/O口,常用于第二功能的是P3 口。 9.当单片机系统进行存储器扩展时,用P2口的作为地址总线的高八位,用P0作为地址总线的低八位。 10.半导体存储器分为___ROM___和__RAM__两大类,其中前者具有非易失性(即掉电后仍能保存信息),因而一般用来存放系统程序,而后者具有易失性,因而一般用来存放经常变动的用户程序.中间结果等。 11.MCS-51系列单片机对外部数据存储器是采用_DPTR___作为指针的,其字长为_16__位,因而可寻址的数据存储器的最大空间为_64K_字节。 12. 51单片机有26个特殊功能寄存器,其中11个具有位寻址功能。 13. 当单片机系统需要外扩展存储器时,P2和P0 作为地址总线。 14.AT89S51单片机上电初始化后,将自动设置一些寄存器的初始值,其中堆栈指针SP的初始值为07H ,P0口复位值是FFH。 15.单片机两种节电模式:空闲模式和掉电模式,节电模式是由特殊功能寄存器PCON中的有关位来控制的。 16. 在单片机硬件设计时,31脚一般要接___高电平___,晶振在PCB设计中应尽量___靠近51芯片___。 17.在AT89S51单片机中,RAM是数据存储器,ROM为程序存储器。 18.单片机的复位方式主要有上电复位和按键复位两种。 19.AT89S51单片机的内部RAM的寻址空间为256B,而内部ROM的寻址空间为4K。

单片机程序分析题练习B2复习过程

1.程序如下: MOV SP,#13H MOV 33H,#7FH MOV 44H,#0ABH PUSH 33H PUSH 44H POP 33H POP 44H 程序执行后,(33H)=0ABh ,(44H)=7Fh 2.下列各条指令其源操作数的寻址方式是什么?各条指令单独执行后,A中的结果是什么?设(60H)=35H,(A)=19H,(R0)=30H,(30H)=0FH。 (1)MOV A,#48H ;寻址方式: (A)= 48H (2)ADD A,60H ;寻址方式: (A)= 4DH (3)ANL A,@R0 ;寻址方式: (A)= 10H 3.阅读下列程序段,写出每条指令执行后的结果,并说明此程序段完成什么功能? MOV R1,#30H ;(R1)=30H MOV A,#64H ;(A)= 64H ADD A,#47H ;(A)=ABH ,(CY)= 0 , (AC)= 0 DA A ;(A)=31H ,(CY)=1 , (AC)= MOV @R1,A ;(R1)= 30H ,(30H)= 31H 此程序段完成的功能 4.设(A)=38H,R0=28H,(28H)=18H,执行下列程序后,(A)=0 ORL A,#27H ANL A,28H XCHD A,@R0 CPL A 5.设(A)=38H,(20H)=49H,PSW=00H,(B)=02H,填写以下中间结果。 SETB C ADDC A, 20H (A)= 82H (CY)= 0 (AC)= 1 RLC A (A)=04H (CY)=1 (P)= 1 MUL AB (A)=08H (B)=00H (OV)=0 6.已知(R0)=20H, (20H ) =10H, (P0) =30H, (R2) =20H, 执行如下程序段后( 40H ) =15H MOV @R0 , #11H (20H)=11H MOV A , R2 A=20H

单片机题库 带答案

单片机题库 一、填空题 1、当使用8031单片机时,需要扩展外部程序存储器,此时/EA应接((地)低电平)。 2.8051单片机内部有( 2 )个定时/计数器,门控制信号GATE 设置为1 时,由(TRx )和(INTx)控制定时器的启动。 3. 若由程序设定RS1、RS0=01,则工作寄存器R0~R7的直接地址为(08H~0FH)。 4.若累加器A中的数据为01110011B,则PSW中的P=( 1 )。 5、MCS-51单片机具有4个(8 )位并行I/O口,有( 1)个全双工的串行输入输出口。 6、计算机的元件级总线有(地址总线)、(数据总线)、(控制总线) 7、MOV A,@R1指令中,源操作数的寻址方式是(寄存器间接寻址)。 8、8051单片机堆栈遵循数据先入后出的原则。 9、8051单片机使用电源为5V。 10、在立即寻址方式中,在数前使用#号来表示立即数。 11、在8051单片机中,加法指令可以分为ADD,ADC两种。 12、设8051外接12MHz的石英晶体,则一个机器周期的时间宽度为1us。 13、8051单片机的C语言源程序的扩展名为dac,Dac。 14、在设计汇编语言源程序时,可以使用顺序结构的程序,也可以使用某些指令构成分支结构或者循环结构的程序。15、当8051单片机复位后,程序的入口地址为 0000H 。

16、8051单片机中的定时器/计数器有 2个。 17、8051单片机有5 个中断源,分成 2个优先级。 18、MCS-51单片机具有8位CPU,共有 16根地址线。 19、MCS-51片内有( 128 )个字节的数据存储单元,( 21 )个 特殊功能寄存器。片内数据存储器寻址空间是( 256 )字节。 20、内部RAM低128个字节划分为( 工作寄存器区 )、( 位寻 址 )、( 数据缓冲区 )三个部分。 21、访问特殊功能寄存器和片外数据存储器分别采用( 直接寻 址 )、( 寄存器间接寻址 )寻址方式。 22、清除片内RAM 2FH单元最低位,使用的命令是( CLR 08H )。 23、在MCS-51系列单片机MCS-51单片机有4个( 8 )位的并行 I/O口,其中( P0 )口用做低8位地址线和数据线分时复用, 而 ( P2 )口用作高8位地址线。 24、MCS-51单片机有一个具有( 2 )个中断优先级,( 5 ) 个中断源的中断系统。对于每个中断源,均可通过对特殊功能寄存器 中中断优先级寄存器设置其优先级,置( 1 )为高优先级。 25、8031是( 高 )电平复位,复位后,P0-P3口为( 高 ) 电平,SP的值为( 07H ),PC的值为( 0000H ),工作寄 存器位于第( 0 )组。 26、MCS-51单片机具有( 8 )位CPU,共有( 16 )根地址线,可寻 址外部程序存储器( 64K)字节,可寻址外部数据存储器 ( 64K )字节。

单片机程序分析题练习B2

1.程序如下: MOV SP , #13H MOV 33H ,#7FH MOV 44H ,#0ABH PUSH 33H PUSH 44H POP 33H POP 44H 程序执行后, (33H)=0ABh 2.下列各条指令其源操作数的寻址方式是什么各条指令单独执行后, (60H )=35H ,(A ) =19H ,(R0)=30H ,(30H )=0FH 。 ( 1 ) MOV A , #48H ;寻址方式 A) = 48H ( 2) ADD A , 60H ;寻址方式 A) = 4DH ( 3) ANL A , @R0 ;寻址方式 A) = 10H 3.阅读下列程序段,写出每条指令执行后的结果,并说明此程序段完成什么功能 MOV R1, #30H ;( R1) =30H MOV A , #64H ; ( A) = 64H ADD A , #47H ;( A) =ABH ,( CY) = 0 , ( AC) = 0 DA A ;( A) =31H ,( CY) =1 ( AC) = MOV @R1, A ; ( R1) = 30H , ( 30H) = 31H 此程序段完成的功能 4. 设(A)=38H,R0=28H,(28H)=18H,执行下列程序后,(A) =0 ORL A , #27H ANL A , 28H XCHD A , @R0 CPL A 5. 设(A)=38H,(20H)=49H,PSW=00H,(B)=02H,填写以下中间结果。 SETB C ADDC A, 20H (A)= 82H (CY)= 0 (AC)= 1 RLC A (A)=04H (CY)=1 (P) 1 MUL AB (A)=08H (B)=00H (OV)=0 6. 已知( R0) =20H, (20H ) =10H, (P0) =30H, (R2) =20H, 执行如下程序段后 ( 40H ) =15H MOV @R0 , #11H (20H)=11H MOV A , R2 A=20H ,(44H )=7Fh A 中的结果是什么设

单片机题库及答案

单片机题库及答案 【篇一:单片机试卷及答案】 填空题(每空1分,共20分) 1、+1000001的反码是。十进制数-4的8位二进制补码是。 2、计算机所能执行的指令的集合称为。指令的编码规则称为,一般由和操作数两部分组成。 3、cpu一次可以处理的二进制数的位数称为cpu的。 4、当ea为电平时,cpu总是从外部存储器中去指令。 5、89c52单片机有6个中断源,其中内部中断源有个,外部中断源有个。 6、汇编指令中,对程序存储器的访问用指令来访问,外部ram用指令来访问。 7、c51的数据类型sfr占个字节,c51中整型变量占个字节。 8、指令mov 20h,#20h中,源操作数的寻址方式是,目的操作数的寻址方式是。 9、定时器t1方式2的8位常数重装初值存放于寄存器中。定时器t0方式0,寄存器用于存放计数初值的低5位。 10、多机通信中,主机的sm2= 。 11、eprom存储器27c256内部容量是32k字节,若不考虑片选信号,则对其内部全部存储单元进行寻址共需根地址线。 12、波特率倍增位位于特殊功能寄存器中。 13、8155a内部具有1个位减法定时器/计数器。 二、单项选择题(共20题,每题1分,共20分) 1、单片机的应用程序一般存放于()中 a、ram b、rom c、寄存器 d、cpu 2、定时器0工作于计数方式,外加计数脉冲信号应接到()引脚。 a、p3.2 b、p3.3 c、p3.4 d、p3.5 3、mcs51单片机在同一优先级的中断源同时申请中断时,cpu首先响应()。 a、外部中断0 b、外部中断1 c、定时器0 d、定时器1 4、adc0809是()ad的转换器件 a、4通道8位 b、8通道8位 c、4通道12位 d、8通道12位 5、执行中断返回指令后,从堆栈弹出地址送给() a、a b、ri c、pc d、dptr 6、串行通信中,发送和接收寄存器是()

DSP程序烧写步骤

一、连接好DSP电源及仿真器(设备管理器中能检测到仿真器) 二、点击桌面图标

三、选择对应的仿真器和DSP(图中已经选好了,直接保存并退出) “确认”

四、进入仿真界面,此时系统与目标板还未连接 在“Debug”中选择“Connect”将系统与目标板连接

五、如图,右键“Projects”,载入工程文件 工程文件目录为文件目录为C:\CCStudio_v3.3\MyProjects\DSP2812M_examples\DPS2812M_KEYBOARD (图中,点击后直接进入工程目录,此时直接选中.pjt文件并打开即可)

六、打开后界面如下: 注意:工程中的“F2812.cmd”文件(如下图所示)为烧写程序时用的cmd文件,编译及调试程序时用的cmd文件为“F2812_EzDSP_RAM_lnk.cmd”,两者均在目录C:\CCStudio_v3.3\MyProjects\DPS2812M_common\cmd下,如下图中所示:

“F2812.cmd”文件和“F2812_EzDSP_RAM_lnk.cmd”文件所在目录如下: 如果从调试程序到烧写程序或者相反过程,都需要更换cmd文件,更换后一定要先编译cmd 文件后才能避免出现问题 七、烧写程序 烧写程序即是将编译及调试正确的程序(.out文件)烧写到Flash中,本实验烧写的是DPS2812M_KEYBOARD.out文件,其目录为C:\CCStudio_v3.3\MyProjects\DSP2812M_examples\DPS2812M_KEYBOARD\Debug 选择“Tools”下的“F28xx on-chip flash programmer”,如下图:

单片机程序分析试题与答案

六、设计题 1.某单片机控制系统有8个发光二极管。试画出89C51与外设的连接图并编程使它们由右向左轮流点亮。 答:图(5分) 构思(3分) MOV A,#80H (1分) UP:MOV P1,A (1分) RR A (2分) SJMP UP (1分) 2.某控制系统有2个开关K1和K2,1个数码管,当K1按下时数码管加1,K2按下时数码管减1。试画出8051与外设的连接图并编程实现上述要求。 答:图(5分) 构思(3分) 程序(4分) ORG 0000H LJMP MAIN ORG 0003H LJMP AINT0 ORG 0013H LJMP BINT1 MAIN: MOV IE,#83H SETB IT0 SETB IT1 MOV R0,#00H MOV DPTR,#TAB UP: MOV A,R0 MOVC A,@A+DPTR MOV P1,A SJMP UP AINT0: INC R0 CJNE R0,#10,AINT01 MOV R0,#0 AINT01: RETI BINT1: DEC R0 CJNE R0,#0FFH,BINT11 MOV R0,#9 BINT11: RETI 1.已知在累加器A中存放一个BCD数(0~9),请编程实现一个查平方表的子程序。 1.SQR:1NC A MOVC A,@A+PC RET TAB:DB 0,1,4,9,16 DB 25,36,49,64,81 2.请使用位操作指令实现下列逻辑操作:BIT=(10H∨P1.0)∧(11H∨C Y) 2.ORL C,11H

MOV 12H,C MOV C,P1.0 ORL C,/10H ANL C,12H MOV BIT,C RET 3.已知变量X存于V AR单元,函数值Y存于FUNC单元,按下式编程求Y值。 Y= 10 0 1 x x x > - = 0,Y=1 MOV A,#0FFH ;x<0,Y=-1 SJMP RES POSI:MOV A,#01H RES:MOV FUNC,A RET 4.已知在R2中存放一个压缩的BCD码,请将它拆成二个BCD字节,结果存于SUM开始的 单元中(低位在前)。 4. MOV R0,#SUM MOV A,R2 ANL A,#OFH MOV @R0,A ;存低字节BCD MOV A,R2 ANL A,#0F0H SW AP A 1NC R0 MOV @R0,A ;存高字节BCD RET 5.将存于外部RAM 8000H开始的50H数据传送0010H的区域,请编程实现。 5. MOV DPTR,#8000H MOV R0,#10H MOV R2,#50H LOOP:MOVX A,@DPTR ;取数 MOVX @R0,A ;存数 1NC DPTR 1NC R0 DJNZ R2,LOOP RE T

单片机试题及答案

单片机原理与接口技术习题答案 习题与思考题1 1-1 微型计算机通常由哪些部分组成?各有哪些功能? 答:微型计算机通常由控制器、运算器、存储器、输入/输出接口电路、输入设备和输出设备组成。控制器的功能是负责从内部存储器中取出指令并对指令进行分析、判断、并根据指令发出控制信号,使计算机有条不紊的协调工作;运算器主要完成算数运算和逻辑运算;存储器用于存储程序和数据;输入/输出接口电路完成CPU与外设之间相连;输入和输出设备用于和计算机进行信息交流的输入和输出。 1-2 单片微型计算机与一般微型计算机相比较有哪些区别?有哪些特点? 答:与通用微型计算机相比,单片机的硬件上,具有严格分工的存储器ROM和RAM和I/O端口引脚具有复用功能;软件上,采用面向控制的指令系统和硬件功能具有广泛的通用性,以及品种规格的系列化。单片机还具备体积小、价格低、性能强大、速度快、用途广、灵活性强、可靠性高等特点。 1-3 简述计算机的工作过程。 答:计算机的工作是由微处理器以一定的时序来不断的取指令、指令译码和执行指令的过程。 1-4 单片机的几个重要指标的定义。 答:单片机的重要指标包括位数、存储器、I/O口、速度、工作电压、功耗和温度。 1-5 单片微型计算机主要应用在哪些方面? 答:单片机的主要应用领域有智能化产品、智能化仪表、智能化测控系统、智能化接口等方面。 1-6 为什么说单片微型计算机有较高的性能价格比和抗干扰能力? 答:因为单片微型计算机主要面向特定应用而设计,设计者在硬件和软件上都高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,具备较高的性能、价格比;单片机嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中,另外单片机体积小,可以放入屏蔽设备中,从而使其具有较高的抗干扰能力。 1-7 简述单片机嵌入式系统的定义和特点。 答:单片机嵌入式系统是嵌入到对象体系中的专用计算机系统;其特点是面向特定应用、与各个行业的具体应用相结合、硬件和软件高效率、软件固化在存储器芯片或单片机本身和不具备自举开发能力。 习题与思考题2 2-1 MCS-51单片机内部包含哪些主要功能部件?它们的作用是什么? 答:MCS-51单片机在一块芯片中集成了CPU、RAM、ROM、定时/计数器、多功能I/O口和中断控制等基本功能部件。 单片机的核心部分是CPU,CPU是单片机的大脑和心脏。 程序存储器用于存放编好的程序或表格常数。数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。 定时/计数器实质上是加法计数器,当它对具有固定时间间隔的内部机器周期进行计数时,它是定时器;当它对外部事件进行计数时,它是计数器。 I/O接口的主要功能包括:缓冲与锁存数据、地址译码、信息格式转换、传递状态(外设状态)和发布命令等。 中断控制可以解决CPU与外设之间速度匹配的问题,使单片机可以及时处理系统中许多随机的参数和信息,同时,它也提高了其处理故障与应变能力的能力。 2-2 MCS-51单片机的核心器件是什么?它由哪些部分组成?各部分的主要功能是什么? 答:单片机的核心部分是CPU,可以说CPU是单片机的大脑和心脏。它由运算器、控制器和布尔(位)处理器组成。 运算器是用于对数据进行算术运算和逻辑操作的执行部件。

5 STC15F2K60S2单片机的程序设计 例题

第5章STC15F2K60S2单片机的程序设计 例题 例5.1 分析ORG在下面程序段中的控制作用 ORG 1000H START: MOV R0,#60H MOV R1,#61H …… ORG 1200H NEXT: MOV DPTR,#1000H MOV R2,#70H …… 解:以START开始的程序汇编后机器码从1000H单元开始连续存放,不能超过1200H 单元;以NEXT开始程序汇编后机器码从1200H单元开始连续存放。 例5.2 分析END在下面程序段中的控制作用。 START: MOV A,#30H …… END START NEXT: …… RET 解:汇编程序对该程序进行汇编时,只将END伪指令前面的程序转换为对应的机器代码程序,而以NEXT标号为起始地址的程序将予以忽略。因此,若NEXT标号为起始地址的子程序是本程序的有效子程序的话,应将整个子程序段放到END伪指令的前面。

例5.3 分析下列程序中EQU指令的作用 AA EQU R1 ;给AA赋值R1 DA TA1 EQU 10H ;给DA TA1赋值10H DELAY EQU 2200H ;给DELAY赋值2200H ORG 2000H MOV R0,DATA1 ;R0←(10H) MOV A,AA ;A←(R1) LCALL DELAY ;调用起始地址为2200H的子程序 END 解:经EQU定义后,AA等效于R1,DATA1等效于10H,DELAY等效于2200H,该程序在汇编时,自动将程序中AA换成R1、DATA1换成10H、DELAY换成2200H,再汇编为机器代码程序。 使用赋值伪指令EQU的好处在于程序占用的资源数据符号或寄存器符号用占用源的英文或英文缩写字符名称来定义,后续编程中凡是出现该数据符号或寄存器符号就用该字符名称代替,这样,采用有意义的字符名称进行编程,更容易记忆和不容易混淆,也便于阅读。

51单片机实验程序

3 3 3 用查表方式编写y=x1 +x2 +x3 。(x 为0~9 的整数) #include void main() { int code a[10]={0,1,8,27,64,125,216,343,512,729}; //将0~9 对应的每位数字的三次方的值存入code中,code为程序存储器,当所存的值在0~255 或-128~+127 之间的话就用char ,而现在的值明显超过这个范围,用int 较合适。int 的范围是0~65535 或-32768~32767 。 int y,x1,x2,x3; //此处定义根据习惯,也可写成char x1,x2,x3 但是变量y 一定要用int 来定义。 x1=2; x2=4; x3=9; //x1,x2,x3 三个的值是自定的,只要是0~9 当中的数值皆可,也可重复。 y=a[x1]+a[x2]+a[x3]; while(1); //单片机的程序不能停,这步就相当于无限循环的指令,循环的内容为空白。 } //结果的查询在Keilvision 软件内部,在仿真界面点击右下角(一般初始位置是右下角)的watch 的框架内双击“double-click or F2 to add”文字输入y 后按回车,右侧会显示其16 进制数值如0x34,鼠标右键该十六进制,选择第一行的decimal,可查看对应的10 进制数。 1、有10 个8 位二进制数据,要求对这些数据进行奇偶校验,凡是满足偶校验的 数据(1 的个数为偶数)都要存到内RAM50H 开始的数据区中。试编写有关程序。 #include void main() { int a[10]={0,1,5,20,24,54,64,88,101,105}; // 将所要处理的值存入RAM 中,这些可以根据个人随意设定,但建议不要超过0~255 的范围。 char i; // 定义一个变量 char *q=0x50; // 定义一个指针*q 指向内部0x50 这个地址。 for(i=9;i>=0;i--) //9~0 循环,共十次,也可以用for(i=0;i<10;i++) { ACC=a[i]; //将a[i] 的值赋给累加器ACC if (P==0) //PSW0 位上的奇偶校验位,如果累加器ACC 内数值1 的个数为偶数那么P 为0,若为奇数,P 为1。这里的P 是大写的。 { *q=a[i]; q++; // 每赋一个值,指针挪一个位置指向下一个。 } } while(1); //同实验一,程序不能停。 }

单片机-实验二-分支程序设计实验

实验二实验报告 ·

将00-99的十进制数据转换成二进制进行开关量的输入,L0灯亮 将100的十进制转换为01100010的二进制开关量进行输入,L1灯亮

将101-127的十进制转换为二进制进行开关量的输入,L2灯亮 完整的接线图

实验操作 1、正确连接实验板子和电脑,将点源接入,数据线连接到电脑的USB接口,在电脑端运行 软件,取消勾选模拟器,按照实验装置的名称正确的选择响应的系统。 2、在软件内部按照输入分支程序结构。 3、打开点源开关。 4、调整输入的各个断口的开关量,着重关注在二进制数01100010附近的变化. 5、整理实验器材。 思考题1 写出分支程序设计的要点 分支结构也成为选择结构。在程序中每个分支均为一个程序段。为分支需要,程序设计时不要忘记给程序段的起始地址赋予一个地址标号,以供选择分支使用。 这次实验使用的是一个多分支程序结构,可以通过一系列的JC\JNC\JB\JNB的判断,进行逐级分支。并且可以使用CJNE进行实现。 80C51中没有专门的多分支转移指令,可以使用的变址转移指令“JMP @A+DPTR”,但是这样的指令需要数据表格配合。 思考题2 8051单片机有几个并行口,写出各并行口的特点 8051单片机有4个并行I/O口,分别为P0\P1\P2\P3,以实现数据的并行输入与输出。 这4个并行口均是8为双向口线,各占8个引脚,在P3口线上有着引脚复用,均有第二功能信号,这些第二功能信号都是重要的控制信号,在实际使用中总是先按需要优先选用第二功能,剩下的不用的再当作口线使用。 并行可以有效的提高单片机的工作效率。 思考题3 实验中遇到的苦难 在这个实验中和实验一显著不同的是我们需要重新认识硬件与软件的配合,一些数据线的链接,点源的通断都是我们学习的要点,我们也第一次接触到了输入口和输出口相互之间的区别。 这个实验我们一定要将十进制的思维转换过来转换为二进制的思维,在机器语言中只有开关量的通断,而这个题目也是很好的应用了开关量的通断完成了这个实验。 学会了分支判断方式的编程

51单片机练习题

一.闪烁灯 1.实验任务 如图4.1.1所示:在端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为秒。 2.电路原理图 图4.1.1 3.系统板上硬件连线 把“单片机系统”区域中的端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上。 4.程序设计内容 (1)延时程序的设计方法 作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要 求的闪烁时间间隔为秒,相对于微秒来说,相差太大,所以我们在执行 某一指令时,插入延时程序,来达到我们的要求,但这样的延时程序是 如何设计呢下面具体介绍其原理:

如图4.1.1所示的石英晶体为12MHz,因此,1个机器周期为1微秒机器周期微秒 MOV R6,#20 2个 2 D1: MOV R7,#248 2个22+2×248=49820× DJNZ R7,$ 2个2×248(498 DJNZ R6,D1 2个2×20=40 10002 因此,上面的延时程序时间为。 由以上可知,当R6=10、R7=248时,延时5ms,R6=20、R7=248时,延时10ms,以此为基本的计时单位。如本实验要求秒=200ms,10ms×R5 =200ms,则R5=20,延时子程序如下: DELAY: MOV R5,#20 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET (2).输出控制 如图1所示,当端口输出高电平,即=1时,根据发光二极管的单向导 电性可知,这时发光二极管L1熄灭;当端口输出低电平,即=0时,发 光二极管L1亮;我们可以使用SETB指令使端口输出高电平,使用CLR 指令使端口输出低电平。 5.程序框图

程序烧录工艺

程序烧录工艺 一、目的:规范模块烧录操作程序,使烧录过程标准化。 二、烧录设备: 硬件 计算机一台 烧录驱动板一块 计算机与烧录驱动板连线一根 烧录线一根 软件 USB转串口驱动软件(已安装)一套 烧录程序(已安装)一套 模块程序 三、烧录过程 1.连接方法如图1所示 图1 2.打开计算机,使计算机处于正常工作状态,用鼠标双击桌面DIR K150 烧录程序图标,运行烧录程序; 3.进入图2界面

图2 在红圈内显示具体COM口序号时,连接正常,如果红圈内显示COMX并弹出图3窗口时,应检查连线是否正常牢固连接,USB转串口驱动软件有没有运行,检查完毕,点击“文件”→“选择串口”→“输入串口编号”→“x”→点击“ok”,如图4,当界面返回到图2状态,红圈内出现串口数值时,进入下一道工序。 图3

图4 4.载入模块程序,操作方法如图5所示。点击“载入”→“查找范围”→“模块程序”→“打开”,进入图6界面。 图5

图6 5.模式设置:点击“设置”→在下拉窗口中选择“ICSP模式(I)”,界 面如图7所示。 图7 6.配置位设置:点击图8红圈“配置位”→弹出图9窗口,将掉电监测选 择为“开”如图10→点击“ok”,返回图7界面。

图8 7.将烧录线与模块相连,正确方法如图1所示,点击“”→ 选择弹出窗口图11中的“擦除”→并点击“ok”→点击弹出窗口图 12中的“”→点击弹出窗口图13中的“ok”返回图7界面。 图9 图10

图11 图12 图13 8.点击“”→选择弹出窗口图13中的“”→点击 新弹出窗口图14中的“”→进入图15中的界面,等待10秒左右,当弹出图16界面时,点击“”返回图7界面。 9.该模块板程序烧录完成,去除模块板连线,放入合格品箱内,烧录不成 功的,做好不合格标记,放在不合格处,维修后,重新烧录。 敏旺科技品质保证部 2014-4-21

单片机选择题题库

一.单项选择题(从以下四个选项中选出一个正确答案,多选,错选不给分)。 1.MCS-52子系列与MCS-51子系列相比,下列说法错误的是( ) A.片内ROM从4KB增加到8KB B.片内RAM从128位增加到256位 C.定时/计数器从2个增加到3个 D.xx源从5个增加到6个 2.若PSW.4=0,PSW.3=1,现在需要保存R1的内容,可执行( )指令。 A.PUSH R1 B.PUSH @R1 C.PUSH 01H D.PUSH 09H 3.下列指令不是变址寻址方式的是( ) A.JMP @A+DPTR B.MOVC A,@A+PC C.MOVX A,@DPTR D.MOVC A,@A+DPTR 4.MCS-51单片机有片内ROM容量( ) A. 4KB B. 8KB C. 128B

5.MCS-51单片机的位寻址区位于内部RAM的( )单元。 A. 00H—7FH B. 20H—7FH C. 00H—1FH D. 20H—2FH 6.MCS-51单片机的串行中断入口地址为( ) A. 0003H B. 0013H C. 0023H D. 0033H 7.MCS-51单片机的最小时序定时单位是( ) A.状态 B.拍节 C.机器周期 D.指令周期 8.若MCS-51单片机采用6MHz的晶振,其复位高电平脉冲时间应该超过( )。 A. 2S B. 4S C. 2mS

9.程序状态字PSW的( )位为1时,表示带符号数加减运算中,累加器A 产生了溢出。 A. CY B. ACC C. OV D. P 10.MCS-51单片机的RS1,RS0=11时,当前寄存器R0—R7占用内部 RAM( )单元。 A. 00H—07H B. 08H—0FH C. 10H—17H D. 18H—1FH 11.MCS-51单片机有片内RAM容量( )。 A. 4KB B. 8KB C. 128B D. 256B 12.MCS-51单片机的外部中断0中断入口地址为( )。 A. 0003H B. 000BH C. 0013H

单片机习题答案(1章-9章)

第2章习题参考答案 2-1 MCS-51系列单片机内部有哪些主要的逻辑部件? 答:一个8位CPU;一个片内振荡器及时钟电路;4K字节ROM程序存储器;128字节RAM数据存储器;两个16位定时器/计数器;可寻址64K外部数据存储器和64K外部程序存储器空间的控制电路;32条可编程的I/O线(四个8位并行I/O端口);一个可编程全双工串行口;具有五个中断源、两个优先级嵌套中断结构 2-2 MCS-51设有4个8位端口(32条I/O线),实际应用中8位数据信息由哪一个端口传送?16位地址线怎样形成?P3口有何功能? 答:实际应用中8位数据信息由P1口传送。16位地址线由P0口输出低8位地址A7~A0,P2口输出高8位地址A15~A8。P3口是一个多用途的端口,也是一个准双向口,作为第一功能使用时,其功能同P1口;当作第二功能使用时,P3.0—RXD串行输入(数据接收)口,P3.1—TXD串行输出(数据发送)口,P3.2—外部中断0输入线,P3.3—外部中断1输入线,P3.4—T0定时器0外部输入,P3.5—T1定时器1外部输入,P3.6—WR外部数据存储器写选通信号输出,P3.7—外部数据存储器读选通信号输入。 2-3 MCS-51的存储器结构与一般的微型计算机有何不同?程序存储器和数据存储器各有何作用? 答:MCS-51存储器结构与常见的微型计算机的配置方式不同,它把程序存储器和数据存储器分开,各有自已的寻址系统、控制信号和功能。 程序存储器用来存放程序和始终要保留的常数,如经汇编后所编程序的机器码。数据存储器通常用来存放程序运行中所需要的常数或变量,例如模/数转换时实时采集的数据等。2-4 MCS-51内部RAM区功能结构如何分配?4组工作寄存器使用时如何选用?位寻址区域的字节地址范围是多少? 答:MCS-51系列单片机内部数据存储器:00H ~ 7FH单元组成的低128字节地址空间的RAM 区,又分为为工作寄存器区(00H~1FH)、位寻址区(20H~2FH)和数据缓冲区(30H~7FH)。80H ~ FFH(128 ~255)单元组成的高128字节地址空间的特殊功能寄存器(又称SFR)区。对于8032、8052、8752的单片机还有80H~FFH单元组成的高128字节地址空间的RAM区。 4组工作寄存区是由程序状态字PSW(特殊功能寄存器,字节地址为0D0H)中的D4、D3 位寻址区域的字节地址范围是20H~2FH(对应的位地址范围是00H~7FH)。 2-5 特殊功能寄存器中哪些寄存器可以位寻址?它们的字节地址是什么? 答:P0字节地址80H,TCON字节地址88H,P1字节地址90H,SCON字节地址98H,P2字节地址A0H,IE字节地址A8H,P3字节地址B0H,IP字节地址B8H,PSW字节地址D0H,ACC字节地址E0H,B字节地址F0H。 2-6 简述程序状态字PSW中各位的含义。 答:CY(PSW·7)进位标志,AC(PSW·6)辅助进位标志,F0(PSW·5)用户标志位RS1、RS0(PSW·4、PSW·3)寄存器区选择控制位,OV(PSW·2)溢出标志,P(PSW.0)奇偶标志,每个指令周期都由硬件来置位或清“0”,以表示累加器A 中1的位数的奇偶数 2-7 一个时钟频率为6MHz的单片机应用系统,它的时钟周期、机器周期、指令周期分别是

北京交通大学单片机实验程序报告

单片机实验程序

实验二8155并行I/O口扩展和动态扫描程序编制 1.实验目的 (1)掌握8155并行I/O芯片扩展和使用方法 (2)掌握数码管动态扫描汇编语言的编制方法 2.预习要点 (1)8155芯片基础知识 (2)51单片机的总线时序、地址译码的原理 (3)数码管动态扫描显示方法 3.实验设备 计算机、单片机实验箱。 4.实验内容 基本要求: 通过实验板的上的8155(U16)显示电路(在电路板上已经固定连接字形和字位控制线的8155部分),并通过跳线确定8155的地址,在8个LED数码管上依次动态显示数字1~8。 扩展要求: 假定30H~33H的存储单元内容为4个字节16进制数,请依序将他们显示在8个LED数码管上 根据程序要求做如下程序流程图: 主程序流程图:

显示子程序流程框图: 基本要求编程如下: ORG 0000H

AJMP MAIN ORG 0050H MAIN: MOV SP,#60H ;压栈 MOV DPTR, #4100H MOV A,#0FH ;方式控制字0FH送A MOVX @DPTR, A ;8155初始化 MOV 70H,#01H ;设置显示缓冲区 MOV 71H,#02H MOV 72H,#03H MOV 73H,#04H MOV 74H,#05H MOV 75H,#06H MOV 76H,#07H MOV 77H,#08H LOOP: ACALL DISPLAY ;循环调用显示子程序AJMP LOOP DISPLAY: MOV R0,#70H ;显示缓冲区首地址送R0 MOV R3,#0FEH ;字位控制初值送R3

《单片机》读程序题题库答案

四、阅读下列程序,注释并填写指令执行后的结果(每题10分) 1、 ORG 0 LJMP START ;跳转到(PC)=0030H处 ORG 30H START:MOV R0,#20H ;#20H->R0 (R0)=20H MOV R1,#30H ; #30H->R1 (R1)=30H MOV A,R0 ;(R0)->A (A)=20H ADD A,#36H ;(A)+#36H->A (A)=56H MOV P1,A ;(A)->P1 (P1)=56H INC R0 ;(R0)+1->R0 (R0)=21H INC R1 ;(R1)+1->R0 (R1)=31H ANL A,R1 ;(A)&(R1)->A (A)=10H SWAP A ;累加器A的高低4位交换 (A)=01H PUSH ACC ;累加器A内容压栈 MOV P1,A ;(A)->P1 (P1)=01H POP B ;堆栈内容出栈到B寄存器 (B)=01H MOV R0,A ;(A)->R0 (R0)=01H MOV DPTR,#2200H ;#2200H->DPTR (DPTR)=2200H SETB C ;1->Cy (Cy)=1 ADDC A,#0 ;(A)+0+(Cy)->A (A)=02H MOVX @DPTR,A ;(A)->(DPTR) (2200H)=02H END (R0)= 01H (R1)= 31H (P1)= 01H (B)= 01H (2200H)= 02H 2、 ORG 0 LJMP START ;跳转到(PC)=0030H处 ORG 30H START:MOV SP,#50H ;#50H->SP (SP)=50H MOV R2,#10H ;#10H->R2 (R2)=10H MOV DPTR,#3000H ;#3000H->DPTR (DPTR)=3000H CRL A ;0->A (A)=0 LOOP: MOVX @DPTR,A ;(A)->(DPTR) INC DPTR ;(DPTR)+1->DPTR DJNZ R2,LOOP ;(R2)-1->R2 若(R2)不等于零则转移到LOOP处 INC DPH ;(DPH)+1->DPH (DPH)=31H (R2)=00H (DPL)=10H INC DPH ;(DPH)+1->DPH (DPH)=32H MOV 20H,#36H ;#36H->(20H) (20H)=36H SETB 00H ;位地址00H置1 20H.0=1 (20H)=37H MOV A,20H ;(20H)->A (A)=37H MOVX @DPTR,A ;(A)->(DPTR) (DPTR)=3210H (3210H)=37H INC A ;(A)+1->A (A)=38H INC A ;(A)+1->A (A)=39H PUSH ACC ;累加器A内容压栈 (SP)=51H XCH A,R2 ;累加器A的内容与R2内容互换 (A)=00H (R2)=39H POP DPH ;堆栈内容弹到DPH (DPH)=39H

单片机程序分析

有一长度为10字节的字符串存放在8031单片机内部RAM中,其首地址为40H。要求将该字符串中每一个字符加偶校验位。(以调用子程序的方法来实现。) 源程序如下: ORG 1000H MOV R0,#40H MOV R7,#10 NEXT:MOV A,① ACALL SEPA MOV @R0,A INC R0 DJNZ ②,NEXT SJMP $ SEPA:ADD A,#00H ③PSW.0,SRET ORL A,④ SRET:⑤ ① @R0 ② R7 ③ JNB ④ #80H ⑤ RET 4设内部RAM(30H)=5AH,(5AH)=40H,(40H)=00H,端口P1=7FH,问执行下列指令后,各有关存储单元(即R0,R1,A,B,P1,30H,40H及5AH单元)的内容如何?(8分) MOV R0,#30H ;R0=30H MOV A,@R0 ;A=5AH MOV R1,A ;R1=5AH MOV B,R1 ;B=5AH MOV @R1,P1 ;(5AH)=7FH MOV A,P1 ;A=7FH MOV 40H,#20H ;(40H)=20H MOV 30H,40H ;(30H)=20H 解:每一条指令执行后的结果如注释字段所标。最后结果为:R0=30H,R1=5AH,A=7FH,B=5AH,P1=7FH,(30H)=20H,(40H)=20H,(5AH)=7FH。 四、程序阅读与分析题 1、试阅读下面的程序,指出该程序结束后累加器ACC和寄存器TH0的值,并说明该程序完成了怎样的功能。ORG 0000H MOV SP,#60H MOV A,#10H MOV TH0,#20H PUSH ACC PUSH TH0 POP ACC POP TH0 END 答:利用堆栈交换了ACC和TH0的内容,(A)=20H,(TH0)=10H

相关主题
文本预览
相关文档 最新文档