ImageVerifierCode 换一换
格式:DOCX , 页数:9 ,大小:17.88KB ,
资源ID:9827021      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9827021.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单芯片应用实习报告.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单芯片应用实习报告.docx

1、单芯片应用实习报告单芯片应用实习报告班级:二技电一甲 姓名:林桀民 学号:AD89017 相关知识 MCS-51是Intel公司所设计的8051系列单芯片总名称在MCS-51这个大家族里较具知名度的编号有805187518031实际上这些不同编号的单芯片都使用相同的核心CPU与指令及只是在制造IC时给予不同的周边设计分别赋予这些IC一个特别编号 主要功能: MCS-51系列单芯片的主要功能列举如下 专为控制应用所设计的8位CPU 有完整的单位元逻辑运算指令,具有布尔运算能力 有32条(4个Port)双向且每条都可以被单独寻址的I/O 内部有两个16位Timer/Counter 有一个通信用的全

2、双工UART(串行I/O) 可接受5个中断源且有2层优先权的中断结构 内部有时脉震荡器(最高频率可到12MHz) 内部有4K的程序内存(ROM),128byte数据存储器(RAM) 可在外部扩充到64K程序内存(EPROM) 可在外部扩充到64K数据存储器(RAM) 8051内部结构方块图 8051接脚图与功能(40): 若系统读取外部程序,接低电位/ EA/Vpp/Psen 高电位动作,系统重置,PC回到0000H RESET(9脚) 串行通讯输出/入(P3.0,P3.1) RXD/TXD 外部中断输入(P3.2,P3.3) INT0/1 计时计数器的输入(P3.4,P3.5) T0/T1

3、8位I/O端口,外接内存可做地址线 P2.0P2.7 地址闩锁致能信号 ALE/Prog 外部数据的读取/写入(P3.7,P3.8) RD/WR 8位I/O端口, P1.0P1.7 8位I/O端口,外接内存做数据地址线 P0.0P0.7 时脉反相放大器输出/入端,接石英振荡器 XTAL1/2(19/18脚) 电源(5V)/接地 Vcc(40脚)/Vss(20脚) 功能 接脚 8051基本电路图: 基本电路中有振荡电路及开机重置电路 振荡电路:8051芯片内部有一个振荡器,可以当作CPU的时脉,再设计时脉源时,若使用芯片内部的振荡器,只要在18、19脚两脚间接振荡频率范围3.5M12MHZ的石英

4、振荡晶体或陶质共振器,并各自接20PF50PF的电容。 重置电路:任何微电脑系统均有硬件重置功能,硬件重置主要用来确保CPU在开机时从程序的预定起始地址开始执行及当系统当机时使系统能重新开始,8051的重至信号输入脚为第9脚,此输入脚为高电位动作,且高电位至少要维持2个机械周期也就是24个振荡周期。开机时RST脚电位为高电位促使系统重置,利用电容充电效应使RST接脚电位降成低电位,8051完成重置动作固定到程序内存地址0000H开始执行。 8051内存介绍: 8051的内存包含程序内存(ROM)和数据存储器(RAM)两种,他们分别有不同的用途,程序内存的作用是在储存所要执行的程序,而数据存储器

5、用来存放在程序执行过程中所产生的数据,由于8051读取程序内存有专用控制线PSEN,所以程序内存和数据存储器二者选址时完全独立不相干。 程序内存(ROM)结构: 89C51的4K程序内存中,有下列几个重要地址,若没有用到,就作一般程序内存使用,单芯片系统程序储存在程序内存(ROM),一般8051/52提供48KBytes程序内存。使用者将编辑好的程序,经过组译(Assembler)、连结(Link)后,烧录到单芯片的ROM。如果采用89C51芯片,可重复烧录多次,每次烧录可将前一次烧录的程序自动清除。若采用8031芯片,由于本身没有内建ROM,所以必须采外部扩充内存 TIMER0中断服务程序地

6、址 000BH TIMER1中断服务程序地址 001BH UART串行通讯服务程序地址 0023H 功能 地址 INT1外部中断服务程序地址 0013H INT0外部中断服务程序地址 0003H RESET程序开始执行地址 0000H 程序内存配置图 单芯片数据存储器(RAM)结构: 8051的数据存储器是随机存取的,使用者随时读取或写入数据,通常是用来当程序执行时存放数据的缓存器。 SCON/SBUF 1byteX2 (98H/99H) PSW/ACC 1byteX2 (D0H/E0H) 特殊缓存器(SFR) 128byte 80HFFH 功能 长度 地址 TCON/TMOD/TL/TH 6

7、byte (88H8DH) 使用者直接寻址可 设定SP建立堆栈区 80byte 30H7FH 个别位数据寻址 8bit16 20H2FH R0R7四个缓存器库 8byte4 00H1FH 数据存储器(RAM)是单芯片在执行程序时,储存处理数据的地方。一般8051/52提供128256Bytes数据存储器。其中又可将它们区分为下列几项功能的缓存器与内存区: n001FH的32个字节可分为四个缓存器库,分别为RB0、RB1、RB2、RB3。每个缓存器库有8个缓存器,分别为R0、R1、R2、R3、R4、R5、R6、R7。 n202FH的16位(2BYTES)可做直接位寻址,例如SETB20H.0、C

8、LR20H.1。 n307FH80个字节的内存区又称为”使用者RAM”,可以直接寻址存取资料,同时也可以由使用者透过设定SP,自定堆栈数据区。 n80FFH的128个字节数据,8031/8051芯片没有提供。在8031/8052芯片可做间接寻址数据区,或是可直接寻址的状态缓存器(SFR)使用。其中包括P0、P1、P2、P3端口的对应缓存器,以及稍候我们作UART通讯功能会用到的SCON串行控制缓存器、与定时器/计数器控制缓存器。 熟悉这些内存的结构,对撰写单芯片程序会有很大的帮助。读者想自行撰写或修改单板微电脑的系统监督程序,最好能下点工夫,将这些内存的功能与结构做充分的了解。 中断向量地址:

9、 由于这些内部程序内存的地址都与中断有关,所以我们也称这些地址为中断向量,在撰写程序时,若程序本身没有利用到中断的功能,则以下七个特别的地址可视为一般程序内存地址来处理,但是若程序中使用到某个中断时,则该中断对应的地址,就必须保留,因为,只要该中断发生时,接下来被执行的就是位于该地址的指令,下列这些地址是各种中断服务程序的进入点。 功能 地址 中断 串行埠中断向量 0023H UART 计时计数中断TIMER2向量 002BH TIMER2 计时计数中断TIMER1向量 001BH TIMER1 计时计数中断TIMER0向量 000BH TIMER0 外部中断INT1向量 0013H INT1

10、 外部中断INT0向量 0003H INT0 系统重置启始地址 0000H RESET 单芯片指令集: 数据寻址指令:累加器,缓存器,直接,间接内存寻址与I/O端口间的数据转移。 算术运算指令:数据做加(ADD)、减(SUB)、乘(MUL)、除(DIV)运算,或加一(INC),减一(DEC)等运算。 逻辑运算指令:数据做AND(ANL)、OR(ORL)、XOR(XRL)运算,与RR、RL、RRC、RLC位旋转功能。 布尔代数运算指令:位数据的清除与设定,如SETB,CLR。或位数据的运算ANLC,bit.等。 程序流程控制:循环,呼叫子程序(CALL),中断,条件判断的跳跃。如JMP,JZ,C

11、JNZ,DJNZ,RET.等指令。 范例应用: 名称: 单开关控制灯号变化,以指拨开关以控制程序流向,造成灯号的变化 动作要求: 接于阜脚P2.7上之指拨开关拨至ON位置时,P2.7阜脚为低电压,接于P0之8个LED灯不停的作霹雳灯之动作,直制止拨开关拨至OFF位置时,P2.7为高电位,LED灯号变成奇偶位置不停地交互亮灭。 电路图: 程序: ORG00H START:JBP2.7,LOOP2;检查P2.7,若为1则跳至LOOP2,否则往下执行 LOOP1:MOVDPTR#TABLE;设定表格之起始为止于DPTR MOVR3,#07H;设定表格数据之地址组数于R3 MOVA,#00H;设定偏移

12、量起始地址值0于A缓存器 L1:JBP2.7,LOOP2;在LOOP1循环中,依据DPTR及A MOVR0,A;依序由表格取出七个字节数据送 MOVCA,A+DPTR传至P0作霹雳灯动作且检查P2.7之变 MOVP0,A;化,以决定是否跳出LOOP1循环 MOVR5,#5 ACALLDELAY MOVA,R0 INCA DJNZR3,L1 AJMPLOOP1;无条件跳出LOOP1 LOOP2:MOVA,#55H;在L2循环中,不停的作奇偶灯交互换互亮灭的动作并检查P2.7之变化,已决定是否跳出L2循环 L2:JNBP2.7,LOOP2 MOVP0,A MOVR5,#5 ACALLDELAY XRLA,#FFH AJMPL2 DELAY:MOVR3,#38H;子程序,延迟时间=R5*20ms D1:MOVR6,#F9H DJNZR6,$ DJNZR7,D1 DJNVR5,DELAY RET TABLE:DB7EH,0BDH,0DBH,07EH;霹雳灯之表格数据 DB0DBH,0BDH,7EH END

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1