




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验 2 红外收发电路 红外收发实验示意图 实验参考程序 文件名 DP 51PRO IRDA C 功能 DP 51PRO 实验仪红外收发实验 使用串口发送数据经调制后从红外管输出 并通过红外接收模块把接收到的数据返回串口接收端 通过判断接收到的数 据来控制 LED 灯的亮或灭 include define uint8 unsigned char define uint16 unsigned int sbit LED CON P1 0 定义 LED 控制口 名称 UART SendByte 功能 向串口发送一字节数据 入口参数 dat 要发送的数据 出口参数 无 void UART SendByte uint8 dat SBUF dat 发送数据 while TI 0 等待发送完毕 TI 0 清零 TI 标志 名称 UART RcvByte 功能 接收一字节串口数据 入口参数 dat 接收变量的地址指针 出口参数 返回 0 表示没有数据 返回 1 表示接收到数据 uint8 UART RcvByte uint8 dat if RI 0 return 0 若没有接收到数据则返回 0 dat SBUF 取得接收的数据 RI 0 清除 RI 标志 return 1 名称 UART Init 功能 串口初始化 模式为 1 位起始位 8 位数据位 1 位停止位 波特率为 9600 入口参数 无 出口参数 无 说明 晶振为 11 0592MHz 使用 T1 作为波特率发生器 void UART Init void SCON 0 x50 TMOD 0 x20 TH1 0 xFD TR1 1 名称 main 功能 主函数 初始化串口后不断地发送及接收数据 若接收到所发送的数据则 点亮 LED int main void uint8 i uint16 j uint8 rcv dat uint8 count UART Init while 1 count 0 计数变量清零 for i 0 i40 LED CON 0 若接收到 0 x5A 的个数大于 40 个时 点亮 LED else LED CON 1 否则熄灭 LED for j 0 j 500 j return 0 实验 4 A D 转换部分的参考程序如下 MOV DPTR 0FF80H 选中通道 0 D2D1D0 000 MOVX DPTR A 启动转换 MOV DPTR 0FF91H TEST MOVX A DPTR 读入状态 JNB ACC 0 TEST 判断 EOC 状态 EOC 0 继续查询 MOV DPTR 0FF80H EOC 1 转换完毕 MOVX A DPTR 读入数据 D A 转换的参考程序如下 MOV DPTR 0FF90H MOV A 7FH 待转换的数字量送 A MOVX DPTR A 然后送 FF90H 口 MOV DPTR 0FF91H MOV A 0FDH 控制位 D1 0 送 A MOVX DPTR A 然后送 FF91H 口 MOV A 0FFH 控制位 D1 1 送 A D A 转换流程 图 MOVX DPTR A 然后送 FF91H 口 即 D1 位得到一个正跳变 A D 转换流程图 实验 5 开始 读入状态信息 启动 A D 转换 数据输出显示 A D 转换完 毕 开始 表格首地址送 DPTR 置循环计数初值 查表得到波形数 据 修改表指针 修改 计数值 一周期数 据转换完 毕 送 D A 转换 实验参考程序 TEMPER L EQU 36H 存 放读出温度低位数据 TEMPER H EQU 35H 存放读出温度高位数据 TEMPER NUM EQU 60H 存放转换后的温度值 FLAG1 BIT 00H DQ BIT P3 3 一线总线 控制端口 ORG 8000H LJMP MAIN ORG 8100H MAIN MOV SP 70H LCALL GET TEMPER 从 DS18B20 读出温度数据 LCALL TEMPER COV 转换读 出的温度数据并保存 SJMP 完成一次数字 温度采集 以下为 DS18B20 单总线操作 子程序 读出转换后的温度值 GET TEMPER SETB DQ 定时入口 BCD LCALL INIT 1820 JB FLAG1 S22 LJMP BCD 若 DS18B20 不存在则返回 S22 LCALL DELAY1 MOV A 0CCH 跳 过 ROM 匹配 0CCH LCALL WRITE 1820 MOV A 44H 发 出温度转换命令 LCALL WRITE 1820 NOP LCALL DELAY LCALL DELAY CBA LCALL INIT 1820 JB FLAG1 ABC LJMP CBA ABC LCALL DELAY1 MOV A 0CCH 跳 过 ROM 匹配 LCALL WRITE 1820 MOV A 0BEH 发 出读温度命令 LCALL WRITE 1820 LCALL READ 18200 READ 1820 RET 读 DS18B20 的程序 从 DS18B20 中读出一个字节的数 据 READ 1820 MOV R2 8 读取 8 个 位 一个字节 RE1 CLR C SETB DQ NOP NOP CLR DQ NOP NOP NOP SETB DQ MOV R3 7 延时 DJNZ R3 MOV C DQ 读取一个位 MOV R3 23 延时 DJNZ R3 RRC A DJNZ R2 RE1 RET 写 DS18B20 的程序 WRITE 1820 MOV R2 8 读取 8 个 位 一个字节 CLR C WR1 CLR DQ MOV R3 6 延时 DJNZ R3 RRC A MOV DQ C 发送一个位 MOV R3 23 延时 DJNZ R3 SETB DQ NOP DJNZ R2 WR1 SETB DQ RET 读 DS18B20 的程序 从 DS18B20 中读出两个字节的温 度数据 READ 18200 MOV R4 2 将温度高 低位从 DS18B20 中读出 MOV R1 36H 低位存入 36H TEMPER L 高 位存入 35H TEMPER H RE00 MOV R2 8 读取 8 个位 一个字节 RE01 CLR C SETB DQ NOP NOP CLR DQ NOP NOP NOP SETB DQ MOV R3 7 延时 DJNZ R3 MOV C DQ 读取一个位 MOV R3 23 延时 DJNZ R3 RRC A DJNZ R2 RE01 MOV R1 A DEC R1 DJNZ R4 RE00 RET 将从 DS18B20 中读出的温度 数据进行转换 TEMPER COV MOV A 0F0H ANL A TEMPER L 舍去温度低位中小数点后的四 位温度数值 SWAP A MOV TEMPER NUM A MOV A TEMPER L JNB ACC 3 TEMPER COV1 四舍五入温度值 INC TEMPER NUM TEMPER COV1 MOV A TEMPER H ANL A 07H SWAP A ADD A TEMPER NUM MOV TEMPER NUM A 保存变换后的温度数据 LCALL BIN BCD RET 将 16 进制的温度数据转换成 压缩 BCD 码 BIN BCD MOV DPTR TEMP TAB MOV A TEMPER NUM MOVC A A DPTR MOV TEMPER NUM A RET TEMP TAB DB 00H 01H 02H 03H 04H 05H 06H 0 7H DB 08H 09H 10H 11H 12H 13H 14H 1 5H DB 16H 17H 18H 19H 20H 21H 22H 2 3H DB 24H 25H 26H 27H 28H 29H 30H 3 1H DB 32H 33H 34H 35H 36H 37H 38H 3 9H DB 40H 41H 42H 43H 44H 45H 46H 4 7H DB 48H 49H 50H 51H 52H 53H 54H 5 5H DB 56H 57H 58H 59H 60H 61H 62H 6 3H DB 64H 65H 66H 67H 68H 69H 70H 7 1H DB 72H 73H 74H 75H 76H 77H 78H 7 9H DB 80H 81H 82H 83H 84H 85H 86H 8 7H DB 88H 89H 90H 91H 92H 93H 94H 9 5H DB 96H 97H 98H 99H DS18B20 初始化程序 INIT 1820 SETB DQ NOP CLR DQ MOV R0 80H TSR1 DJNZ R0 TSR1 延 时 SETB DQ MOV R0 25H 96US TSR2 DJNZ R0 TSR2 JNB DQ TSR3 LJMP TSR4 延时 TSR3 SETB FLAG1 置标志位 表示 DS1820 存在 LJMP TSR5 TSR4 CLR FLAG1 清标志位 表示 DS1820 不存在 LJMP TSR7 TSR5 MOV R0 06BH 200US TSR6 DJNZ R0 TSR6 延 时 TSR7 SETB DQ RET 重新写 DS18B20 暂存存储器 设定值 RE CONFIG JB FLAG1 RE CONFIG1 若 DS18B20 存在 转 RE CONFIG1 RET RE CONFIG1 MOV A 0CCH 发 SKIP ROM 命令 LCALL WRITE 1820 MOV A 4EH 发 写暂存存储器命令 LCALL WRITE 1820 MOV A 00H TH 报警 上限 中写入 00H LCALL WRITE 1820 MOV A 00H TL 报警下限 中写入 00H LCALL WRITE 1820 MOV A 7FH 选 择 12 位温度分辨率 LCALL WRITE 1820 RET 延时子程序 DELAY MOV R7 00H MIN DJNZ R7 YS500 RET YS500 LCALL YS500US LJMP MIN YS500US MOV R6 00H DJNZ R6 RET DELAY1 MOV R7 20H DJNZ R7 RET END 霍尔传感器 电特性 TA 25 量 值 参 数符号测试条件 最小典型最大 单 位 电源电压VCC4 5 24V 输出低电平电 压 VOL Vcc 4 5V RL 2K B BOP 200400mV 输出漏电流IOHVout Vccmax B BRP 0 110 A 电源电流ICCVCC Vccmax OC 开路 35mA 输出上升时间tr Vcc 12V RL 820 CL 20pF 0 121 20 S 输出下降时间tf Vcc 12V RL 820 CL 20pF 0 141 40 S 磁特性 VCC 4 5 24V 1mT 10GS 量 值 参 数符号 最小典型最大 单 位 工作点BOP 18mT 释放点BRP2 mT 回 差BH6 8mT 主程序 Include include include define uchar unsigned char define uint unsigned int define DataPort P1 sbit LATCH1 P2 0 定义锁存使能端口 段锁存 sbit LATCH2 P2 1 sbit PPP P3 1 sbit zzz P0 7 unsigned char code HEYAO WeiMa 0 xfe 0 xfd 0 xfb 0 xf7 0 xef 0 xdf 0 xbf 0 x7f unsigned char code TempData 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6 f 0 x00 0 x40 uchar Temp 8 uchar timecount bit flag unsigned long x void delay void jing void Display unsigned char FirstBit unsigned char Num static unsigned char i 0 do DataPort 0 xff 清空数据 防止有交替重影 LATCH1 1 段锁存 LATCH1 0 DataPort HEYAO WeiMa i FirstBit 取位码 LATCH2 1 位锁存 LATCH2 0 DataPort Temp i 取显示数据 段码 LATCH1 1 段锁存 LATCH1 0 i delay if i Num i 0 while PPP 1 void main PPP 1 TMOD 0 x15 TH1 定时 模式 1 TH0 计数 模式 1 TH0 0 TL0 0 TH1 65536 50000 256 TL1 6
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全知识培训四不伤害课件
- 8安全记心上《不让溺水悲剧发生》(教学设计)-统编版道德与法治三年级上册
- 3.5 人体生命活动的调节 说课稿
- 武汉市中石化2025秋招笔试行测专练题库及答案
- 爱的奉献说课稿小学音乐人音版五线谱五年级下册-人音版(五线谱)
- 中国移动连云港市2025秋招笔试行测题库及答案计算机类
- 5 让我们的家更美好教学设计小学道德与法治四年级上册统编版(五四学制)
- 9 生活离不开规则三年级下册道德与法治同步教学设计(统编版)
- 安全相关培训课程
- Lesson 23 Pink,Purple教学设计-2025-2026学年小学英语一年级上册冀教版(一起)
- 国家机关事业单位工作人员受到行政刑事处罚工资处理意见
- 道路运输管理机构人员编制理论研究
- 垃圾发电厂考试题库含答案全套
- 仁爱版九年级英语上册unit2topic1复习课市公开课一等奖省课获奖课件
- 北京市国内旅游合同书
- 公司品牌建设五年规划
- 第二单元 三国两晋南北朝的民族交融与隋唐统一多民族封建国家的发展 知识清单 高中历史统编版(2019)必修中外历史纲要上册
- 居室环境的清洁与消毒
- GB/T 39766-2021人类生物样本库管理规范
- GB/T 2900.50-2008电工术语发电、输电及配电通用术语
- GB/T 2518-2008连续热镀锌钢板及钢带
评论
0/150
提交评论