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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机DIY选题Word文件下载.docx

1、K1开关C01、C02电容30pF二个C122uFVcc电源+5V导线若干三、实验内容1、 焊接 根据实验原理图在电路板上焊接电路2、 四、实验原理图五、程序举例ORG 0000H 程序起始地址 MOV R2,#18H 设置循环次数LOOP: CLR P1.0 循环给P1.0置“0” DJNZ R2,LOOPEND实验二 单片机单个I/O的控制系统 掌握对CPU单个I/O的控制,编写程序让发光二极管每秒钟闪动一次。循环控制:ORG 0000H LOOP:SETB P1.0LCALL DELAY 延时0.5s;CLR P1.0 LCALL DELAYAJMP LOOP 转循环程序;DELAY:M

2、OV R3,#2 延时子程序;D1: MOV R4,#250D2: MOV R5,#250DJNZ R5,$DJNZ R4,D2DJNZ R3,D1 RET END 中断控制: ORG 0000H AJMP MAIN 转主程序; ORG 000BH AJMP INT_TIMER0 T0中断服务程序; ORG 0030H MAIN:MOV TMOD,#01H T0初始化; MOV TH0,#3CH MOV TL0,#0B0H 送100m时间常数; MOV IE,#82H 允许T0中断、CPU开中断; MOV 30H,#5 设置100ms计数器初值; SETB TR0 启动T0计数; AJMP $

3、 等待; INT_TIMER0: MOV TH0,#3CH 重置T0初值50ms; MOV TL0,#0B0H DJNZ 30H,L1 判500ms到否? MOV 30H,#5 恢复100ms计数器初值; CPL P1.0 500ms到,P1.0求反; L1:RETI 返主。 END实验三 单片机多个I/O的控制系统 掌握对CPU的多个I/O控制,在P1口实现8个发光二极管的流水闪烁。AT89S51芯片八个30PfORG 00HSTART:MOV A,#0FFH CLR CMOV R2,#08H 发光二极管的个数; RLC A 左移累加器A中的内容;MOV P1,A A中内容送P1口,点亮一个

4、二极管;CALL DELAY 延时约2ms;DJNZ R2,LOOP 转循环程序,依次点亮8个二极管;MOV R2,#07HLOOP1:RRC A 右移累加器A中的内容;MOV P1,A 熄灭一个二极管;CALL DELAY 延时DJNZ R2,LOOP1 转循环程序,依次熄灭8个二极管;JMP START 跳转开始,重新执行循环DELAY:MOV R3,#20 延时子程序 MOV R4,#20 MOV R5,#248RET实验四 三位循环计数系统 用来熟悉对多位数码管的驱动和正确显示。数码管共阴极三个十一个三极管NPN型9013ORG 0000HA_BIT EQU 30H 第一位数码管数值;

5、B_BIT EQU 31H 第二位数码管数值;C_BIT EQU 32H 第三位数码管数值;ORG 0000H 程序起始地址;AJMP STARORG 0030H STAR的起始地址;STAR:CLR P0.0MOV A,#00H 清空累加器;MOV A_BIT,A MOV B_BIT,AMOV C_BIT,ASTLOP: ACALL DISPLAY 调用显示子程序;INC A_BITMOV A,A_BITCJNE A,#10,STLOP 判断第一位是否到10,到10则第二位开始计MOV A_BIT,#00H 数;INC B_BITMOV A,B_BITCJNE A,#10,STLOP 判断第

6、二位是否到10,到10则第三位开始计MOV B_BIT,#00H 数;INC C_BITMOV A,C_BITCJNE A,#10,STLOP 判断第三位是否到10,到10则给第三位清0;MOV C_BIT,#00H AJMP STLOPDISPLAY: MOV DPTR,#NUMTAB 字形表首地址;MOV R0,#4 DPL1: MOV R1,#250 DPLOP: MOV A,A_BIT MOVC A,A+DPTR 送第一位字形码;MOV P1,A SETB P2.4 开第一位显示;ACALL D1MS 延时1MS;CLR P2.4 关第一位显示;MOV A,B_BIT MOVC A,A

7、+DPTR 送第二位字形码;SETB P2.5 开第二位显示;CLR P2.5 关第二位显示;MOV A,C_BIT MOVC A,A+DPTR 送第三位字形码;SETB P2.6 开第三位显示;CLR P2.6 关第三位显示;DJNZ R1,DPLOP 防止余辉效应;DJNZ R0,DPL1 D1MS: MOV R7,#80 延时子程序,延时约300uS;DJNZ R7,$数码管八段字形表:NUMTAB: DB 0E7H,21H,0CBH,6BH,2DH,6EH,0EEH,27H,0EFH,6FH实验五 测温系统 利用单片机构成实用系统,熟悉单片机和外围设备的通讯。十个4.7K温度传感器DA

8、LLAS DS18B20TEMPER_L EQU 29H 用于保存读出温度的低8位TEMPER_H EQU 28H 用于保存读出温度的高8位FLAG1 EQU 38H 是否检测到DS18B20标志位a_bit equ 20h 数码管个位数存放内存位置b_bit equ 21h 数码管十位数存放内存位置MAIN:LCALL GET_TEMPER 调用读温度子程序MOV A,29HMOV C,40H 将28H中的最低位移入CRRC AMOV C,41HMOV C,42HMOV C,43HMOV 29H,ALCALL DISPLAY 调用数码管显示子程序CPL P1.0AJMP MAININIT_1

9、820: DS18B20复位初始化子程序SETB P2.2NOPCLR P2.2MOV R1,#3 主机发出延时537微秒的复位低脉冲TSR1:MOV R0,#107DJNZ R0,$DJNZ R1,TSR1SETB P2.2 然后拉高数据线MOV R0,#25HTSR2:JNB P2.2,TSR3 等待DS18B20回应DJNZ R0,TSR2LJMP TSR4 延时TSR3:SETB FLAG1 置标志位,表示DS1820存在CLR P1.7 检查到DS18B20就点亮P1.7LEDLJMP TSR5TSR4:CLR FLAG1 清标志位,表示DS1820不存在CLR P1.1LJMP T

10、SR7TSR5:MOV R0,#117TSR6:DJNZ R0,TSR6 时序要求延时一段时间TSR7:GET_TEMPER: 读出转换后的温度值LCALL INIT_1820 先复位DS18B20JB FLAG1,TSS2CLR P1.2RET 判断DS1820是否存在?若DS18B20不存在则返回TSS2:CLR P1.3 DS18B20被检测到!MOV A,#0CCH 跳过ROM匹配LCALL WRITE_1820MOV A,#44H 发出温度转换命令LCALL DISPLAYLCALL INIT_1820 准备读温度前先复位MOV A,#0BEH 发出读温度命令LCALL READ_1

11、8200 将读出的温度数据保存到35H/36H CLR P1.4WRITE_1820: 写DS18B20的子程序MOV R2,#8 一共8位数据WR1:MOV R3,#6DJNZ R3,$MOV P2.2,CMOV R3,#23DJNZ R2,WR1READ_18200: 读DS18B20的程序,从DS18B20中读出两个字节的温度数据MOV R4,#2 将温度高位和低位从DS18B20中读出MOV R1,#29H 低位存入29H(TEMPER_L),高位存入28H(TEMPER_H)RE00:MOV R2,#8 数据一共有8位RE01:MOV R3,#9RE10:DJNZ R3,RE10MO

12、V C,P2.2RE20:DJNZ R3,RE20DJNZ R2,RE01MOV R1,ADEC R1DJNZ R4,RE00 MOV A,29H 将29H中的十六进制数转换成10进制 MOV B,#10 10进制/10=10进制DIV ABMOV B_BIT,A 十位在AMOV A_BIT,B 个位在BMOV DPTR,#NUMTAB 指定查表启始地址 MOV R1,#250 显示1000次 MOV A,A_BIT 取个位数MOVC A,A+DPTR 查个位数的7段代码MOV P0,A 送出个位的7段代码CLR P2.4 开个位显示ACALL D1MS 显示1MSSETB P2.4MOV A,B_BIT 取十位数MOVC A,A+DPTR 查十位数的7段代码MOV P0,A 送出十位的7段代码CLR P2.5 开十位显示SETB P2.5DJNZ R1,DPLOP 100次没完循环DJNZ R0,DPL1 4个100次没完循环 MOV R7,#80

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

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