单片机红外线实验

单片机红外线实验
单片机红外线实验

实验十二红外线遥控器实验

一、实验目的

1、掌握红外线传感器的原理

2、掌握红外线传感器MCU的连接及编程方法

二、实验步骤

1、用Keil uVision4建项目流程:

(1)运行Keil uVision4软件,启动后,点击Project菜单新建项目,新建项目后,单击File选择New新建程序文件,保存后,右击Source Group1添加入程序文件。

(2)设置输出HEX文件,勾选上Output下的Create HEX Fi:,单击确定保存,运行程序得到HEX文件。

2、将P2的1,2用跳线帽接好,将DS1接P2.0,SH1接P2.1,ST1接P2.2;

DS2接P1.2,SH2接P1.1,ST2接P1.0,用杜邦线连接。

3、单片机的IO口P3^2与开发板P5右边的插针连接。可以通过操作遥控器在数码管显示对应的数值。

4、将图片转换为二进制代码。

4、烧录代码,打开开发板电源。

三、实验测试程序

/*******************************************************************/

/*RFID_MCU单片机开发系统演示程序红外线遥控实验*/

/*MCU:STC89C52RC ,晶体频率:11.0592MHz */

/* 时间:2012/12/01 */

/*******************************************************************/

#include

#include

unsigned char code led_disp_map[] = {

0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x00,0x01,

0x02,0x04,0x08,0x10,

0x20,0x40,0x80,0xc0,

0xa0}; //共阴极8段LED字型码

unsigned char code bianma[] = {

0x68,0x30,0x18,0x7a,

0x10,0x38,0x5a,0x42,

0x4a,0x52,0xa2,0x62,

0xe2,0x22,0x02,0xc2,

0xe0,0xa8,0x90,0x98,

0xb0}; //21个编码

unsigned char ir_dat_buf[4] = {0}; //红外遥控接收码存放位置

//unsigned char led_disp_buf[5] = {0}; //LED显示缓存,包括一个显示位置代号(程序中没用到,所以可去掉)

void init89c52(void);

void delayms(unsigned char t);

unsigned char ir_read(void);

void delay840us(void);

void delay1120us(void);

sbit chipcs=P2^7;

sbit datacs=P2^6;

sbit ir_port = P3^2;

void main(void)

{

//delayms(200); 可省略

init89c52();

//ir_port = 1; 因为上电复位后P3^2=1,所以可省略此指令

while(1)

{

}

}

/*void delayms(unsigned char t) //延时子程序, t=1时约延时1ms

{

unsigned char i;

while(--t)

{

i = 165;

while(--i);

}

}*/

void delay1120us(void) // X = 65536 - T * Focs / 12 = 65536 - 1.12ms * 11.0592MHz / 12 = 0xfbf8

{

TL1 = 0xf8; //定时1.12ms @ 11.0592MHz

TH1 = 0xfb;

TR1 = 1; //启动定时器

while(!TF1);

TR1 = 0;

TF1 = 0;

}

void delay840us(void) // X = 65536 - T * Focs / 12 = 65536 - 0.84ms * 11.0592MHz / 12 = 0xfcfa

{

TL1 = 0xfa; //定时0.84ms @ 11.0592MHz

TH1 = 0xfc;

TR1 = 1; //启动定时器

while(!TF1);

TR1 = 0;

TF1 = 0;

}

void init89c52(void) //STC89C52RC芯片初始化子程序

{

TMOD = 0x11;

TL0 = 99;

TH0 = 0xf1; //定时4ms

TR0 = 1;

IT0 = 1;

ET0 = 1;

EX0 = 1;

// PX0 =1; 因为同级中外部中断0的优先权最高,所以此指令可省略

EA = 1;

}

void int0(void) interrupt 0 //外部中断0服务程序

{

unsigned char i;

EX0 = 0; //关中断

for(i = 0; i < 10; i++) // 引导码由9ms低电平及4.5ms高电平组成, 接着是低8位地址码, 高8位地址码

{ // 连发码由9ms低电平及2.25ms高电平组成, 跟着是0.56ms低电平, 然后都是高电平

delay840us();

if(ir_port) //检测引导码9ms是否有高电平,有则退出{

EX0 = 1;

return;

}

}

while(!ir_port); //等待高电平的到来注:尽量采用延时来检测,不然可能会进入死循环

delay840us();

delay840us(); // 检测连按; 延时2.52ms,检测是否有低电平,有表示按键连按,且退出

delay840us();

if(!ir_port)

{

EX0 = 1;

return;

}

while(ir_port); //等待4.5ms高电平结束,开始接收数据

ir_dat_buf[0] = ir_read();

ir_dat_buf[1] = ir_read();

ir_dat_buf[2] = ir_read();

ir_dat_buf[3] = ir_read();

EX0 = 1;

}

unsigned char ir_read(void) // 数据0: 0.56ms低电平,0.56ms高电平{ // 数据1: 0.56ms低电平,1.58ms高电平

unsigned char i,ir_temp = 0;

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

{

while(!ir_port); //等待0.56ms低电平结束

delay840us(); //从高电平开始延时0.84ms if(ir_port == 1)

{

ir_temp = (ir_temp << 1) + 1; //读到数据1

delay1120us(); //延时等待1.68ms高电平结束

}

else

{

ir_temp = ir_temp << 1; //读到数据0

}

}

return ir_temp;

}

void timer0(void) interrupt 1

{unsigned char j;

ET0 = 0;

TL0 = 99;//定时4ms

TH0 = 0xf1;

for(j=0;j<21;j++)

{if(ir_dat_buf[2]==bianma[j]) //只有接收的第2字节的内容为编码内容

{ chipcs=1;

datacs=0;

P0 = 0xfe;

chipcs=0;

datacs=1;

P0 = led_disp_map[j];

datacs=0;

}

}

ET0 = 1;}

四、拓展试验

利用红外遥控器按键选择0-2号按键选择8*8双色点阵实现显示不同的的图形。#include

#include

unsigned char segout[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //8列unsigned char code tab1[][8]={

0x08,0x1C,0x3E,0x7F,0x1C,0x1C,0x1C,0x1C,

0x00,0x6C,0x92,0x82,0x44,0x28,0x10,0x00,

0x50,0x50,0x50,0x02,0x02,0x50,0x50,0x50};

unsigned char code bianma[] = {

0x68,0x30,0x18,0x7a,

0x10,0x38,0x5a,0x42,

0x4a,0x52,0xa2,0x62,

0xe2,0x22,0x02,0xc2,

0xe0,0xa8,0x90,0x98,

0xb0}; //编码

unsigned char code led_disp_map[] = {

0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x00,0x01,

0x02,0x04,0x08,0x10,

0x20,0x40,0x80,0xc0,

0xa0};

unsigned char ir_dat_buf[4] = {0}; //红外遥控接收码存放位置

sbit LATCH = P1^0;

sbit SRCLK= P1^1;

sbit SER = P1^2;

sbit LATCH_B = P2^2;

sbit SRCLK_B= P2^1;

sbit SER_B= P2^0;

void init89c52(void);

void delayms(unsigned char t);

unsigned char ir_read(void);

void delay840us(void);

void delay1120us(void);

sbit ir_port = P3^2;

void main(void)

{

delayms(200);

init89c52();

ir_port = 1;

while(1)

{

}

}

void SendByte(unsigned char dat)

{

unsigned char i;

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

{

SRCLK=0;

SER=dat&0x80;

dat<<=1;

SRCLK=1;

}

}

/*------------------------------------------------

发送双字节程序

595级联,n个595,就需要发送n字节后锁存------------------------------------------------*/

void Send2Byte(unsigned char dat1,unsigned char dat2) {

SendByte(dat1);

SendByte(dat2);

}

/*------------------------------------------------

595锁存程序

595级联发送数据后,锁存有效

------------------------------------------------*/

void Out595(void)

{

LATCH=0;

_nop_();

LATCH=1;

}

/*------------------------------------------------

发送位码字节程序

使用另外一片单独595

------------------------------------------------*/

void SendSeg(unsigned char dat)

{

unsigned char i;

for(i=0;i<8;i++) //发送字节

{

SRCLK_B=0;

SER_B=dat&0x80;

dat<<=1;

SRCLK_B=1;

}

LATCH_B=0; //锁存

_nop_();

LATCH_B=1;

}

void delayms(unsigned char t) //延时子程序, t=1时约延时1ms

{

unsigned char i;

while(--t)

{

i = 165;

while(--i);

}

}

void delay1120us(void) // X = 65536 - T * Focs / 12 = 65536 - 1.12ms * 11.0592MHz / 12 = 0xfbf8

{

TL1 = 0xf8; //定时1.12ms @ 11.0592MHz

TH1 = 0xfb;

TR1 = 1; //启动定时器

while(!TF1);

TR1 = 0;

TF1 = 0;

}

void delay840us(void) // X = 65536 - T * Focs / 12 = 65536 - 0.84ms * 11.0592MHz / 12 = 0xfcfa

{

TL1 = 0xfa; //定时0.84ms @ 11.0592MHz

TH1 = 0xfc;

TR1 = 1; //启动定时器

while(!TF1);

TR1 = 0;

TF1 = 0;

}

void init89c52(void) //STC89C52RC芯片初始化子程序

{

TMOD = 0x11;

TL0 = 0;

TH0 = 0xf1;

TR0 = 1;

IT0 = 1;

ET0 = 1;

EX0 = 1;

PX0 =1;

EA = 1;

}

void int0(void) interrupt 0 //外部中断0服务程序

{

unsigned char i;

EX0 = 0; //关中断

for(i = 0; i < 10; i++) // 引导码由9ms低电平及4.5ms高电平组成, 接着是低8位地址码, 高8位地址码

{ // 连发码由9ms低电平及2.25ms高电平组成, 跟着是0.56ms低电平, 然后都是高电平

delay840us();

if(ir_port) //检测引导码9ms是否有高电平,有则退出{

EX0 = 1;

return;

}

}

while(!ir_port); //等待高电平的到来注:尽量采用延时来检测,不然可能会进入死循环

delay840us();

delay840us(); // 检测连按; 延时2.52ms,检测是否有低电平,有表示按键连按,且退出

delay840us();

if(!ir_port)

{

EX0 = 1;

return;

}

while(ir_port); //等待4.5ms高电平结束,开始接收数据

ir_dat_buf[0] = ir_read();

ir_dat_buf[1] = ir_read();

ir_dat_buf[2] = ir_read();

ir_dat_buf[3] = ir_read();

EX0 = 1;

}

unsigned char ir_read(void) // 数据0: 0.56ms低电平,0.56ms高电平{ // 数据1: 0.56ms低电平,1.58ms高电平

unsigned char i,ir_temp = 0;

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

{

while(!ir_port); //等待0.56ms低电平结束

delay840us(); //从高电平开始延时0.84ms

if(ir_port == 1)

{

ir_temp = (ir_temp << 1) + 1; //读到数据1

delay1120us(); //延时等待1.68ms高电平结束

}

else

{

ir_temp = ir_temp << 1; //读到数据0

}

}

return ir_temp;

}

void timer0(void) interrupt 1

{unsigned char i,j;

ET0 = 0;

TL0 = 0; //定时4ms

TH0 = 0xf1;

for(j=0;j<21;j++)

{if(ir_dat_buf[2]==bianma[j])

{

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

{

SendSeg(segout[i]);

Send2Byte(~tab1[j][i],0xff);

Out595();

delayms(1);

Send2Byte(0xff,0xff);

Out595();

}

}

}

ET0 = 1;}

}

}

五、实验总结

实验利用红外遥控器按键选择双色点阵显示不同的的图片,本次实验将双色点阵试验和红外遥控器试验结合起来。既能体现红外遥控器选择功又显示不同点阵图片。其中显示不同图片利用了二阶矩阵,判断按键和编码相同后,向双色矩阵发送与按键数字相同的图片号,从而显示出来。

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

第一章习题参考答案 1-1:何谓单片机?与通用微机相比,两者在结构上有何异同? 答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路与相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。 单片机与通用微机相比在结构上的异同: (1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度与精度的进一步提高。例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度与精度也相对要低一些。例如,现在的单片机产品的CPU 大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。 (2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量与CPU对数据的存取速度。现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术与段、页等多种管理模式。单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。 (3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠标、打印机、硬盘、光盘等)。用户通过标准总线连接外设,能达到即插即用。单片机应用系统的外设都就是非标准的,且千差万别,种类很多。单片机的I/O接口实际上就是向用户提供的与外设连接的物理界面。用户对外设的连接要设计具体的接口电路,需有熟练的接口电路设计技术。 另外,单片机的微处理器(CPU)、存储器、I/O接口电路集成在一块芯片上,而通用微机的微处理器(CPU)、存储器、I/O接口电路一般都就是独立的芯片 1-4 IAP、ISP的含义就是什么? ISP:In System Programable,即在系统编程。用户可以通过下载线以特定的硬件时序在线编程(到单片机内部集成的FLASH上),但用户程序自身不可以对内部存储器做修改。 IAP:In Application Programable,即在应用编程。用户可以通过下载线对单片机进行在线编程,用户程序也可以自己对内部存储器重新修改。 1-6 51单片机与通用微机相比,结构上有哪些主要特点? (1)单片机的程序存储器与数据存储器就是严格区分的,前者为ROM,后者为RAM; (2)采用面向控制的指令系统,位处理能力强; (3)I/O引脚通常就是多功能的; (4) 产品系列齐全,功能扩展性强; (5) 功能就是通用的,像一般微处理机那样可广泛地应用在各个方面。 1-7 51单片机有哪些主要系列产品? (1)Intel公司的MCS-51系列单片机:功能比较强、价格比较低、较早应用的单片机。 此系列三种基本产品就是:8031/8051/8751; (2)ATMEL公司的89系列单片机:内含Flash存储器,开发过程中可以容易地进行程

单片机实验报告

实验报告 专业:计算机科学与技术班级:C093 姓名:孙丽君 学号:098677

实验一:数据传送实验 1.实验内容: 将8031内部RAM 40H—4FH单元置初值A0H—A FH,然后将片内RAM 40H—4FH单元中的数据传送到片内RAM 50H—5FH单元。将程序经模拟调试通过后,运行程序,检查相应的存储单元的内容。 2. 源程序清单: ORG 0000H RESET:AJMP MAIN ORG 003FH MAIN:MOV R0,#40H MOV R2,#10H MOV A,#0A0H A1:MOV@R0,A INC R0 INC A DJNZ R2, A1 MOV R1,#40H MOV R0, #50H

MOV R2, #10H A3: MOV A, @R1 MOV @R0, A INC R0 INC R1 DJNZ R2, A3 LJMP 0000H 3.实验结果: 4. CPU 对8031内部RAM存储器有哪些寻址方式? 答:直接寻址,寄存器寻址,寄存器间接寻址,位寻址。

5. 执行程序后下列各单元的内容是什么? 内部RAM 40H~4FH内容:A0~AF 内部RAM 50H~5FH内容:A0~AF 实验二多字节十进制加法实验 1.实验内容: 多字节十进制加法。加数首地址由R0 指出,被加数和结果的存储单元首地址由R1指出,字节数由R2 指出。将程序经模拟调试通过后,运行程序,检查相应的存储单元的内容。 2. 源程序清单: ORG0000H RESET: AJMP MAIN ORG0100H MAIN: MOV SP, #60H MOV R0, #31H MOV@R0, #22H DEC R0 MOV@R0, #33H

单片机实验板详细步骤--原理图设计部分

单片机实验板 单片机是电子工程师的基本技能之一,单片机实验板是学习单片机的必备工具之一。通过层次原理图的设计方法,以单片机实验板设计实例介绍Protel DXP的原理图到PCB设计的整个过程。 一、一款单片机实验板简介 经典单片机实验板 单片系统包括MCU组成的最小系统、各种功能的外围电路及接口。 1、89C52单片机。 2、6位数码管(做动态扫描及静态显示实验)。 3、8位LED发光二极管(做流水灯实验)。 4、MAX232芯片RS232通讯接口(可以做为与计算机通迅的接口同时也可做为单片机下载程序的接口)。 5、USB供电系统,直接插接到电脑USB口即可提供电源,不需另接直流电源。 6、蜂鸣器(做单片机发声实验)。 7、ADC0804芯片(做模数转换实验)。 8、DAC0832芯片(做数模转换实验)

9、PDIUSBD12芯片(USB设备开发,如单片机读写U盘,自制U盘,自制MP3等,还可通过此芯片让计算机与单片机传输数据)。 10、USB转串口模块,直接由计算机USB口下载程序至单片机。 11、DS18B20温度传感器,(初步掌握单片机操作后即可亲自编写程序获知当时的温度)。 12、AT24C02外部EEPROM芯片(IIC总线元件实验) 13、字符液晶1602接口。(可显示两行字符) 14、图形液晶12864接口(可显示任意汉字及图形) 15、4*4矩阵键盘另加四个独立键盘(键盘检测试验)。 二、设计任务 采用自底向上(Bottom up)的层次原理图方法绘制单片机实验板原理图及PCB。本实验板主要有CPU部分、电源部分(Power)、串口通信(RS232)部分、数码显示(LED)部分、继电器(Relay)部分、其它(misc)各部分。 同时,通过层次原理图的绘制掌握原理图绘制的众多技巧。 单片机原理图总图 三、子图绘制 下面开始各原理子图的绘制。如【单片机实验板工程】所示,建立单片机实验板工程,建立各个原理图,并把库文件加载到工程里。

(完整版)创新实验室建设规划

创新实验室建设规划 1.指导思想 创新实验室的建设,旨在促进探索创新性人才培养的新模式,促进探索并建立以问题和课题为核心的教学模式,倡导以学生为主体的本科人才培养和研究性学习教学改革,调动学生学习的主动性、积极性和创造性,激发学生的创新思维和创新意识,同时在项目实践中逐渐掌握思考问题、解决问题的方法,提高学生创新实践的能力。 通过创新实验室计划得实施,带动广大的学生在本科阶段得到科学研究与发明创造的初步训练,增强人才培养过程中实践教学环节的比重,增强学生的动手能力,推广研究性学习和个性化培养,形成创新教育的氛围,建设创新文化,进一步推动教育教学改革,提高教学质量。 1.1 突出能力培养,全面实施素质教育 为全面贯彻落实学院“高级实用型人才”的培养目标,力行“以培养能力为中心,全面提高教学质量”;全面实施素质教育,通过项目实践启发学生学习兴趣,引导学生自学、思考和探究; 在理论与实践、知识和能力、专业和技术相结合的过程中进行人才的培养。具体地说,就是有效地实施我院推行的“一体二翼”人才培养模式,为形成“以计算机技术和电子信息技术综合应用能力培养为中心”的高级实用型人才提供平台和实践环境。 1.2扎实推进教育教学改革 以培养兴趣、鼓励创新、突出重点和注重过程逐步全面实施教育教学全过程,按照“自主选题、自主设计、自主实验”的要求,以项目为研究载体,在指导老师的指导下,注重学生自主实验和过程训练,使学生的实践能力和创新精神得到不断增强,人才培养质量得到不断提高。 1.3 突出特色,营造品牌 通过提供电子制作、课题设计、项目开发和科学研究的条件,从而使学生尽早进入专业科研领域,培养学生的研究兴趣和科学态度,训练实践能力、独立工作能力、团队合作能力,加强师生联系与交流,促进产学研紧密结合。进而形成我系鲜明特色的——软硬件一体化开发设计能力和项目开发和管理能力,创设品牌。 1.4 抓住机遇,进行师资队伍全面建设 计算机系有一支具有计算机应用软硬件技术和应用信息电子方向技术基础的老,中,青年技术骨干教师。加强实践性教学环节,培养复合型人才,逐步形成独具特使实践教学新体系,通过计划的实施,教改推进和项目的开展,全面提升整个师资队伍的水平。 2.现有基础 2.1 初步建立了供学生实践应用的“创新实验室”。 创建了开放式创新实验室。开放式实验室为学生创造进行计算机软件与电路电子设计的有利条件,是在校学生课内、课外进行作品设计开发,开展实验活动的主要场所。在专业教师的指导下,学生应用自带的计算机,电子部件及各类工具在该实验室进行单片机应用技术,嵌入式ARM7,ARM9等芯片应用技术进行各类智能化应用实验系统可进行各种应用性实践实验,培养同学们的实际工作能力。

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

第一章习题参考答案 1-1:何谓单片机?与通用微机相比,两者在结构上有何异同? 答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。 单片机与通用微机相比在结构上的异同: (1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度和精度也相对要低一些。例如,现在的单片机产品的CPU大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。 (2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量和CPU对数据的存取速度。现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术和段、页等多种管理模式。单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。 (3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠

单片机实验内容

实验一P1口输入输出实验、继电器控制、音频控制 一、实验目的: 1.学习I/O端口的使用方法 2.掌握继电器控制的基本方法,了解用弱点控制强电的工作原理 3.学习单片机汇编语言源程序的编制方法和调试方法,学习延时子程序的编写和使用 4.了解音频发声原理 二、实验要求: 1.P1口做输出口,接8只发光二极管,编写程序使发光二极管循环点亮。 2.P1.0、P1.1作输入口,接两个拨动开关,P1.2、P1.3作输出口接两个发光二极管,编程 读取开关状态,并在二极管上显示出来。 3.利用单片机的端口,输出电平控制继电器的吸合和断开,实现对外部装置的控制。 4.用端口输出不同频率的脉冲,控制喇叭发出不同音调。 5.用P1.0和延时子程序实现占空比可调的PWM电压波形。 三、实验说明: 1. P1口用为输入口时,必须先对它置“1”才能正确读入数据。 2. 继电器可以实现电子电路和电气电路的连接桥梁。其控制电压是5V,控制端为高电平时继电器的工作常开触点吸合,电气线路连接;控制端为低电平时,触点断开,电气线路切断。 3. 声音的频率由端口输出时延时时长来控制,输出的方波经放大滤波后驱动扬声器发声。 4. PWM是脉宽调制电压信号,可以通过占空比(脉冲中高电平与低电平的宽度比)来输出可调模拟电压,是单片机上常用的模拟量输出方法。例如50%(5:5),10%(1:9),90%(9:1)占空比。 四、实验思考题: 将1位十六进制数存放在40H单元中,利用查表法将其转换为相应的ASCII码 实验二外部中断实验 一、实验目的: 1.学习外部中断技术的基本使用方法 2.学习中断处理程序的编程方法 二、实验要求: 1.用单次脉冲申请中断INT0,在中断处理程序中对输出信号进行反转。 2.用单次脉冲申请中断INT1,在中断处理程序中实现8个小灯左移点亮1次。 三、实验思考题: 1. 相应中断请求的条件是什么? 2. 写出同级中断的查询优先次序。

单片机实验考核题目及答案

---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------

实验一 单片机数据区传送程序设计

实验一单片机数据区传送程序设计 一、实验目的 1.进一步掌握汇编语言程序设计和调试方法。 2.了解单片机RAM中的数据操作 二、实验说明 要求:编写程序把R2、R3源RAM区首地址内的R6、R7字节数据传送到R4、R5目的地址的RAM区。 三、实验仪器 计算机 伟福软件(lab2000P ) 四、实验内容 在R0、R1中输入源地址(例如:3000H),R2、R3中输入目的地址(例如4000H),R6、R7中输入字节数(例如:1FFFH)。 查看RAM 区3000~30FFH和4000~40FFH内容,也可自己重新赋值。 运行程序,首先单步,然后用执行到指定位置,最后用连续运行方式。 记录下运行结果,检查3000~30FFH中内容是否和4000~40FFH内容完全一致。 五、思考题 1、改变源地址,例如00FFH; 2、改变目的地址,例如2000H; 3、改变传输的个数,小于256个和大于256个的情况。 4、把程序改为对某一数据存储区RAM赋都相同一个数值。 六、源程序及其修改原理 org 0000H Block equ 2000h mov dptr, #Block ; 起始地址 mov r0,#12h mov a,#20h ;修改2000h开始的地址所存放的内容为20h Loop: mov r1,#14h ;增加r1计数,用循环方式实现大于256的数据传输(思 考题3) Loop1: movx @dptr,a inc dptr ; 指向下一个地址 djnz r1,Loop1 djnz r0, Loop ; 双循环实现r0,r1计数相乘 (以上程序实现对某一数据存储区2000h~2168hRAM赋都相同一个数值20h,思考题4) mov r0, #20h ;改变源地址为2000h(思考题1) mov r1, #00h mov r2, #50h;改变目的地址为5000h(思考题2) mov r3, #00h

因素实验设计

三因素实验设计 对三因素重复测量实验设计进行数据处理 一、三因素完全随机实验设计数据处理 过程: 1、打开SPSS软件,点击Data View ,进入数据输入窗口,将原始数据输入SPSS 表格区域; 2、在菜单栏中选择分析→一般线性模型→单变量; 3、因变量Dependent Variable方框中放入记忆成绩(JY),固定变量(Fixed Factor(s))方框中,放入自变量记忆策略、有无干扰和材料类型; 4、点击选项(Options)按钮,选择Descriptive statistics,对数据进行描述性统计;选择Homogeneity tests,进行方差齐性检验; 5.结果分析: 描述性统计量 因变量:记忆成绩 记忆策略有无干扰材料类型均值标准偏差N 联想策略d i m e n s i o n 2无干扰实物图片5图形图片5 总计10有干扰实物图片5图形图片.894435 总计10总计实物图片10图形图片10 总计20 复述策略d i m e n s i o n 2无干扰实物图片5图形图片5 总计10有干扰实物图片5图形图片.836665 总计10总计实物图片10图形图片10 总计20 总计d i m e n 无干扰实物图片10图形图片10 总计20有干扰实物图片10图形图片10

s i o n 2 总计20总计实物图片20图形图片20 总计40 被试间变量效应检验结果:A、B、C的主效应均极显着(P<);AB 交互效应显着; AC 交互效应极显着;BC 交互效应不显着;ABC 交互效应极显着。对于二阶与三 阶交互效应显着的,还需进行简单效应与简单简单效应检验。 主体间效应的检验 因变量:记忆成绩 源 III 型平方和df均方F Sig. 校正模型7.000截距1.000 A1.000 B1.000 C1.001 A * B1.037 A * C1.007 B * C1.146 A * B * C1.002误差32 总计40 校正的总计39

单片机实验室建设方案

单片机实验室建设方案 血糖测量的电生物化学原理是当施加一定电压于经酶反应后的血液产生的电流会随着血液中的血糖浓度的增加而增加。通过精确测量出这些微弱电流,并根据电流值和血糖浓度的关系,反算出相应的浓度。所以,确定这个关系是问题的核心。但其关系复杂,受多方面因素影响。电压强度、所使用的试条以及检测的血液量都会对其产生影响。理论上需要在所有浓度点上大量实验才能确定最终的关系。在实际操作中,只需在选择若干重要浓度点做大量实验,然后采用曲线拟合或插值等数据处理方式来确定其与电流值之间的关系。 血糖测量通常采用电化学分析中的三电极体系。三电极体系是相对于传统的两电极体系而言,包括,工作电极(WE),参比电极(RE)和对电极(CE)。参比电极用来定点位零点,电流流经工作电极和对电极工作电极和参比电极构成一个不通或基本少通电的体系,利用参比电极电位的稳定性来测量工作电极的电极电势。工作电极和辅助电极构成一个通电的体系,用来测量工作电极通过的电流。利用三电极测量体系,来同时研究工作电极的点位和电流的关系。如图1所示。

图1 三电极工作原理 方案描述 该血糖仪提供多种操作模式以适应不同场合的应用,另外提供了mmol/L,mg/dl,g/l 三种常见测量单位的自由切换并自动转换。该三个单位之间的转换关系如下:1mmol/L=18 mg/dL 1mmol/L=0.18 g/L 1 mg/dL=0.01 g/L 针对不同国家地区的不同要求,血糖仪可以采用以上任意一种单位来显示测量结果,转换的方式采取使用特殊的代码校正条来实现。 (1)单片机及内部硬件资源的充分利用。Silicon labs C8051F410单片机内部集成了丰富的外围模拟设备,使用户可以充分利用其丰富的硬件资源。C8051F410单片机的逻辑功能图如图2所示。利用其中12位的A/D转换器用来做小信号测量,小信号电流经过电流采样电路最终转换为电压由该A/D采样,然后以既定的转换程序计算出浓度显示在液晶

51单片机实验报告

51单片机实验报告

实验一 点亮流水灯 实验现象 Led灯交替亮,间隔大约10ms。实验代码 #include void Delay10ms(unsigned int c); void main() { while(1) { P0 = 0x00; Delay10ms(50); P0 = 0xff; Delay10ms(50); } }

void Delay10ms(unsigned int c) { unsigned char a, b; for (;c>0;c--) { for (b=38;b>0;b--) { for (a=130;a>0;a--); } } } 实验原理 While(1)表示一直循环。 循环体首先将P0的所有位都置于零,然后延时约50*10=500ms,接着P0位全置于1,于是LED全亮了。接着循环,直至关掉电源。延迟函数是通过多个for循环实现的。 实验2 流水灯(不运用库函数) 实验现象 起初led只有最右面的那一个不亮,半秒之后从右数第二个led

也不亮了,直到最后一个也熄灭,然后led除最后一个都亮,接着上述过程 #include #include void Delay10ms(unsigned int c); main() { unsigned char LED; LED = 0xfe; while (1) { P0 = LED; Delay10ms(50); LED = LED << 1; if (P0 == 0x00) { LED = 0xfe; } } } void Delay10ms(unsigned int c)

单片机实验报告

南京晓庄学院电子工程学院 实验报告 课程名称:单片机系统设计与应用 姓名:森 专业:电子信息科学与技术 年级:14级 学号:05 2016年12 月1 日

实验项目列表 序号实验项目名称成绩指导教师 1 单片机仿真软件的使用 2 单片机I/O接口应用实验——流水灯 3 外部中断实验——工业顺序控制模拟 4 定时/计数器实验——矩形波 5 定时/计数器实验——计数器 6 综合实验 7 8 9 10 注: 1、实验箱端口为com6。 2、芯片选择切换到51 3、停止运行使用实验箱上的复位按钮

实验室号:___ 实验时间:成绩: 实验一仿真软件的使用 1.实验目的和要求 1)熟悉Keil C51软件界面,以及编辑、编译、运行程序的步骤; 2)掌握单片机仿真软件使用和调试的方法。 2.实验原理 Keil C51软件使用 在Keil C51集成开发环境下,建立一个工程并编辑源程序,熟悉Keil C51集成开发环境下各种菜单、命令的使用。 3.主要仪器设备(实验用的软硬件环境) 安装有Keil C51软件的PC机1台 4.操作方法与实验步骤 Keil C51软件使用 (1)建立用户文件夹 (2)建立工程 (3)建立文件并编码。输入以下源程序,并保存在项目所在的目录中 (4)把文件加入工程中 (5)编译工程。编译时观察在界面下方的“Build”页中的到编译错误信息和使用的系统资源情况等。 (6)调试。利用常用调试命令,如复位、运行、暂停、单步、单步跳过、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮等命令进行调试,观察并分析调试结果。 (7)目标代码文件的生成。运行生成相应的.HEX文件。 5.实验内容及程序 1)从DATA区地址起始地址为40H的连续10个内存单元的内容传送到XDATA区起始地址为2000H的10个内存单元中。 注意:DATA区地址起始地址为40H的连续10个内存单元必须先赋初值。 P83-5源程序 #include #define uchar unsigned char xdata unsigned char buffer1[10]_at_ 0x2000; //在xdata区定义数组变量BUF1,首地址为2000H data unsigned char buffer2[10]_at_ 0x40; //在data区定义数组变量BUF2,首地址为40H void main(void)

基于51单片机的模数转换(AD)实验设计

HEFEI UNIVERSITY 单片机课程综述报告 主题基于51单片机的模数转换(A/D)实验设计姓名郭丽丽 专业通信工程 学号 1105021006 班级 11级通信(1)班 指导老师汪济洲 2014 年 6 月 2 日

目录 1.实验目的与要求 (1) 1.1实验目的 (1) 1.2实验要求 (1) 2.实验原理 (1) 2.1电路原理图 (1) 2.2 Proteus7.4 软件简介 (2) 3、实验步骤 (6) 4、源程序代码 (6) 5. 实验结果分析 (10) 6.总结 (10)

1.实验目的与要求 1.1实验目的 1.掌握A/D转换与单片机的接口方法 2.了解A/D芯片ADC0809转换性能及编程方法 3.通过实验了解单片机如何进行数据采集 1.2实验要求 1.采用查询法或中断法编程进行A/D采集; 2.采集0~5V范围的电压信号(以电位器模拟被测信号),使用4位串行数码管显示0~5V数值,小数点保留三位,实现简易电压表功能。 2.实验原理 2.1电路原理图 熟悉8051的输入输出端口的使用方法, 本实验的电路连接如图1所示。 图1 连接电路

2.2 Proteus7.4 软件简介 Proteus是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是: ①实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。 ②支持主流单片机系统的仿真。目前支持的单片机类型有:ARM7(LPC21xx)、8051/52系列、AVR系列、PIC10/12/16/18系列、HC11系列以及多种外围芯片。 ③提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2、MPLAB等软件。 ④具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。 其操作界面如下图所示: 图2 Proteus操作页面

单片机实验室建设规划

单片机实验室建设规划 高校实验室建设是与学科建设、专业建设、课程建设紧密相关的重要基础建设,是开展科学研究、培养人才的重要基地,是高校办学水平的重要标志之一。高等职业技术教育培养的是职业性、技能型的适应生产、建设、管理和服务第一线的应用型的专门人才,实践教学是高职教育的重要特征。为此必须高度重视高职专业实验室工作,切实加强实验室建设,不断提高实验室管理水平和实验教学质量。根据我院的发展规划以及专业建设需要,特制定本规划。 一、指导思想 以邓小平理论和党的十六大精神为指导,按照教育“三个面向”的要求,遵循高职教育规律,立足我校办学实际,贯彻勤俭办学的方针,充分利用多种经费来源,大力推进高职专业实验队伍、设备、管理职业化和现代化,以达到最佳的投资效益,满足我院教学和科研的需要,为本地区经济建设和社会发展培养适应生产、建设、服务第一线需要的德、智、体、美等方面全面发展的高等技术应用性专门人才。 二、院教学实验室建设现状 目前,我院实验室建设与实验教堂基本状况是:仪器设备总额近30 余万元,校内实训开出率约60%,理工科实验开出率不足50%。高职学院成以来,通过学校实验专项经费投入和引进社会资金,我院实验环境和实验条件得到改善,实验技术人员队伍素质和管理水平逐步提高,初步满足了高职专业教学的需要。 从目前状况看,还存在不少问题。主要表现在:(1)高职专业实验室的建设被重视的程度与建设的需求不谐调,资金投入明显不足;(2)实验室的管理体制不完善,尙未设立专门的实验室管理机构;(3)校内实训基地没有专用场地,多数专业的实验室或模拟实验室尚未规划设计,已建专业实验室(特别是软件高职实验室)未形成规模;(4)实验室技术人员的数量不足,电脑和网络的维护和维修人员的素质有待提高;(5)实验教学管理缺严格少规范,实验教学质量有待提高。 三、实验室建设目标与主要任务 根据国家教育部《高职高专院校人才培养工作水平评估方案》要求和我院的发展规划,未来三年,我院将进一步调整实验室结构和布局,搞好实验室队伍建设,不断优化资源配置,加大投资力度,更新和补充教学仪器设备,建成一个适应现代化办学要求的规范化、现代化

C51单片机实验报告

实验报告册 课程名称:单片机原理与应用B 指导老师:xxx 班级:xxx 姓名:xxx 学号:xxx 学期:20 —20 学年第学期南京农业大学工学院教务处印

实验目录实验一:指示灯/开关控制器 实验二:指示灯循环控制 实验三:指示灯/数码管的中断控制 实验四:电子秒表显示器 实验五:双机通信

姓名:学号:班级:成绩: 实验名称:指示灯/开关控制器 一、实验目的: 学习51单片机I/O口基本输入/输出功能,掌握C语言的编程与调试方法。 二、实验原理: 实验电路原理图如图所示,图中输入电路由外接在P1口的8只拨动开关组成;输入电路由外接在P2口的8只低电平驱动的发光二极管组成。此外,还包括时钟电路、复位电路和片选电路。 在编程软件的配合下,要求实现如下指示灯/开关控制功能:程序启动后,8只发光二极管先整体闪烁3次(即亮→暗→亮→暗→亮→暗,间隔时间以肉眼可观察到为准),然后根据开关状态控制对应发光二极管的亮灯状态,即开关闭合相应灯亮,开关断开相应灯灭,直至停止程序运行。 三、软件编程原理为; (1)8只发光二极管整体闪烁3次

亮灯:向P2口送入数值0; 灭灯:向P2口送入数值0FFH; 闪烁3次:循环3次; 闪烁快慢:由软件延时时间决定。 (2)根据开关状态控制灯亮或灯灭 开关控制灯:将P1口(即开关状态)内容送入P2口;无限持续:无条件循环。 四、实验结果图: 灯泡闪烁:

按下按键1、3、5、7:

经检验,其余按键按下时亦符合题目要求。 五、实验程序: #include"reg51.h" void delay(unsigned char time) { unsigned int j=15000; for(;time>0;time--) for(;j>0;j--); } void main(){ key,char i; for(i=0;i<3;i++) { P2=0x00; delay(500); P2=0xff; delay(500) } while(1) { P2=P3;

《单片机系统设计》实验报告

短学期实验报告 (单片机系统设计) 题目: 专业: 指导教师: 学生姓名: 学号: 完成时间: 成绩:

基于单片机的交流电压表设计 目录 1系统的设计要求 (2) 2系统的硬件要求 (2) 2.1真有效值转换电路的分析 (2) 2.2放大电路的设计 (3) 2.3A/D转换电路的设计 (3) 2.4单片机电路的分析 (4) 2.5显示电路 (4) 3 软件设计 (5) 3.1 软件的总流程图 (5) 3.2 初始化定义与定时器初始化流程图 (5) 3.3 A/D转换流程图 (6) 3.4 数据处理流程图 (6) 3.5 数据显示流程图 (7) 4 调试 (7) 4.1 调试准备 (7) 4.2 关键点调试 (7) 4.3 测试结果 (8) 4.4 误差分析 (8) 5结束语 (8) 5.1 总结 (9) 5.2 展望 (9) 附录1 总原理图 (10) 附录2 程序 (10) 附录3 实物图 (14)

基于单片机的交流电压表设计 ****学院 ****专业 姓名 指导老师:******* 1 设计要求 (1)运用单片机实现真有效值的检测和显示。 (2)数据采集使用中断方式,显示内容为有效值与峰值交替进行。 2 硬件设计 本系统是完成一个真有效值的测量和显示,利用AD737将交流电转换成交流电压的有效值,用ADC0804实现模数转换,再通过单片机用数码管来显示。系统原理框图如图2-1所示。系统框图由真有效值转换电路、放大电路、A/D 转换电路、单片机电路、数码管显示电路五部分。 图2-1 原理框图 2.1 真有效值转换电路 真有效值转换电路主要是利用AD737芯片来实现真有效值直流变换的,即将输入的交流信号转换成直流信号的有效值,其原理图如图2-2所示。 图2-2 真有效值转换电路 由于AD737最大输入电压为200mV, 所以需要接两个二极管来限制输入电压,起到限幅的作用。如图中D1、D2,由IN4148构成,电容C6是耦合电容,电阻R1是限流电阻。 2.2 放大电路设计 放大电路主要是利用运放uA741来进行放大,电路原理图如图2-3所示。 A/D 转换 单片机 电路 显示 电路 转换 电路 交流 信号 放大 电路

单片机实验室功能介绍

1、单片机实验室,房间门号(315、317) 2、主要仪器、设备数量和功能介绍 单片机实验箱25台 电脑25台 3、可开设实验(实践)的种类、项目名称 ①清零程序 ②拆字程序 ③拼字程序 ④数据区传送子程序 ⑤数据排序 ⑥查找相同数个数 ⑦无符号双字节快速乘法子程序 ⑧多分支程序 ⑨脉冲计数(定时/计数实验) ⑩电脑时钟(定时器、中断综合实验) 单片机实验室管理规定 1.初到实验室工作学习的人员要学习实验室的有关规章制度,并自觉遵守。 2.实验室设有专职实验员,负责实验室仪器设备管理使用、财产管理、安全管理、考勤管理、实验台搭建等工作(详见单片机实验员岗位职责)。 3.实验室所有仪器设备,未经实验员同意,不得任意拆卸、改装、带出实验室外使用或转借使用。 4.保持实验室的整洁和卫生是每个人的责任。每天工作完毕后要清理工作场地,在实验室内不得任意堆放杂物,废物要及时清除,临时有用的东西要堆放整齐,不得随手乱扔废弃物。5.进入实验室要求衣着整齐,穿工作服,不得光膀子或穿拖鞋进实验室。 6.不得随意将与实验室无关的人带入实验室。 7.实验室内不得大声喧哗影响他人工作。 8.实验前要进行全面的安全检查,运行中的仪器设备,现场不能无人监守,实验完毕离开实验室之前要关好门窗,切断电源和火源,检查无误后方可离开;易燃、易爆物品及有毒害的物品必须由实验员员统一保管,存放在安全之处。 9.注意人身及设备的安全,做实验时要有安全措施,严禁带电作业;实验室内禁止使用明火,确因需要使用明火时需向实验员通报并得到许可,采取防火措施后方可使用;如遇火警,除应立即采取必要的消防措施组织灭火外,应马上报警,同时向校保卫部报告。 10.发现存在事故隐患应及时采取应急措施,同时报告相关领导,以便及时采取措施防止和消除隐患。 11.如无特殊情况,实验室管理人员、实验指导老师不得将各房间钥匙转借他人或复制。进实验室搭建试验台或实验室改造的施工队,必须接受实验室的监督。 12.教师取放实验仪器必须通过实验室管理人员 ,主讲教师领用示教仪器或领取材料须预先填写“使用仪器通知单”,并将通知单提前三天交给实验室管理人员准备,实验管理人员提前一天将准备的物品交给主讲教师。 13.主讲教师仪器使用后应于两日内交还回实验室,如需连续使用,须事先说明,归还的仪器由实验室管理人员与使用人员共同检验,管理人员应一个月清点一次实验仪器。

单片机实验报告

实 验 报 告 实验课程:单片机原理及应用 班级: 12自动化2班 学号: 姓名: 教师:张玲 成绩: 实验日期:年月日 实验名称:实验1——计数显示器 一、实验目的: 学习Proteus 软件的使用,掌握单片机原理图的绘图方法。 二、实验内容: 1、绘制“计数显示器”电路原理图; 2、利用提供的hex文件验证此电路的运行效果。 三、实验要求: 提交的实验报告中应包括:1、绘图方法简述,要求说明元件与电源的选取、摆放及属性编辑,总线与标签的画法等内容;2、电路原理图; 3、仿真运行效果展示,要求就仿真文件加载方法及3~4幅运行截图进行简要说明;4、实验小结,说明遇到的主要问题或实验

1体会等。 参考电路原理图如下: 元件类别电路符号元件名称 Microproces sor ICs “U1”80C51 Miscellaneo us “X1”/12MHz CRYSTAL Capacitors“C1”~“C2” /1nF CAP Capacitors“C3”/22μF CAP-ELEC Resistors Packs “RP1”/7-100ΩRESPACK-7 Resistors“R1”/100ΩRES Optoelectro nics “LED1”~ “LED2” 7SEG-COM-CAT-G RN Switches & Relays “BUT”BUTTON 1、编程思路及C51源程序:

2、电路原理图: 3、仿真运行效果展示:

4、实验小结: 熟悉Proteus软件,了解软件的结构组成与功能;学习ISIS模块的使用方法, 学会设置图纸、选元件、线画总线、修改属性等基本操作;学会可执行文件 加载及程序仿法;理解Proteus在单片机开发中的作用,完成单片机电路原 理图的绘制。

(完整word版)51单片机课程设计实验报告

51单片机课程设计报告 学院: 专业班级: 姓名: 指导教师: 设计时间:

51单片机课程设计 一、设计任务与要求 1.任务:制作并调试51单片机学习板 2.要求: (1)了解并能识别学习板上的各种元器件,会读元器件标示; (2)会看电路原理图; (3)制作51单片机学习板; (4)学会使用Keil C软件下载调试程序; 用调试程序将51单片机学习板调试成功。 二、总原理图及元器件清单 1.总原理图 2.元件清单 三、模块电路分析 1. 最小系统: 单片机最小系统电路分为振荡电路和复位电路, 振荡电路选用12MHz 高精度晶振, 振荡电容选用22p和30p 独石电容;

图 1 图 2 复位电路使用RC 电路,使用普通的电解电容与金属膜电阻即可; 图 3 当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST 为高电平,之后随着时间推移电源负极通过电阻对电容放电,放完电时RST 为低电平。正常工作为低电平,高电平复位。 2. 显示模块: 分析发光二极管显示电路: 图 4 发光二极管显示电路分析:它是半导体二极管的一种,可以把电能转化成光能,常简写为

LED。发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。当给发光二极管加上正向电压后,产生自发辐射的荧光。图中一共有五个发光二极管其中一个为电源指示灯,当学习板通电时会发光以指示状态。其余四个为功能状态指示灯,实际作用与学习板有关 分析数码管显示电路 图 5 数码管显示电路分析:数码管按段数分为七段数码管和八段数码管,图中所用为八段数码管(比七段管多了一个小数点显示位),按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管.共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。数码管主要用来显示经电路板处理后的程序的运行结果。图中使用了八个八段数码管,可以显示八个0-15的数字。使用数码管可以直观的得到程序运行所显示的结果.也可以显示预置在学习板上的程序,主要通过16个开关来控制。 四、硬件调试 1、是否短路 用万用表检查P2两端是短路。电阻为0,则短路,电阻为一适值,电路正常。 2、焊接顺序 焊接的顺序很重要,按功能划分的器件进行焊接,顺序是功能部件的焊接--调试--另一功能部件的焊接,这样容易找到问题的所在。 3、器件功能 1)检查原理图连接是否正确 2)检查原理图与PCB图是否一致 3)检查原理图与器件的DATASHEET上引脚是否一致 4)用万用表检查是否有虚焊,引脚短路现象 5)查询器件的DATASHEET,分析一下时序是否一致,同时分析一下命令字是否正确 6)通过示波器对芯片各个引脚进行检查,检查地址线是否有信号的 7)飞线。用别的的口线进行控制,看看能不能对其进行正常操作,多试验,才能找到问题出现在什么地方。 1、详细描述硬件安装过程中出现的故障现象,并作故障分析,及解决方法。 六、软件调试

(完整版)单片机课后习题答案

单片机课后习题答案 1.89C51单片机内包含哪些主要逻辑功能部件? 答:80C51 系列单片机在片内集成了以下主要逻辑功能部件: (l)CPU(中央处理器):8位(2)片内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB (5)并行I/O 口:8位,4个⑹串行接口:全双工,1个⑺定时器/计数器:16位,2个(8)片内时钟电路:1 个 2.89C51 的EA 端有何用途? 答:/EA端接高电平时,CPU只访问片内flash Rom并执行内部程序,存储器/EA 端接低电平时,CPU 只访问外部ROM ,并执行片外程序存储器中的指令。/EA 端保持高电平时,CPU 执行内部存储器中的指令。 3.89C51 的存储器分哪几个空间?如何区别不同空间的寻址? 答:ROM (片内ROM和片外ROM统一编址)(使用MOVC)(数据传送指令)(16bits 地址)(64KB)片外RAM(MOVX)(16bits 地址)(64KB)片内RAM (MOV)(8bits 地址)(256B) 4. 简述89C51 片内RAM 的空间分配。 答:片内RAM有256B,低128B是真正的RAM区,高128B是SFR (特殊功能寄存器)区。 5. 简述布尔处理存储器的空间分配,片内RAM 中包含哪些可位寻址单元。 答:片内RAM 区从00H~FFH (256B) 其中20H~2FH (字节地址)是位寻址区对应的位地址是00H~7FH 6. 如何简捷地判断89C51 正在工作? 答:用示波器观察8051 的XTAL2 端是否有脉冲信号输出(判断震荡电路工作是否正常?)ALE (地址锁存允许)(Address Latch Enable )输出是fosc 的 6 分频用示波器观察ALE 是否有脉冲输出(判断8051 芯片的好坏?)观察PSEN (判断8051能够到EPROM 或ROM中读取指令码?) 因为/PSEN 接外部EPROM (ROM )的/OE 端子OE=Output Enable (输出允许) 7. 89C51 如何确定和改变当前工作寄存器组? 答:PSW (程序状态字)(Program Status Word )中的RS1和RS0可以给出4 中组合,用来从4组工作寄存器组中进行选择PSW属于SFR( Special Function Register)(特殊功能寄存器) 9. 读端口锁存器和“读引脚”有何不同?各使用哪种指令? 答:读锁存器(ANLP0,A )就是相当于从存储器中拿数据,而读引脚是从外部拿数据(如MOV A,P1 这条指令就是读引脚的,意思就是把端口p1 输入数据送给A)传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常用这些指令于外部通信,判断外部键盘等;字节交换XCH 、XCHD 算术及逻辑运算 ORL、CPL、ANL 、ADD、ADDC 、SUBB、INC 、DEC 控制转移CJNE、DJNZ 都属于读锁存器。10. 89C51 P0?P3 口结构有何不同?用作通用I /O 口输入数据时,应注意什么?

相关文档
最新文档