收藏 分享(赏)

学校物业管理方案一.doc

上传人:A小陳 文档编号:3378297 上传时间:2021-01-09 格式:DOC 页数:28 大小:143.50KB
下载 相关 举报
学校物业管理方案一.doc_第1页
第1页 / 共28页
学校物业管理方案一.doc_第2页
第2页 / 共28页
学校物业管理方案一.doc_第3页
第3页 / 共28页
学校物业管理方案一.doc_第4页
第4页 / 共28页
学校物业管理方案一.doc_第5页
第5页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、一伀倀儀刀匀吀唀嘀圀堀夀娀嬀尀崀帀开怀愀戀挀搀攀昀最栀椀樀欀氀洀渀漀瀀焀爀猀琀甀瘀眀砀礀稀笀簀紀縀缀耀脀舀茀萀蔀蘀蜀蠀褀言謀谀贀踀輀退鄀鈀錀鐀销阀需頀餀騀鬀鰀鴀鸀鼀一伀倀儀刀匀吀唀嘀圀堀夀娀嬀尀崀帀开怀愀戀挀搀攀昀最栀椀樀欀氀洀漀渀瀀焀爀猀琀甀瘀眀砀礀稀笀簀紀縀缀耀脀舀茀萀蔀蘀蜀蠀褀言謀谀贀踀輀退鄀鈀錀鐀销阀需頀餀騀鬀鰀鴀鸀鼀一伀倀儀刀匀吀唀嘀圀堀夀娀嬀尀崀帀开怀愀戀挀搀攀昀最栀椀樀欀氀洀渀漀瀀焀爀猀琀甀瘀眀砀礀稀笀簀紀縀缀耀脀舀茀萀蘀蔀蜀蠀褀言謀谀贀踀輀退鄀鈀錀鐀销阀需頀餀騀鬀鰀鴀鸀鼀一伀倀儀刀匀吀唀嘀圀堀夀娀嬀尀崀帀开怀愀戀挀搀攀昀最栀椀樀欀氀洀渀漀瀀焀爀猀琀甀瘀眀砀礀稀笀簀紀縀缀耀脀舀茀

2、萀蔀蘀蜀蠀褀言謀谀贀踀輀退鄀鈀錀鐀销阀需頀餀騀鬀鰀鴀鸀鼀一伀倀儀吀唀刀匀嘀5电路构成的多谐振荡电路,通过计算振荡输出的频率来计算被测电阻的大小。 555接成多谐振荡器的形式,其振荡周期为:T=t1+t2=(ln2)(R1+Rx)*C1+(ln2)Rx*C1,得出:即,求出Rx表3-1 振荡测量电路对应量程参数档位电阻R1电容C1频率范围0100R1=200 C1=4.7uF7661543HZ1001KR2=15KC2=10nF84879492HZ1K10KR3=20KC3=10nF36066568HZ10K10MR4=10M C4=4.7pF1093016387HZ3.2 通道选择电路设计利用

3、实现测量CD4052类别的转换,CD4052是差分4通道数字控制模拟开关器件,有A0和A1两个二进制控制输入端和INH输入,具有低导通阻抗和很低的截止电流。表3-2 CD4052真值表INHIBITBA0000x,0y0011x,1y0112x,2y0113x,3y1xxNone该电路通过CD4052双向模拟开关控制量程的自动切换,直到进入适当的量程为止。电路流程图如下:检测被测电阻阻值RC振荡转换电路调用量程判断程序CD4052开关最高量程吗?超量程吗?升量程降量程超载报警图3-3 量程自动转换流程图注:实际测试时由于CD4052出现问题,我们改用继电器实现量程转换,但原理相同。3.3 控制

4、电路设计本设计使用单片机为核心部件,来控制换挡以及显示。以下是单片机管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘

5、故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O

6、口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89S52的一些特殊功能口,如表1所示:表1 P3特殊功能口P3口引脚第二功能P3.0RXD(串行口输入)P3.1TXD(串行口输出)P3.2INT0(外部中断0输入)P3.3INT1(外部中断1输入)P3.4T0(定时器0外部脉冲输入)P3.5T1(定时器1外部脉冲输入)P3.6WR(外部数据存储器写脉冲输出)P3.7RD(外部数据存储器读脉冲输出)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位

7、输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号

8、。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.4 显示电路系统的显示部分采用OCM12864液晶显示模块。3.5 软件设计系统通过频率来控制量程自动切换,

9、并根据RC振荡频率公式换算成对应的电阻,然后再控制显示模块输出。YesNO 初始化通过采样中断计算频率计算R的值通过R的范围,确定档位12864显示判断是否在规定频率内开始结束后两个继电器至高,其它至低图3-2 程序设计流程图4 测试及结果分析4.1 测试方法及使用的仪器测量方法:采用555多谐振荡电路,将电阻量转换为相应的频率信号值。再利用单片机及有关程序对范围的选择,显示侧量出数值。测试使用的仪器设备:数字万用表、示波器。4.2 指标测试和测试结果表4.1.2 测试结果对照分析表档位测量值测量值实际值010023141001K7682311K10K5614550110K10M8978K88

10、70K5 结束语本设计实现了一种利用51单片机实现的简易电阻测试仪,基于单片机和量程自动切换电路的控制系统,能够根据待测电阻的大小实现适当频率的控制,再分别采样频率,通过程序计算待测电阻Rx并在12864液晶上显示。并且测量的数据结果较稳定。设计过程中出现问题有以下:1. 在测量振荡电路中电阻和电容值时,由于单片机对10HZ10KHZ的频率计数精度最高。所以要选用合理的电阻和电容大小。同时又要考虑到不能使电阻的功率过大,这样给我们计算带来了很多的麻烦。2.我们接收到频率较高,所以通过电路很难控制精确度,产生的误差比较大。3CD4052是差分4通道数字控制模拟开关器件,有A0和A1两个二进制控制

11、输入端和INH输入,具有低导通阻抗和很低的截止电流。但是其频率较高不能自动换挡,最终我们选择了继电器来显示代替CD4052来自动换挡的功能。 4、在实验过程中时常有捉襟见肘的感觉,一方面是理论不足,很多好的方案,好的思想由于理论的匮乏,无法理解,也不能使用,在以后的学习过程中理论的学习始终是重点;还有就是程序的问题,由于编程水平跟不上,加上思路也不清晰,导致程序的编写存在很大的问题,好的思想,无法在程序中展现出来,这也是以后需要加强的地方。在做毕业设计的这段时间里,我学会了很多知识,同学之间的团结互助,老师孜孜不倦的教导,使我们感受了老师们认真负责的态度,毕业论文的制作给了我难忘的回忆。在我徜

12、徉书海查找资料的日子里,面对无数书本的罗列,最难忘的是每次找到资料时的激动和兴奋;亲手设计电路图的时间里,记忆最深的是每一步小小思路实现时那幸福的心情;为了论文我曾赶稿到深夜,但看着亲手打出的一字一句,心里满满的只有喜悦毫无疲惫。这段旅程看似荆棘密布,实则蕴藏着无尽的宝藏。参考文献1. 高吉祥,黄智伟,丁文霞. 数字电子技术M. 北京:电子工业出版社,2003年,P17-P322. 邹其洪 黄智伟 高嵩.电工电子实验与计算机仿真M.北京:电子工业出版社,2003年,P51-P673. 张友汉.电子线路设计应用手册M.福建:福建科学技术出版社.2000年.P132-P156.4. 黄智伟.电子电

13、路计算机仿真设计M. 北京:电子工业出版社,2004年,P43-P58附录附录1: 主要元器件清单单元电路元器件型号及大小数量5V电源电路变压器220V1个整流桥2W102个电解电容2200UF2个电解电容2200UF2个元片电容1044个三极管78051个三极管79051个电阻5102个发光二极管2个插针若干多路选择继电器继电器943-1C-SDS8个三极管C80508个电阻1K8个二极管8个插针若干单片机最小系统芯片AT89C511个晶振11.0592MHZ1个电容22PF2个电容10 UF1个按钮开关SW-PB1个电阻10K1个电阻1K1个插针若干555振荡电路LM5551个电阻4个RC

14、振荡电路4个未知电阻附录2:程序清单/*12864子程序*/#include #include #include #include #define uchar unsigned char#define uint unsigned int /宏定义/*12864接口定义*/sbit LCD_RS = P20; /1:输入数据 ;0:输入命令 sbit LCD_RW = P21; /1:读数据 0:写数据sbit LCD_EN = P22; /LCM使能端#define LCD_DATA P1 /12864总线端口 /*LCD功能初始化指令*/#define CLEAR_SCREEN 0x01 /

15、清屏指令:清屏且AC值为00H#define AC_INIT 0x02 /将AC设置为00H。且游标移到原点位置#define CURSE_ADD 0x06 /设定游标移动方向(默认游标右移)#define FUN_MODE 0x30 /工作模式:8位基本指令集#define DISPLAY_ON 0x0c /显示开,显示游标,且游标位置反白#define DISPLAY_OFF 0x08 /显示关#define CURSE_DIR 0x14 /游标向右移动:AC=AC+1#define SET_CG_AC 0x40 /设置AC,范围为:00H3FH#define SET_DD_AC 0x80

16、/*汉字地址表*/uchar code addr_tab= /便于根据汉字坐标求出地址 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,/第一行汉字位置 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97, /第二行汉字位置 0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f, /第三行汉字位置 0x98,0x99,0x9a,0x9b,0x9c,0x9d,0x9e,0x9f, /第四行汉字位置;/*n(ms)延时子程序*/void delayms(uint t) /约延时n(ms) uint i; whil

17、e(t-) for(i=0;i150;i+); /*等待12864显示屏忙*/void WaitBusy(void) /延时一小段时间,等待12864显示屏空闲 uchar i=5; while(i-);/*写指令代码*/void Lcd_WriteCmd(uchar cmdcode) LCD_RS = 0; LCD_RW = 0; LCD_EN = 1; WaitBusy(); LCD_DATA = cmdcode; LCD_EN = 0;/*写数据*/void Lcd_WriteData(uchar dispdata) LCD_RS = 1; LCD_RW = 0; LCD_EN = 1;

18、 WaitBusy(); LCD_DATA = dispdata; LCD_EN = 0;/*初始化12864显示屏*/void Lcd_Init() delayms(50); Lcd_WriteCmd(0x30); /选择基本指令集 delayms(2); WaitBusy(); Lcd_WriteCmd(0x30); /选择8bit数据流 delayms(2); Lcd_WriteCmd(0x0c); /开显示(无游标、不反白) delayms(2); Lcd_WriteCmd(0x01); /清除显示,并且设定地址指针为00H delayms(20);/*字符显示*/void displ

19、ay10(unsigned long m)/*这样写的好处就是能让每一位都能显示,且数据地址指针是自动加一位的*/ Lcd_WriteCmd(0x9a);/lcd_pos(2,4); /第四行第四个字节上显示;Lcd_WriteData(m+0x30); /显示个位;Lcd_WriteData(.);/写入“.”小数点固定Lcd_WriteData(0+0x30); /显示百分位Lcd_WriteData(0+0x30); /显示十分位Lcd_WriteCmd(0x9a); /锁定显示位置;void display11(unsigned long u)/*这样写的好处就是能让每一位都能显示,且

20、数据地址指针是自动加一位的*/ Lcd_WriteCmd(0x9a);/lcd_pos(2,4); /第四行第四个字节上显示;Lcd_WriteData(u/10+0x30);/分离出十位;Lcd_WriteData(u%10+0x30); /个位Lcd_WriteData(.);/写入“.”小数点固定Lcd_WriteData(u%10/10+0x30); /显示百分位Lcd_WriteCmd(0x9a); /锁定显示位置;void display12(unsigned long v)/*这样写的好处就是能让每一位都能显示,且数据地址指针是自动加一位的*/ Lcd_WriteCmd(0x9a);/lcd_

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 应用文书 > 工作计划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报