欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    环道控制系统下位软件设计方案二 -毕业设计.doc

    • 资源ID:82398608       资源大小:538.50KB        全文页数:38页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    环道控制系统下位软件设计方案二 -毕业设计.doc

    毕业设计报告(论文)报告(论文)题目:环道控制系统下位软件 设计方案二 作者所在系部: 电子工程系 作者所在专业: 自动化 作者所在班级: 作 者 姓 名 : 作 者 学 号 : 指导教师姓名: 完 成 时 间 : XXXXX学院电子工程系毕业设计(论文)任务书姓 名:专 业: 班 级:学号: 指导教师:职 称:完成时间:毕业设计(论文)题目:环道控制系统下位软件设计方案二设计目标:利用模拟电子技术和数字电子技术的理论知识,设计实现能在双踪示波器显示屏上显示晶体管输出特性曲线这一基本要求。技术要求:1 能显示8条完整的输出特性曲线。2 相邻特性曲线的间隔相同。3 特性曲的显示自下而上,且连续、无闪烁。4 可控制显示特性曲线的起始部分。5 自动识别三个电极、判断其类型和材料。6 测量晶体管的b值。所需仪器设备:计算机一台、multisim2001软件 成果验收形式:原理图、仿真结果参考文献:模拟电子技术基础、数字电子技术基础、电子系统设计时间安排15周-6周立题论证39周-13周仿真调试27周-8周方案设计414周-16周成果验收指导教师: 教研室主任: 系主任:摘 要介绍基于ATMEL公司AT89s52单片机、美国DALLAS公司推出的具有涓流充电能力的低功耗实时时钟电路DS1302、以及数码管驱动芯片ICM7218B实现的时钟电路。本设计中详细介绍了AT89s52单片机、实时时钟电路DS1302、数码管驱动芯片ICM7218B的结构、工作原理及其应用。给出了用实时时钟电路DS1302、数码管驱动芯片ICM7218B实现本设计的汇编源程序。DS1302是实时时钟芯片,单片机AT89S52的任务只是读出1302中的时间信息,软件译码后送ICM7218B驱动数码管显示相关信息,这也使得本设计的软件功能比较单一,易于实现。关于用1302实现电子钟的资料很多,但是大多数都采用了液晶显示;考虑到本设计的应用场合是室外或室内远距离观看,由于数码管显示具有亮度高的特点,故选择数码管显示;本设计的特色在于采用了数码管驱动芯片ICM7218B,一片ICM7218B可以驱动8个共阴极数码管,本设计中的15个数码管只需2片驱动即可满足需要,这使得电路的硬件更为简洁,电路更为可靠。另外还介绍了在硬件制作及软硬件调试过程中的一些经验。 单片机AT89S52采用12MHZ晶振,实时时钟DS1302采用32768HZ晶振。关键词:实时时钟 单片机 ICM7218B 应用 目 录第1章 绪论11.1 课题背景11.2 课题来源11.3 总体方案介绍2第2章基于AT89S52数显时钟的主要器件22.1 单片机AT89S5222.1.1 、主要性能22.2实时时钟芯片DS130242.2.1、 引言52.2.2 、DS1302的结构及工作原理52.2.2.1 引脚排列及引脚说明52.2.2.2 DS1302的控制字节52.2.2.3数据输入输出(I/O)62.3.1 DS1302与CPU的连接72.3.2 DS1302实时时间流程72.4 结论92.2 数码管显示驱动芯片ICM7218B92.2.1.ICM7218B的引脚定义92.2.2. ICM7218B控制命令字格式102.2.3.待显示数据位与数码管各段的对应关系102.2.4.ICM7218B驱动芯片的典型接口电路10第3章AT89S52数显时钟电路原理简图12第4章数显时钟流程图156.1.主程序流程图156.2.时间调整程序流程图16第5章、综合调试17致 谢18参考文献18附 录19基于AT89S52的数显时钟第1章 绪论1.1 课题背景单片机自1976年由Intel公司推出MCS-48开始,迄今已有二十多年了。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅 速发展到家用消费产品、办公自动化、汽车电子、PC 机外围以及网络通讯等广大领域。 单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。 本文讨论的基于AT89S52的电子钟的核心是目前应用极为广泛的51系列单片机,配置了外围设备,构成了一个可编程的计时定时系统,具有体积小,可靠性高,功能强等特点。不仅能满足所需要求而且还有很多功能可供开发,有着广泛的应用领域。 20 世纪 80 年代中期以后,Intel 公司以专利转让的形式把 8051内核技术转让给许多半导体芯片生产厂家,如ATMEL、PHILIPS、ANALOG、DEVICES、DALLAS 等。这些厂家生产的芯片是MCS-51系列的兼容产品,准确地说是与MCS-51指令系统兼容的单片机。这些兼容机与8051的系统结构(主要是指令系统)相同,采用CMOS工艺,因而,常用80C51系列来称呼所有具有8051指令系统的单片机,它们对8051单片机一般都作了一些扩充,更有特点。其功能和市场竞争力更强, 1.2 课题来源在日常生活和工作中,我们常常用到钟表。早期常用的一些时间控制单元都使用模拟电路设计制作的,其定时准确性和重复精度都不是很理想,现在基本上都是基于数字技术的新一代产品,随着单片机性能价格比的不断提高,新一代产品的应用也越来越广泛,大可构成复杂的工业过程控制系统,完成复杂的控制功能。小则可以用于家电控制,甚至可以用于儿童电子玩具。它功能强大,体积小,质量轻,灵活好用,配以适当的接口芯片,可以构造各种各样、功能各异的微电子产品。 随着电子技术的飞速发展,家用电器和办公电子设备逐渐增多,不同的设备都有自己的控制器,使用起来很不方便。根据这种实际情况,设计了一个单片机时钟系统,它可以显示时、分、秒,并在需要时显示阳历日期年、月、日。1.3 总体方案介绍本次设计电子钟系统功能简单,用单片机的最小系统就能得以实现。而单片机的最小系统设计中实际上最重要的就是对显示器接口电路的设计,由于系统功能不同所以要求就不同,接口设计也就不同。对一个键盘/显示器接口设计应从整个系统出发,综合考虑软、硬件特点。本人在设计采用实时时钟芯片的设计方案。实时时钟芯片具备年、月、日、时、分、秒计时功能和多点定时功能,计时数据的更新每秒自动进行一次,不需程序干预。计算机可通过中断或查询方式读取计时数据进行显示,因此计时功能的实现无需占用CPU的时间,程序简单。此外,实时时钟芯片多数带有锂电池做后备电源,具备永不停止的计时功能;具有可编程方波输出功能,可用做实时测控系统的采样信号等;有的实时时钟芯片内部还带有非易失性RAM,可用来存放需长期保存但有时也需变更的数据。由于功能完善,精度高,软件程序设计相对简单,且计时不占用CPU时间,因此,在工业实时测控系统中多采用这一类专用芯片来实现实时时钟功能。我采用了实时时钟芯片DS1302来完成本设计。第2章基于AT89S52数显时钟的主要器件2.1 单片机AT89S522.1.1 、主要性能与MCS-51单片机产品兼容8K字节在系统可编程Flash存储器1000次擦写周期全静态操作:0Hz33MHz 三级加密程序存储器32个可编程I/O口线三个16位定时器/计数器八个中断源全双工UART串行通道低功耗空闲和掉电模式掉电后中断可唤醒看门狗定时器双数据指针掉电标识符AT89S52的功能特性描述如下:AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。2.1.2 、引脚功能说明VCC : 电源GND: 地P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器在时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节。引脚号第二功能P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5 MOSI(在系统编程用)P1.6 MISO(在系统编程用)P1.7 SCK(在系统编程用)P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用。在flash编程和校验时,P3口也接收一些控制信号。P3.0 RXD(串行输入)P3.1 TXD(串行输出)P3.2 INT0(外部中断0) P3.3 INT0(外部中断0) P3.4 T0(定时器0外部输入)P3.5 T1(定时器1外部输入)P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器写选通)RST: 复位输入。晶振工作时,RST脚持续2 个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96 个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE 仅在执行MOVX 或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。2.2实时时钟芯片DS13022.2.1、 引言现在流行的串行时钟电路很多,如DS1302、 DS1307、DS12887等。这些电路的接口简单、价格低廉、使用方便,被广泛地采用。本设计采用的实时时钟电路DS1302是DALLAS公司的一种具有涓流充电能力的电路,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。 2.2.2 、DS1302的结构及工作原理 DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。 2.2.2.1 引脚排列及引脚说明图1示出DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc10.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向)。SCLK始终是输入端。2.2.2.2 DS1302的控制字节 DS1302 的控制字如图2所示。控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。 2.2.2.3数据输入输出(I/O) 在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。 2.2.2.4 DS1302的寄存器 DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表1。 此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。2.3 DS1302实时显示时间的软硬件 DS1302与CPU的连接需要三条线,即SCLK(7)、I/O(6)、RST(5)。图3示出DS1302与89C2051的连接图,其中,时钟的显示用LCD,也可以使用LED数码管显示。在本设计中使用数码管显示,这主要是考虑到数码管显示时的亮度高,便于时钟的远距离观看。2.2.3.1 DS1302与CPU的连接 实际上,在调试程序时可以不加电容器,只加一个32.768kHz 的晶振即可。只是选择晶振时,不同的晶振,误差也较大。另外,还可以在上面的电路中加入DS18B20,同时显示实时温度。只要占用CPU一个口线即可。 LCD还可以换成LED。功耗低,显示状态时电流为2A (典型值),省电模式时小于1A,工作电压为2.4V3.3V,显示清晰。2.2.3.2 DS1302实时时间流程图4示出DS1302的实时时间流程。根据此流程框图,不难采集实时时间。 DS1302 与微处理器进行数据交换时,首先由微处理器向电路发送命令字节,命令字节最高位MSB(D7)必须为逻辑1,如果D7=0,则禁止写DS1302,即写保护;D6=0,指定时钟数据,D6=1,指定RAM数据;D5D1指定输入或输出的特定寄存器;最低位LSB(D0)为逻辑0,指定写操作(输入), D0=1,指定读操作(输出)。在DS1302的时钟日历或RAM进行数据传送时,DS1302必须首先发送命令字节。若进行单字节传送,8位命令字节传送结束之后,在下2个SCLK周期的上升沿输入数据字节,或在下8个SCLK周期的下降沿输出数据字节。DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM寄存器,在此方式下可一次性读、写所有的RAM的31个字节。要特别说明的是备用电源B1,可以用电池或者超级电容器(0.1F以上)。虽然DS1302在主电源掉电后的耗电很小,但是,如果要长时间保证时钟正常,最好选用小型充电电池。可以用老式电脑主板上的3.6V充电电池。如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容器代替。100 F就可以保证1小时的正常走时。DS1302在第一次加电后,必须进行初始化操作。初始化后就可以按正常方法调整时间。 2.4 结论DS1302 存在时钟精度不高,易受环境影响,出现时钟混乱等缺点。DS1302可以用于数据记录,特别是对某些具有特殊意义的数据点的记录,能实现数据与出现该数据的时间同时记录。这种记录对长时间的连续测控系统结果的分析及对异常数据出现的原因的查找具有重要意义。传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此,只能记录数据而无法准确记录其出现的时间;若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且,某些测控系统可能不允许。但是,如果在系统中采用时钟芯片DS1302,则能很好地解决这个问题。2.2 数码管显示驱动芯片ICM7218BICM7218B是INTER SIL公司生产的CMOS 8位LED共阴极驱动器,内设两种7段译码器(16进制及BCD码译码器),及8个静态字节RAM(存放显示数据),能在多位扫描电路的控制下实现8位LED显示。2.2.1.ICM7218B的引脚定义2.2.2. ICM7218B控制命令字格式ICM7218B为可编程接口芯片,工作方式可通过初始化程序设置。当MODE为1时写入控制字。其中:ID7为数据传送标志位。ID7为高电平时,表明后面输入数据,为低电平时表明后面不输入数据。ID6为译码方式标志位。ID6为1时进行全16进制译码,为0时实现BCD码译码。ID5为硬件译码和软件译码选择端。ID5为1时软件译码,为0时由硬件实现译码。ID4为关闭信号位。为0时关闭译码和显示,为高电平时正常工作。ID3ID0此时无效。若系统选择硬件译码,且MODE为低电平时,ID7_ID4无效。而ID3_ID0为16进制码或BCD码输入值。译码真值表如下:2.2.3.待显示数据位与数码管各段的对应关系2.2.4.ICM7218B驱动芯片的典型接口电路 第3章AT89S52数显时钟电路原理简图本原理图只显示主要的电路连接关系,对ICM7218B的8根段码线合8根位码线都各用一根线来表示,这并不影响对电路原理的表达,相反突出了表达重点,是电路图显得简洁明了。电源电路比较简单,只是一个简单的降压,整流,稳压电路,给电路提供+5V电压。ICM7218B显示电路原理示意图: 下图是简单的示意图,数码管的断码和位码线都合并成了一根线,这样的画法,看图时更简单明了。DS1302时钟电路与主控芯片AT89S52的连接:AT89S52与ICM7218B的连接:本设计共使用了15个共阴极数码管,用两片ICM7218B驱动,两片ICM7218B的地址通过一片译码器74LS138分配,其地址分别是8200H和4200H;本设计采用软件查表译码的方式,所以控制字为0B0H。下面是主控单片机与数码管驱动ICM7218B的连接图。第4章数显时钟流程图6.1.主程序流程图数显是中的主程序功能比较单一,只实现对DS1302的初始化,然后调用对DS1302的读一个字节子程序,写一个字节子程序,分离子程序,显示子程序;完成对DS1302的读、写、读出的BCD码高低位的分离,然后软件查表译码并送往ICM7218B驱动数码管显示相应的年、月、日、时、分、秒及星期。开 始初始化13021302开始震荡从1302中读出年、月、日、星期、时、分、秒读出的数据都是BCD码,将其高低位分离送显示缓冲单元6.2.时间调整程序流程图时间调整利用两个按键实现,移位按键和加一按键。移位按键接P3.0,加一按键接P3.1。可以实现对年(低两位)、月、日、时、分、星期的调整(秒不用调整)。当按键未按下时,P3.0和P3.1都呈高电平,按下按键时P3.0和P3.1呈低电平,在软件中不断检测P3.0和P3.1口的状态就可以识别出相应的操作。·控制键有效进入年调整控制键有效进入月调整等待按键程序加减键有效年加减一等待按键程序加减键有效月加减一等待按键程序加减键有效日加一控制键有效进入小时调整等待按键程序加减键有效小时加一控制键有效进入星期调整等待按键程序加减键有效星期加一控制键有效进入分钟调整等待按键程序加减键有效分钟加一控制键有效,跳出时间调整程序进入主程序控制键有效进入日调整第5章、综合调试根据要实现的功能选用合适的器件,再根据器件设计电路原理图,再写出汇编程序。在进行焊接前要对器件进行筛选检查,比如我到最后进行软硬件联调时发现我用的电池盒有问题,尽管它是新的。联调时还发现显示很不稳定且年、月、日、时、分、秒都只能显示一位,另一位不显示,分析软件也没有逻辑上的错误,最后在显示子程序的中间加了一段5ms的延时程序,数码管就能全部显示,但是显示还是很不稳定,部分数码管一会显示正常,一会显示全零,一会显示8,想起曾有一篇文章说过上拉电阻的影响,我也就在1302的SCLK,IO,RST三个引脚上各加了一个10K的上拉电阻(这三个上拉电阻,以及系统的复位电路等常识性的电路在原理图中我都没有画出来,显示电路图我也做了简化处理,但是一看就能明白),没想到问题解决了,显示很稳定。资料上介绍备用电源要用充电电池,但是我用2节普通的1.5伏电池也没有问题,仅仅不能够充电而已。烧写芯片用easy51pro编程器,关于它的资料网上很多,使用也很简单,就不在这里介绍了。最后我想说的是对于一个设计,要努力创造条件使它变成一件作品。在动手实现它的过程中会发现有很多意想不到的问题出现,解决每一个问题的过程很烦人也充满了乐趣,当自己的原始设想一步步的实现的时候,心里对它充满了期待,而作品最后的完成更是让自己很兴奋,那一个个无声无息的电子元件在用自己的思想组合连接后变得有了生命,有了思维,虽然很粗糙,很简单;想想都会让我很兴奋。这是一个多有意思的工作啊! 设计中的程序已经过了调试,运行良好。致 谢本文研究工作是在我的导师XXX老师的精心指导和悉心关怀下完成的,从开题伊始到论文结束,我所取得的每一个进步、编写的每一段程序都无不倾注着导师辛勤的汗水和心血。导师严谨的治学态度、渊博的各科知识、无私的奉献精神使我深受启迪,从尊敬的导师身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理。在今后的学习工作中,我将铭记恩师对我的教诲和鼓励,尽自己最大的努力取得更好的成绩。在此我要向我的导师XXX老师致以最衷心的感谢和深深的敬意!在三年的大学学习期间,应用电子技术教研室的每位老师对我的学习、生活和工作都给予了热情的关心和帮助,使我的水平得到了很大的提高,取得了长足的进步。在此,向所有关心和帮助过我的老师、同学和朋友表示由衷的谢意!衷心感谢在百忙之中评阅论文和参加答辩的各位专家、教授。参考文献1、楼然苗、李光飞,单片机课程设计指导.北京.北京航空航天大学出版社.2007 4、王俊峰,电子制作的经验与技巧.北京.机械工业出版社.2007.75、毛敏,MCS_51系列单片机系统及应用实践教程.北京.高等教育出版社.2006.76、庄俊华,单片机开发上岗培训教程.北京.机械工业出版社.2007.6附 录附录1;调整运行后的电子钟程序清单如下:从ds1302读出的数据存储在下列单元年高2位年低2位月星期日时分秒67h66h65h64h63h62h61h60h显示数据缓冲单元如下年高2位年低2位月日7eh7dh7ch7bh7ah79h78h77h时分秒星期空白位76h75h74h73h72h71h70h6fh以上单元数据查表后的暂存单元如下年高2位年低2位月日6eh6dh6ch6bh6ah69h68h67h时分秒星期空白66h65h64h63h62h61h60h5fh; ;基于AT89S52的数显时钟汇编源程序 sclk equ p3.2 io equ p3.3 rst equ p3.4 year data 66h month data 65h week data 64h day data 63h hour data 62h minute data 61h second data 60h ds1302addr data 32h ds1302data data 31h org 0000h ajmp start org 0030hstart: mov ds1302addr,#8eh mov ds1302data,#00h mov ds1302addr,#8ch mov ds1302data,#9lcall write ;写入年mov ds1302addr,#88hmov ds1302data,#6lcall write ;写入月mov ds1302addr,#86hmov ds1302data,#1lcall write ;写入日mov ds1302addr,#84hmov ds1302data,#12lcall write ;写入时mov ds1302addr,#82hmov ds1302data,#0lcall write ;写入分mov ds1302addr,#80hmov ds1302data,#0lcall write ;写入秒mov ds1302addr,#90hmov ds1302data,#0a6h;1302充电,电流1.1malcall writemain: mov ds1302addr,#8dh lcall read mov year,ds1302data ;读出年 mov ds1302addr,#8bh lcall read mov week,ds1302data ;读出星期 mov ds1302addr,#89h lcall read mov month,ds1302data ;读出月 mov ds1302addr,#87h lcall read mov day,ds1302data ;读出日 mov ds1302addr,#85h lcall read mov hour,ds1302data ;读出小时 mov ds1302addr,#83h lcall read mov minute,ds1302data ;读出分钟 mov ds1302addr,#81h lcall read mov second,ds1302data ;读出秒;以下分离 mov r0,year lcall divide mov 7bh,r1 mov 7ch,r2 ;年分离,送显示缓存 mov 70h,week ;星期不用分离 mov r0,month lcall divide mov 79h,r1 mov 7ah,r2 ;月分离 mov r0,day lcall divide mov 77h,r1 mov 78h,r2 ;日分离 mov r0,hour lcall divide mov 75h,r1 mov 76h,r2 ; 时分离 mov r0,minute lcall divide mov 73h,r1 mov 74h,r2 ;分钟分离 mov r0,second lcall divide mov

    注意事项

    本文(环道控制系统下位软件设计方案二 -毕业设计.doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开