文档库 最新最全的文档下载
当前位置:文档库 › STC-单片机ADC应用

STC-单片机ADC应用

STC-单片机ADC应用
STC-单片机ADC应用

ORG 0000H

LJMP MAIN

ORG 0000H

MAIN:

MOV SP,#70H ;设置堆栈

MOV P1ASF,#02H ;设置Pl.1为模拟量输入功能

MOV ADC_CONTR,#81H ;打开A /D转换电源,设置输入通道

MOV A,#20H

LCALL DELAY ;打开A /D转换电源后,延时1 ms即可LOOP:

MOV ADC_ CONTR,#10001001B ;启动A/D转换

NOP ;适当延时,确保设置有效

NOP

NOP

NOP

WAIT_AD:

MOV A,ADC_CONTR

JNB ACC.4, WAIT_AD ;判断A/D转换是否完成

MOV ADC_ CONTR,#81H ;将ADC_FLAG清零

MOV A, ADC_RES ;读取A/D转换结果

POP 02

RET

END

C51语言参考程序如下:

# include " STC15F2K60S2. h" //包含STC15F2K60S2单片机寄存器定义文件unsigned char data adc_data _at_ 0x30;//定义(保存A/D转换结果)绝对地址变量

void main(void)

{

unsigned long i;

unsigned char status;

P1ASF = 0x02 ; //设置Pl..1为模拟量输入功能

ADC _CONTR= 0x81; // 打开A /D转换电源,设置输入通道

for (i = 0;i <10000; i++ );

while(l)

{

ADC_CONTR=0x89;//启动A/D转换

_NOP_();

_NOP_();

解:设置ADRJ=1,转换结束后,ADC_ RES的低2位为转换结果的最高2位,ADC_ RESL为转换结果的低8位。

汇编语言参考程序如下:

$INCLUDE (STC152K60S2. INC)

ADC_DA TAH EQU 31H ;定义A/D转换结果高2位存储变量

ADC_DA TAL EQU 30H ;定义A/D转换结果低8位存储变量

ORG 0000H

LJMP MAIN

ORG 002BH

LJMP ADC_ISR ;ADC中断矢量入口

ORG 0050H

MAIN:

MOV SP,#70H ;设置堆栈

MOV P1ASF,#02H ;设置Pl.1为模拟量输入功能

MOV ADC_CONTR,#81H ;打开A /D转换电源,设置输入通道

MOV A,#20H

LCALL DELAY ;开A/D转换电源后要加适当延时,1ms即可

ORL CLK_DIV,#20H ;设置A/D转换结果存储格式(ADR为1)

SETB EADC ;开放ADC中断

SETB EA ;开放CPU总中断

MOV R4,A ;取最外循环的循环次数

DELAY_LOOP0:

MOV R3,#200

DELAY_LOOP1:

MOV R2,#249

DELAY_LOOP:

DJNZ R2,DELAY_ LOOP

DJNZ R3,DELAY_LOOP1

DJNZ R4,DELAY_LOOP0

POP 04 ;恢复现场

POP 03

POP 02

RET

END

C51语言参考程序如下:

# include "STC152K60S2. h" //包含STC15F2K60S2单片机寄存器定义文件unsigned char data adc_datah _at_ 0x31;//定义(保存A/D转换结果)绝对地址变量unsigned char data adc_datal _at_ 0x30;//定义(保存A/D转换结果)绝对地址变量void main(void)

P2 =~adc_datal;//转换结果低8位送P3口LED灯显示ADC_CONTR =0x89;//重新启动A D转换

}

单片机原理及应用技术苏家建曹柏荣汪志锋课后习题参考答案

单片机原理及应用技术苏家建 课后习题参考答案 第三章MCS-51指令系统 3-1 MCS-51指令系统有哪几种寻址方式?按功能分类有哪几种指令? 3-2 设A=0FH,R0=30H,片内RAM的(30H)=0AH, (31H)=0BH, (32H)=0CH,下列程序段运行后的结果? MOV A,@R0 ;A=0AH MOV @R0,32H ;(30H)=0CH MOV 32H,A ;(32H)=0AH MOV R0,#31H ;R0=31H MOV A,@R0;A=(31H)=0BH 3-3 (1)R0的内容传送到R1 MOV A,R0 MOV R1,A (2)内部RAM 20H单元的内容传送到A MOV A,20H (3)外部RAM 30H单元的内容传送到R0 MOV R1,#30H MOVX A,@R1 MOV R0,A (4) 外部RAM 30H单元的内容传送到内部RAM 20H单元 MOV R1,#30H MOVX A,@R1 MOV 20H,A (5) 外部RAM 1000H单元的内容传送到内部RAM 20H单元 MOV DPTR,#1000H MOVX A,@DPTR MOV 20H,A (6)程序存储器ROM 2000H单元的内容传送到R1 MOV DPTR,#2000H CLR A MOVC A,@A+DPTR MOV R1,A (7) RAM 2000H单元的内容传送到内部RAM 20H单元 MOV DPTR,#2000H MOVX A,@DPTR MOV 20H,A (8) RAM 2000H单元的内容传送到外部RAM 30H单元 MOV DPTR,#2000H MOVX A,@DPTR MOV R0,#30H MOVX @R0,A (9) RAM 2000H单元的内容传送到外部RAM 1000H单元

单片机原理及应用 设计报告

单片机设计报告 编写:HUBU2015级通信工程xmx 2017年5月23日 一、设计的目的与要求 利用8*8LED点阵动态显示汉字的字样。采用STC89C52单片机作为整个控制搭电路的核心,并编制软件程序,实现汉字的显示。通过此设计来巩固单片机硬件系统的设计及软件系统的编程,通过设计将平时所学知识付诸实践,提高动手能力。 1、设计一个8*8点阵LED电子显示屏。 2、要求在目测条件下LED显示屏各点亮度均匀、充足,可显示一个“大”字。 二、总体方案设计 2.1 硬件电路的总体设计 1、设计总体框图 硬件电路的设计框图如图1所示。硬件电路结构由8个部分组成:时钟电路、复位电路、按键接口电路、电源电路、点阵显示阳极电路、点阵显示阴极电路和8*8点阵显示电路。 2、工作原理 由于是8*8点阵屏设计,需要端口16个,可采用静态显示模式,用P0口控制行,P1口控制列,通过软件编程,即可实现汉字的显示。

3、元器件清单 2.2系统软件的设计 软件程序主要由开始、初始化、主程序、字库和延时子程序组成。 三、系统硬件电路的具体设计 3.1 时钟电路 STC89C52单片机内部的振荡电路是一个高增益反向放大器,引线X1和X2分别是放大器的输入端和输出端。单片机内部虽然有振荡电路,但要形成时钟,外部还需附加电路。STC89C52的时钟产生方式有两种:内部时钟电方式和外部时钟方式。由于外部时钟方式用于多片单片机组成的系统中,所以此处选用内部时钟方式。

内部时钟方式:利用其内部的振荡电路在X1和X2引线上外接定时元件,内部振荡电路产生自激振荡。最常用的是在 X1和X2之间接晶体振荡器与电路构成稳定的自激振荡器,如图4所示电路所示为单片机最常用的时钟振荡电路的接法,其中晶振可选用振荡频率为12MHz的石英晶体,电容器一般选择30PF 左右 3.2 复位电路 单片机在启动运行时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作。另外,在单片机工作过程中,如果出现死机时,也必须对单片机进行复位,使其重新开始工作。本设计中采用按键复位电路,上电瞬间,RC电路充电,RST引线端出现正脉冲,只要RST端保持10ms以上的高电平,就能使单片机有效地复位。其中R1选择10KΩ左右的电阻,电容器一般选择10μF。 3.3显示电路的设计 本次设计中采用8*8点阵LED显示器,简称LED点阵板或LED矩阵板。它是以发光二极管为像素,按照行与列的顺序排列起来,用集成工艺制成的显示器件。有单色和双色之分,这种显示器有共阳极接法和共阴极接法两种。设计中用到的是“列共阳,行共阴”,即“列用高电平控制,行用低电平控制”。图中画

单片机原理与应用技术教学大纲

《单片机原理与应用技术》教学大纲 一、课程名称 单片机原理与应用技术 二、先修课程 电子技术类基础课程和微机应用类基础课程 三、课程性质与任务 课程性质: 本课程是高职高专电子类相关专业的的一门专业课程。本大纲可作为(高中后大专、对口单招、五年制高职)层次学生的教学参考。 课程的任务: 它以MCS-51单片机为例,详细介绍片内结构、工作原理、接口技术和单片机在各领域中的应用。为学生进一步学习微机在智能仪表、工业控制领域中的应用技术奠定必要的基础。 四、课程教学目标 1、知识目标 (1)熟练掌握单片机内部硬件结构、工作原理及指令系统,掌握程序的设计基本方法,能够较熟练地设计常用的汇编语言源程序; (2)掌握单片机的接口技术,熟悉常用的外围接口芯片及典型电路。 (3)熟悉设计、调试单片机的应用系统的一般方法,具有初步的软、硬件设计能力。 (4)能够熟练地掌握一种单片机开发系统的使用方法。 2、能力目标 初步具备应用单片机进行设备技术改造、产品开发的能力。 五、教学内容 第一章微机基础知识 (一)教学目的 熟悉微处理器、微型机和单片机的概念及组成。掌握计算中常用数制及数制间的转换,了解BCD码和ASCII码。熟悉数据在计算机中的表示方法。 (二)教学重点与难点 重点:

计算中常用数制及数制间的转换。 难点: 微处理器、微型机和单片机的概念及组成,微机的工作过程 (三)教学内容 1、微处理器、微机和单片机的概念; 2、微机的工作过程。 (四)本章小结 1、数制有二进制、十进制、十六进制等。 2、计算机系统中常包含有地址总线、数据总线、控制总线 3、微处理器是由运算器、控制器两部组成 4、单片机是由输入、输出、接口电路、时钟电路、存储器、运算器、控 制器几部分组成 (五)思考题 1、试用计算机汇编语言指令完成12*34+56÷7-8的计算步骤? 第二章 MCS-51单片机的结构和原理 (一)教学目的 熟悉MCS- 51单片机内部结构、引脚功能以及单片机执行指令的时序;掌握单片机存储器结构和输入/输出端口结构特点。掌握堆栈的使用。 (二)教学重点与难点 重点: 1、8051的存储器配置及特点; 2、21个特殊功能寄存器(SFR)的功能; 3、堆栈的概念; 4、复位电路。 难点: 1、MCS- 51单片机内部结构; 2、CPU时序。 (三)教学内容

单片机原理及应用设计(胡辉主编)

第 第第 第6 66 6章 章章 章 单片机的定时器 单片机的定时器单片机的定时器 单片机的定时器/ // /计数器 计数器计数器 计数器 习题 习题习题 习题 1.MCS-51系列的8051单片机内有几个定时/计数器?每个定时/计数器有几种 工作方式?如何选择? 答:MCS-51系列的8051单片机内有2个定时/计数器,即T0和T1,每个都可以编程为定时器或计数器,T0有四种工作方式(方式0—13位、方式1—16位、方 式2-可自动装入初值的8位、方式3-两个8位),T1有三种工作方式(与T0相 同的前三种),通过对TMOD的设置选择,其高四位选择T1,低四位选择T0。2.如果采用的晶振频率为3MHz,定时/计数器TO分别工作在方式0、1和2下,其最大的定时时间各为多少? 答:如果采用的晶振频率为3MHz,机器周期为12×1/(3*106)=4us,由于定时/ 计数器TO工作在方式0、1和2时,其最大的计数次数为8192、65536和256 所以,其最大定时时间分别是:方式0为8192×4us=32.768ms、方式1为65536 ×4us=262.144ms、方式2为256×4us=1024us。 3.定时/计数器TO作为计数器使用时,其计数频率不能超过晶振频率的多少?答:由于定时/计数器TO作为计数器使用时,是对外部引脚输入的脉冲进行计数,CPU在每个机器周期采样一次引脚,当前一次采样为高电平,后一次采样为低电平,则为一次有效计数脉冲,所以如果晶振频率为fosc,则其采样频率fosc/12,两次采样才能决定一次计数有效,所以计数频率不能超过fosc/24。 4.简单说明定时/计数器在不同工作模式下的特点。 答:方式0为13位的定时/计数器,由THx的8位和TLx的低5位构成、方式1 为16位的定时/计数器,由THx的8位和TLx的8位构成,方式2为8位的定时/ 计数器,TLx为加1计数器,THx为计数初值寄存器。方式3只能用于T0,是将 T0的低8位用作一个独立的定时/计数器,而高8位的TH0用作一个独立的定时

STC89C52RC单片机用户手册

STC89C52RC单片机介绍 STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。 主要特性如下: 1.增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意 选择,指令代码完全兼容传统8051. 2.工作电压:5.5V~ 3.3V(5V单片机)/3.8V~2.0V(3V单片机) 3.工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作 频率可达48MHz 4.用户应用程序空间为8K字节 5.片上集成512字节RAM 6.通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉, P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O口用时,需加上拉电阻。 7.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无 需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序,数秒即可完成一片 8.具有EEPROM功能 9.具有看门狗功能 10.共3个16位定时器/计数器。即定时器T0、T1、T2 11.外部中断4路,下降沿中断或低电平触发电路,Power Down模式可 由外部中断低电平触发中断方式唤醒 12.通用异步串行口(UART),还可用定时器软件实现多个UART 13.工作温度范围:-40~+85℃(工业级)/0~75℃(商业级) 14.PDIP封装 STC89C52RC单片机的工作模式 掉电模式:典型功耗<0.1μA,可由外部中断唤醒,中断返回后,继续执行原程序

单片机原理及应用(答案)

1:单片机8031的XTAL1和XTAL2引脚是()引脚。 1.外接定时器 2.外接串行口 3.外接中断 4.外接晶振 2:LU表示()。 1.累加器 2.程序状态字寄存器 3.计数器 4.算术逻辑部件 3:单片机上电复位后,PC的内容和SP的内容为()。 1.0000H,00H 2.0000H,07H 3.0003H,07H 4.0800H,08H 4:8031单片机的定时器T1用作定时方式时是()。 1.由内部时钟频率定时,一个时钟周期加1 2.由内部时钟频率定时,一个机器周期加1 3.由外部时钟频率定时,一个时钟周期加1 4.由外部时钟频率定时,一个机器周期加1 5:INTEL8031的P0口,当使用外部存贮存器时它是一个()。 1.传输高8位地址口 2.传输低8位地址口 3.传输高8位数据口 4.传输低8位地址/数据口 6:当需要从MCS-51单片机程序存储器取数据时,采用的指令为() 1.MOV A, @R1 2.MOVC A, @A + DPTR 3.MOVX A, @ R0 4.MOVX A, @ DPTR 7:若PSW的RS1/RS0=10则单片机工作寄存器工作在()。 1.0区 2.1区

3.2区 4.3区 8:假定设置堆栈指针SP的值为37H,在进行子程序调用时把断点地址进栈保护后,SP的值为()。 1.6H 2.37H 3.38H 4.39H 9:单片机上电复位后,堆栈区的最大允许范围是个单元。 1.64 2.120 3.128 4.256 10:在MCS-51指令中,下列指令中()是无条件转移指令。 1.LCALL addr16 2.DJNZ direct,rel 3.SJMP rel 4.ACALL addr11 11:INTEL 8031的P0口,当使用外部存贮存器时它是一个()。 1.传输高8位地址口 2.传输低8位地址口 3.传输高8位数据口 4.传输低8位地址/数据口 12:单片机中的程序计数器PC用来()。 1.存放指令 2.存放正在执行的指令地址 3.存放下一条指令地址 4.存放上一条指令地址 13:8051单片机中,输入/输出引脚中用于专门的第二功能的引脚是()。 1.P0 2.P1 3.P2 4.P3

stc系列单片机μCOSⅡ在C8051F系列单片机上的移植及其应用系统开发

stc系列单片机μCOSⅡ在C8051F系列单片机上的移植及其 应用系统开发 随着微处理器技术的飞速发展和嵌入式系统实时性要求的不断提高,应用实时多任务操作系统(RTOS)作为嵌入式设计的开发平台已逐步成为嵌入式应用设计的主流。本研究讨论将μC/OS-Ⅱ移植到C8051F系列高性能8位单片机中,并以C8051F060为例阐述了其应用系统的开发过程。 一、μC/OS-Ⅱ的基本工作原理 1.任务管理 ?C/OS-II中的任务可以是一个无限的循环,也可以在一次执行完毕后被“删除”掉,即该任务可以认为CPU完全属于该任务本身,实时应用程序的设计过程包括将问题分割为多个任务。?C/OS-II可以管理64个任务,每个任务有一定的优先级,且优先级不重复。 2.任务调度机制的实现 ?C/OS-II是可剥夺型内核,优先级高的任务一旦就绪就能剥夺优先级较低任务的CPU使用权,这提高了系统的实时响应能力。在没

有中断情况下,任务间的切换一般会调用OSSched()函数。?C/OS-II 的中断服务子程序和一般前/后台的操作有所不同。 3.任务之间的通信 在?C/OS-II中,可以通过信号量、消息邮箱和消息队列等机制,实现数据共享和任务通信。消息邮箱用一个指针型变量,一个任务或一个中断服务子程序通过内核服务,将一则消息放入邮箱,一个或多个任务通过内核服务接受这则消息。每个邮箱有相应的等待消息任务表,等待消息的任务在无消息时被置挂起态,并记入邮箱等待消息任务表中。消息放入邮箱,内核将运行等待消息任务表中优先级最高的任务。 二、移植及应用 C8051F060系列单片机特别适用于任务繁重的小型化测控系统。当芯片具有的功能被较多地使用时,系统要处理的任务就较多,编程头绪也多。为了简化应用程序实现程序模块化,提高应用程序的实时性和可靠性,将μCOS2Ⅱ移植到C8051F060中就成为一件很有意义的事。 1.?C/OS-II的移植

单片机原理及应用第三版张毅刚章全

第1章思考题及习题1参考答案 一、填空 1.除了单片机这一名称之外,单片机还可称为或。答:微控制器,嵌入式控制器. 2.单片机与普通微型计算机的不同之处在于其将、、和三部分,通过内部连接在一起,集成于 一块芯片上。答:CPU、存储器、I/O口、总线 3.AT89S52单片机工作频率上限为MHz。答:33MHz。 4.专用单片机已使系统结构最简化、软硬件资源利用最优化,从而大大降低和提高。答:成 本,可靠性。 二、单选 1.单片机内部数据之所以用二进制形式表示,主要是?? A.为了编程方便??? B.受器件的物理性能限制?? C.为了通用性?? D.为了提高运算速度?? 答:B 2.在家用电器中使用单片机应属于微计算机的。 A.辅助设计应用B.测量、控制应用 C.数值计算应用D.数据处理应用 答:B 3.下面的哪一项应用,不属于单片机的应用范围。 A.工业控制B.家用电器的控制C.数据库管理D.汽车电子设备 答:C 三、判断对错 1.STC系列单片机是8051内核的单片机。对 2.AT89S52与AT89S51相比,片内多出了4KB的Flash程序存储器、128B的RAM、1个中断源、 1个定时器(且具有捕捉功能)。对 3.单片机是一种CPU。错 4.AT89S52单片机是微处理器。错 5.AT89C52片内的Flash程序存储器可在线写入,而AT89S52则不能。错

6.为AT89C51单片机设计的应用系统板,可将芯片AT89C51直接用芯片AT89S51替换。对 7.为AT89S51单片机设计的应用系统板,可将芯片AT89S51直接用芯片AT89S52替换。对 8.单片机的功能侧重于测量和控制,而复杂的数字信号处理运算及高速的测控功能则是DSP 的长处。对 四、简答 1.微处理器、微计算机、微处理机、CPU、单片机、嵌入式处理器它们之间有何区别? 答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。 2.AT89S51单片机相当于MCS-51系列单片机中的哪一型号的产品?“S”的含义是什么? 答:相当于MCS-51系列中的87C51,只不过是AT89S51芯片内的4K字节Flash存储器取代了87C51片内的4K字节的EPROM。 3.单片机可分为商用、工业用、汽车用以及军用产品,它们的使用温度范围各为多少? 答:商用:温度范围为0~+70℃;工业用:温度范围为-40~+85℃;汽车用:温度范围为-40~+125℃;军用:温度范围为-55~+150℃。 4.解释什么是单片机的在系统编程(ISP)与在线应用编程(IAP)。 答:单片机的在系统编程ISP(InSystemProgram),也称在线编程,只需一条与PC机USB 口或串口相连的ISP下载线,就可把仿真调试通过的程序代码从PC机在线写入单片机的Flash 存储器内,省去了编程器。在线应用编程(IAP)就是可将单片机的闪存内的应用程序在线修改升级。 5.什么是“嵌入式系统”?系统中嵌入了单片机作为控制器,是否可称其为“嵌入式系统”? 答:广义上讲,凡是系统中嵌入了“嵌入式处理器”,如单片机、DSP、嵌入式微处理器,都称其为“嵌入式系统”。但多数人把“嵌入”嵌入式微处理器的系统,称为“嵌入式系统”。目前“嵌入式系统”还没有一个严格和权威的定义。目前人们所说的“嵌入式系统”,多指后者。 6.嵌入式处理器家族中的单片机、DSP、嵌入式微处理器各有何特点?它们的应用领域有何不 同? 答:单片机体积小、价格低且易于掌握和普及,很容易嵌入到各种通用目的的系统中,实现各种方式的检测和控制。单片机在嵌入式处理器市场占有率最高,最大特点是价格低,

STC51单片机IO口模式快速设置

STC51单片机IO口模式的快速设置新型51单片机STC系列,较传统51单片机在性能和速度上有根本性的提高。速度提高8—12倍;片上RAM大量增加;片上外围模块大量增加,等等。 其中IO口的模式增加为4种(传统51只有1中),以P0口为例:这里,每个端口新增两个寄存器PxM0, PxM1(x=0,1,2,3)。在设置每一个IO端的模式时都需要对这两个寄存器进行操作。 比如:要将设为推挽输出, 设为准双向口, 设为高阻输入; 设为开路模式, 都设为准双向口, 那么需要如下的代码: IO_Init() { P0M0=0x30;//0011 0000 P0M1=0x90;//1001 0000 } 这样的设置不便于记忆,很容易写错,且写好的代码可读性差,为此,我们可以通过一个宏定义来解决,具体如下: #define PORT0 0 #define PORT1 1 #define PORT2 2 #define PORT3 3 #define BIT0 0 #define BIT1 1 #define BIT2 2

#define BIT3 3 #define BIT4 4 #define BIT5 5 #define BIT6 6 #define BIT7 7 #define STANDARD 0 #define PP_OUT 1 #define Z_IN 2 #define OD 3 #define IOMODE(Port,bit_n,mode) { \ switch(Port)\ {\ case 0:\ switch(mode) { \ case STANDARD: P0M0&=~(1<

单片机原理及应用系统设计课后参考答案

0001 0001 0736 0361 JK3Q HDJ3 单片机课后部分参考答案 P59第三章 9、(A)=70H (R0)=58H (40H)=58H (58H)=70H 10、 12、(1) MOV R2,70H (2) MOV A, R1 MOV R2,A (3) MOV DPTR,#1234H MOVX A,@DPTR MOV 70H,A (4) MOV DPTR,#2000H MOV A,#00H MOVC A,@A+DPTR MOV R4,A (5) MOV DPTR,#2000H CLR A MOVC A,@A+DPTR MOV DPTR,#1234H MOVX @DPTR,A 13、XCH A,50H ;(A)=87H (50H)=35H PUSH 50H POP ACC ;(A)=35H MOV A,#12H ;(A)=12H XCHD A,@R1 ;(A)=15H (50H)=32H 15、MOV A,#34H MOV R0,#9AH ADD A,R0 MOV R3,A MOV A,#12H MOV R0,#78H ADDC A,R0 MOV R2,A 16、CLR C MOV A,#78H

MOV R1,#3FH SUBB A,R1 MOV R3,A MOV A,#56H MOV R1,#20H SUBB A,R1 MOV R2,A 17、(1)将(30H)+(31H)的和存于32H单元中,将进位CY存于33H单元中 (2)(30)=35H (31H)=50H (32H)=85H (A)=00H CY=0 (33H)=0 21、(A)=8FH (R0)=25H (25H)=60H P77 第五章 7、SETB EX0 SETB ET1 SETB ES SETB EA SETB PS 11、允许的中断源有:外部0中断、定时器T0中断、外部1中断、串行口中断 优先级(从高到低):外部0中断、串行口中断、定时器T0中断、外部1中断、定时 器T1中断 P87第六章 7、用定时器T1的工作方式1时,定时初值为: (M-X)×T=t (65536-X)×2×10-6=100×10-3 X=15536=3CB0H 8、晶振12MHZ ;选择T0为定时器,工作方式1;选择T1为计数器,工作方式2 T0定时初值X0=65536-10×10-3/10-6 =55536=0D8F0H (TH0)=0D8H (TL0)=0F0H T1计数初值X1=256-100=156=9CH (TH1)=(TL0)=9CH 程序如下: ORG 0000H LJMP MAIN ORG 000BH LJMP T0INT ORG 001BH LJMP T1INT ORG 0030H MAIN: SETB P1.1 MOV TMOD , #61H

单片机原理及应用习题答案

思考与练习题1 1.1单项选择题 (1)单片机又称为单片微计算机,最初的英文缩写是( D ) A.MCP B.CPU C.DPJ D.SCM (2)Intel公司的MCS-51系列单片机是( C )的单片机。 A.1位 B.4位 C.8位 D.16位 (3)单片机的特点里没有包括在内的是( C ) A.集成度高 B.功耗低 C.密封性强 D.性价比高 (4)单片机的发展趋势中没有包括的是( B ) A.高性能 B.高价格 C.低功耗 D.高性价比 (5)十进制数56的二进制数是( A ) A.00111000B B.01011100B C.11000111B D.01010000B (6)十六进制数93的二进制数是( A ) A.10010011B B.00100011B C.11000011B D.01110011B (7)二进制数11000011的十六进制数是( B ) A. B3H B.C3H C.D3H D.E3H (8)二进制数11001011的十进制无符号数是( B ) A. 213 B.203 C.223 D.233 (9)二进制数11001011的十进制有符号数是( B ) A. 73 B.-75 C.-93 D.75 (10)十进制数29的8421BCD压缩码是( A ) A.00101001B B.10101001B C.11100001B D.10011100B (11)十进制数-36在8位微机中的反码和补码是( D ) A.00100100B、11011100B B.00100100B、11011011B C.10100100B、11011011B D.11011011B、11011100B (12)十进制数+27在8位微机中的反码和补码分别是( C ) A.00011011B、11100100B B.11100100B、11100101B C.00011011B、00011011B D.00011011B、11100101B (13)字符9的ASCII码是( D ) A.0011001B B.0101001B C.1001001B D.0111001B (14)ASCII码1111111B的对应字符是( C ) A. SPACE B.P C.DEL D.{ (15)或逻辑的表达式是( B ) A.A?B=F B. A+B=F C. A⊕B=F D.(A?B)=F (16)异或逻辑的表达式是( C ) A.A?B=F B. A+B=F C. A⊕B=F D.(A?B)=F (17)二进制数10101010B与00000000B的“与”、“或”和“异或”结果是( B ) A.10101010B、10101010B、00000000B B.00000000B、10101010B、10101010B C.00000000B、10101010B、00000000B D.10101010B、00000000B、10101010B (18)二进制数11101110B与01110111B的“与”、“或”和“异或”结果是( D ) A.01100110B、10011001B、11111111B B.11111111B、10011001B、01100110B C.01100110B、01110111B、10011001B D.01100110B、11111111B、10011001B (19)下列集成门电路中具有与门功能的是( D ) A.74LS32 B.74LS06 C.74LS10 D.74LS08

单片机原理及应用与C51程序设计(第三版)第2章作业

习题 1.MCS-51单片机由哪几个部分组成? 答:MCS-51单片机主要由以下部分组成的:时钟电路、中央处理器(CPU)、存储器系统(RAM和ROM)、定时/计数器、并行接口、串行接口、中断系统及一些特殊功能寄存器(SFR)。 2.MCS-51的标志寄存器有多少位,各位的含义是什么? 答:MCS-51的标志寄存器PSW有8位; 6 5 D 4 D 3 2 1 0 C 0 R S1 R S0 V 含义如下: C(PSW.7):进位或借位标志位。 AC(PSW.6):辅助进位或借位可标志位。 F0(PSW.5):用户标志位。是系统预留给用户自己定义的标志位。 RS1、RS0(PSW.4、PSW.3):寄存器组选择位。可用软件置位或清零,用于从四组工作寄存器中选定当前的工作寄存器组。 OV(PSW.2):溢出标志位。在加法或减法运算时,如运算的结果超出8位二进制数的范围,则OV置1,标志溢出,否则OV清零。 P(PSW.0):奇偶标志位。用于记录指令执行后累加器A中1的个数的奇偶性。若累加器A中1的个数为奇数,则P置位,若累加器A中1的个数为偶数,则P 清零。 其中PSW.1未定义,可供用户使用。 3.在8051的存储器结构中,内部数据存储器可分为几个区域?各有什么特点? 答:片内数据存储器按功能可以分成以下几个部分:工作寄存器组区、位寻址区、一般RAM区和特殊功能寄存器区,其中还包含堆栈区。工作寄存器组区,00H~1FH单元,可用R0~R7等8个寄存器访问;位寻址区,20H~2FH单元,可按位方式访问;一般RAM区,30H~7FH单元;堆栈区,可从08到7F单元;特殊功能寄存器区位于80H~FFH单元。 4.什么是堆栈?说明MCS-51单片机的堆栈处理过程。 答:堆栈是按先入后出、后入先出的原则进行管理的一段存储区域。CS-51单片机的堆栈是向上生长型的,存入数据是从地址低端向高端延伸,取出数据是从地址高端向低端延伸。入栈和出栈数据是以字节为单位的。入栈时,SP指针的内容先自动加1,然后再把数据存入到SP指针指向的单元;出栈时,先把SP指针指向单元的数据取出,然后再把SP指针的内容自动减1。 5.简述内部ROM的工作寄存器组情况,系统默认是第几组?

STC系列单片机内部AD的应用

STC系列单片机内部AD的应用 作者:郭天祥来源:原创更新时间:2008-11-27 22:16:38 浏览次数:7668 STC89LE52AD、54AD、58AD、516AD这几款89系列的STC单片机内部自带有8路8位的AD转换器,分布在P1口的8位上,当时钟在40MHz以下时,每17个机器周期可完成一次AD转换。 与AD相关的几个寄存器如表1所示。 表1 STC89系列单片机AD相关寄存器 P1_ADC_EN:P1.X口的AD使能寄存器。 相应位设置为“1”时,对应的P1. X口作为AD转换使用,内部上拉电阻自动断开。 ADC_CONTR:AD 转换控制寄存器。 ADC_START:AD转换启动控制位,设置为“1”时,AD开始转换。

ADC_FLAG:AD转换结束标志位,当AD转换完成后,ADC_FLAG=1。 CHS2、CHS1、CHS0:为模拟输入通道选择,如表2所示。 表2 STC89系列单片机AD模拟通道选择设置 ADC_DATA:AD 转换结果寄存器。模拟/数字转换结果计算公式如下: 结果=256×Vin / Vcc Vin为模拟输入通道输入电压,Vcc为单片机实际工作电压,用单片机工作电压作为模拟参考电压。 下面一个例程演示STC89LE516AD/X2系列单片机的A/D转换功能。时钟11.0592MHz,转换结果以16进制形式输出到串行口,可以用串行口调试程序观察输出结果。(本代码摘自宏晶科技芯片手册,经作者调试可正常运行)。 新建文件part3.4.5.c,程序代码如下: #include #include // 定义与ADC 有关的特殊功能寄存器 sfr P1_ADC_EN = 0x97; //A/D转换功能允许寄存器 sfr ADC_CONTR = 0xC5; //A/D转换控制寄存器 sfr ADC_DATA = 0xC6; //A/D转换结果寄存器 typedef unsigned char INT8U; typedef unsigned int INT16U; void delay(INT8U delay_time) // 延时函数 { INT8U n; INT16U m; for (n=0;n

单片机原理及应用教程第3版习题课后答案

《单片机原理及应用程序》(第三版)习题参考答案 第一章 1. 为什么计算机要采用二进制数?学习十六进制数的目的是什么? 在计算机中,由于所采用的电子逻辑器件仅能存储和识别两种状态的特点,计算机部一切信息存储、处理和传送均采用二进制数的形式。可以说,二进制数是计算机硬件能直接识别并进行处理的惟一形式。十六进制数可以简化表示二进制数。 2. (1) 01111001 79H (2) 0.11 0.CH (3) 01111001.11 79.CH (4) 11101010.101 0EA.AH (5)01100001 61H (6) 00110001 31H 3. (1) 0B3H (2)80H (3) 17.AH (4) 0C.CH 4. (1)01000001B 65 (2) 110101111B 431 5. (1) 00100100 00100100 00100100 (2) 10100100 11011011 11011100 (5) 10000001 11111110 11111111 6. 00100101B 00110111BCD 25H 7. 137 119 89 8.什么是总线?总线主要有哪几部分组成?各部分的作用是什么? 总线是连接计算机各部件之间的一组公共的信号线。一般情况下,可分为系统总线和外总线。 系统总线应包括:地址总线(AB)控制总线(CB)数据总线(DB) 地址总线(AB):CPU根据指令的功能需要访问某一存储器单元或外部设备时,其地址信

息由地址总线输出,然后经地址译码单元处理。地址总线为16位时,可寻址围为216=64K,地址总线的位数决定了所寻址存储器容量或外设数量的围。在任一时刻,地址总线上的地址信息是惟一对应某一存储单元或外部设备。 控制总线(CB):由CPU产生的控制信号是通过控制总线向存储器或外部设备发出控制命令的,以使在传送信息时协调一致的工作。CPU还可以接收由外部设备发来的中断请求信号和状态信号,所以控制总线可以是输入、输出或双向的。 数据总线(DB):CPU是通过数据总线与存储单元或外部设备交换数据信息的,故数据总线应为双向总线。在CPU进行读操作时,存储单元或外设的数据信息通过数据总线传送给CPU;在CPU进行写操作时,CPU把数据通过数据总线传送给存储单元或外设9.什么是接口电路? CPU与接口电路连接一般应具有哪些信号线?外部设备与接口电路连接一般应具有哪些信号线? CPU通过接口电路与外部输入、输出设备交换信息, 一般情况下,外部设备种类、数量较多,而且各种参量(如运行速度、数据格式及物理量)也不尽相同。CPU为了实现选取目标外部设备并与其交换信息,必须借助接口电路。一般情况下,接口电路通过地址总线、控制总线和数据总线与CPU连接;通过数据线(D)、控制线(C)和状态线(S)与外部设备连接。 10. 存储器的作用是什么?只读存储器和随机存储器有什么不同? 存储器具有记忆功能,用来存放数据和程序。计算机中的存储器主要有随机存储器(RAM)和只读存储器(ROM)两种。随机存储器一般用来存放程序运行过程中的中间数据,计算机掉电时数据不再保存。只读存储器一般用来存放程序,计算机掉电时信息不会丢失。 11.某存储器的存储容量为64KB,它表示多少个存储单元?64×1024 12. 简述微型计算机硬件系统组成。

单片机原理与应用技术实验报告(实验项目:定时器)

*****数学计算机科学系实验报告 专业:计算机科学与技术班级:实验课程:单片机原理与应用技术 姓名:学号:实验室:硬件实验室 同组同学: 实验时间:2013年3月20日指导教师签字:成绩: 实验项目:定时器 一实验目的和要求 定时器0实现1s定时,流水灯显示上的数据每秒加1。 二实验环境 PC机一台,实验仪器一套 三实验步骤及实验记录 1.在pc机上,打开Keil C。 2.在Keil C中,新建一个工程文件,点击“Project->New Project…”菜单。 3.选择工程文件要存放的路径 ,输入工程文件名 M, 最后单击保存。 4. 在弹出的对话框中选择 CPU 厂商及型号。 5.选择好 Atmel 公司的 89c51 后 , 单击确定。 6.在接着出现的对话框中选择“是”。 7.新建一个 C51 文件 , 点击file菜单下的NEW,或单击左上角的 New File快捷键。 8.保存新建的文件,单击SAVE。 9.在出现的对话框中输入保存文件名MAIN.C,再单击“保存”。 10.保存好后把此文件加入到工程中方法如下 : 用鼠标在 Source Group1 上单击右键 , 然后再单击 Add Files to Group ‘Source Group 1'。 11.选择要加入的文件 , 找到 MAIN.C 后 , 单击 Add, 然后单击Close。 12.在编辑框里输入代码如下: #include "reg51.h" //包含头文件 sbit LE1=P2^0; //位选573锁存器使能 sbit LE2=P2^1; //段选573锁存器使能 #define uchar unsigned char #define uint unsigned int

基于STC系列单片机的串联型开关电源设计与实现

单片机及模数综合系统设计 课题名称:基于STC12系列单片机的串联型开关电源设计与实现 --单片机控制部分

一、实验目的:本模拟电路课程设计要求制作开关电源的模拟电路部分,在掌 握原理的基础上将其与单片机相结合,完成开关电源的设计。本报告旨在详述开关电源的原理分析、计算、仿真波形、相关控制方法以及程序展示。 二、总体设计思路 本设计由开关电源的主电路和控制电路两部分组成,主电路主要处理电能,控制电路主要处理电信号,采用负反馈构成一个自动控制系统。开关电源采用PWM 控制方式,通过给定量与反馈量的比较得到偏差,通过调节器控制PWM 输出,从而控制开关电源的输出。当键盘输入预置电压后,单片机通过PWM输出一个固定频率的脉冲信号,作用于串联开关电源的二极管和三极管,使三极管以一定的频率导通与断开,然后输出进行AD转化,转化后的结果再给单片机进行输出,进行数码管显示。 系统的基本框图及控制部分如下: 控制过程原理分析:单片机所采用的芯片为STC12C5A60S2,该芯片在拥有8051内核的基础上加入了10为AD和PWM发生器。通过程序,即可控制单片机产生一定占空比的PWM 脉冲,将此脉冲输入到模拟电路部分,在模拟电路的输出端即可产生一定的输出电压,可比较容易的通过程序来实现对输出电压的控制。但上述的开环控制是无法达到精确的调节电压,因此需要采用闭环控制来精确调制。即,对输出电压进行AD采样,将其输入回单片机中进行数据处理。单片机根据处理的结果来对输出电压做出修正,经过这样的逐步调节即可达到闭

环的精密输出。由此原理,可以将整个过程分成一下模块:PWM波形输出模块,模拟电路模块,AD转换模块,数码管显示模块,键盘输入模块。 控制过程基本思路为:首先从键盘输入一个电压值,并把该电压值在数码管上面显示出来,再由A/D转换模块对串联开关电源电路的输出端进行电压采集,将采集到的电压值与键盘输入的电压值进行比较,通过闭环算法,控制PWM的脉宽输出,由此控制串联开关电压电源电路,改变输出的电压值,使得输出值与设定的电压值相等。 三、系统各单元模块电路设计 1、键盘输入数据部分 分别接到单片机的P2.4,P2.5,P2.6,P2.7。每路通过电阻进行上拉,可以编程实现控制单片机运行不同程序。为了判断键盘上面的按键是否有按下的,可以事先对P2.4,P2.5,P2.6,P2.7端口赋值,便可以知道具体是哪个按键被按下了。例如:P2.4=0,便可知道P2.4对应的按键已经按下了。 键盘输入模块程序如下: void key( ) //键盘扫描函数 { if(P2_6== 0) { delay(10);//延时去抖动 if(P2_6== 0) { while(P2_6== 0)

单片机原理及应用第二版

第二章习题参考答案 2-1 51单片机部包含哪些主要逻辑功能部件? (1)一个8位微处理器CPU。 (2)256B数据存储器RAM和特殊功能寄存器SFR。 (3)4K程序存储器ROM。 (4)两个定时/计数器,用以对外部事件进行计数,也可用作定时器。 (5)四个8位可编程的I/O(输入/输出)并行端口,每个端口既可做输入,也可做输出。(6)一个串行端口,用于数据的串行通信 (7)1个可管理5个中断源、2级优先嵌套的中断管理系统;。 (8)片振荡器及时钟发生器。 2-2MCS-51引脚中有多少I/O总线?它们和单片机对外的地址总线和数据总线有什么关系?地址总线和数据总线各是几位? 32条I/O口线,分为4组,每组8条,称为P0~P3口,P0口有8位数据总线和地址总线的低8位,P2口有地址总线的高8位,因此单片机的地址总线位是16位,寻址空间为64KB,数据总线位宽为8位。同时在P3口还R/W控制信号线。I/O口线的总数与地址总线和数据总线没有多大联系,只是说地址总线和数据总线需要占用一定的端口。像A T89C2051单片机,只有15条I/O口线(P3.6没有引出,作为部使用),分为P1口(8位)和P3口(7位),没有所谓的地址总线和数据总线,并且P1口并不完整,因为P1.0和P1.1被电压比较器占用了。 2-3 51单片机的EA, ALE,PSEN信号各自功能是什么? EA:为片外程序存储器选用端,该引脚有效(低电平)时,只选用片外程序存储器,否则单片机上电或复位后选用片程序存储器。 ALE:地址锁存有效信号输出在访问片外程序存储器期间,ALE以每机器周期两次进行信号输出,其下降沿用于控制锁存P0输出的低8位地址;在不访问片外程序存储器期间,ALE端仍以上述频率(振荡频率f osc的1/6)出现,可作为对外输出的时钟脉冲或用于定时目的. PSEN:片外程序存储器读选通信号输出端,低电平有效。 2-4 51系列单片机有哪些信号需要芯片引脚的第二功能方式提供? P3.0 :PxD 串行口输入端 P3.1 :TxD串行口输出端 P3.2 :INT0 外部中断0请求输入端,低电平有效 P3.3 :INT1 外部中断1请求输入端,低电平有效 P3.4 :T0 定时/计数器0技术脉冲输入端 P3.5 :T1 定时/计数器1技术脉冲输入端 P3.6 :WR 外部数据存数器写选通信信号输出端,低电平有效 P3.7 :RD 外部数据存数器读选通信信号输出端,低电平有效 2-551系列单片机的程序状态字PSW中存放什么信息?其中的OV标志位在什么情况下被置位?置位是表示什么意思? ●PSW是一个8位标志寄存器,它保存指令执行结果的特征信息,以供程序查询和判别。 ●1)做加法时,最高位,次高位之一有进位则OV被置位 2)做减法时,最高位,次高位之一借位则OV被置位 3)执行乘法指令MUL AB,积大于255,OV=1

相关文档
相关文档 最新文档