高精度数控恒流源设计论文.doc

上传人:laozhun 文档编号:3995485 上传时间:2023-03-30 格式:DOC 页数:51 大小:520KB
返回 下载 相关 举报
高精度数控恒流源设计论文.doc_第1页
第1页 / 共51页
高精度数控恒流源设计论文.doc_第2页
第2页 / 共51页
高精度数控恒流源设计论文.doc_第3页
第3页 / 共51页
高精度数控恒流源设计论文.doc_第4页
第4页 / 共51页
高精度数控恒流源设计论文.doc_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《高精度数控恒流源设计论文.doc》由会员分享,可在线阅读,更多相关《高精度数控恒流源设计论文.doc(51页珍藏版)》请在三一办公上搜索。

1、摘要本文介绍了一种开环智能数控直流电流源的设计原理和实施方案,该方案采用D/A(MAX531)转换器、运算放大器等器件来控制场效应管导通状态的原理,达到了输出恒流的目的。整个系统采用AT89S52单片机作为主控部件,将预置电流值数据送入D/A转换器(MAX531),经硬件电路变换为恒定的直流输出,同时采用基本没有温度漂移的康锰铜电阻丝作为精密采样电阻。采用性能优于普通晶体管的场效应管作为恒流源的主要部件,大功率晶体管作为扩流电路的主要器件,结合三端稳压管和多层滤波使得整个系统性能提升了一个层次,从而实现了高精度恒流源的目的。系统还对输出电压进行实时采样,通过A/D转换器采样回单片机与用户给定的

2、限压值进行比较,从而监控了输出电压。同时通过键盘的控制,实现了输出电流值和限压值可预置,可步进调整、输出的电流信号和电压信号可直接数字显示的功能,并具有输出电压实时监控限压报警并自动降低输出电流等功能。与以往的直流恒流源相比,此次所设计的恒流源具有精度高、结构简单、工作稳定、操作方便、成本低廉、带负载能力强等优点。关键词: 恒流源 AT89S52单片机 MAX531 MAX187 AbstractThis paper introduces a smart NC open-loop DC current source design principle and the implementation

3、 of the programme, using the D / A (MAX531) converters, op amp, and other devices to control FET on-state principle, the output reached constant current purposes. AT89S52 the entire system uses a single-chip microcomputer control components, preferences current value data will be sent to the D / A c

4、onverters (MAX531), the hardware circuit for the constant transformation of DC output, but not using the basic temperature drift Concord Manganin resistor Silk as a sophisticated sampling resistor. Performance is better than the ordinary use of the FET transistor as a constant current source of majo

5、r components, high-power transistors as expanding the main circuit device, the combination of three-terminal regulators and the multi-filter makes the whole system a performance boost levels to achieve a high-precision constant current source purposes. Output voltage of the system to conduct real-ti

6、me sampling, through the A / D converters with sampling to MCU users to set limit values to compare pressure to control the output voltage. At the same time, the keyboard control and realized the value of output current and voltage-limiting values can be preset, stepping adjustment, the current sign

7、al and the output voltage signal can be directly figures show that the function, and real-time monitoring of the output voltage, such as over-voltage alarm function. In the past compared to DC current source, the design of a high-precision constant current source, simple structure and work stability

8、, and easy to operate, low cost, with a payload capacity, and other advantages.Key words: Current source AT89S52MCU MAX531 MAX187 目录摘要I前言1第一章 系统结构及功能介绍21.1系统工作原理概述21.2系统的特点和使用21.2.1 系统的特点21.2.2 系统的使用说明3第二章 设计方案42.1方案比较42.1.1整体方案42.1.1.1 方案一42.1.1.2 方案二52.1.1.3 方案三52.1.2恒流源方案62.1.2.1 方案一62.1.2.2 方案二6

9、2.1.2.3 方案三72.2 最终选用方案7第三章 硬件系统设计83.1 系统硬件基本组成83.2 各模块单元电路设计83.2.1 电源电路83.2.2 扩流电路93.2.2.1 电路的优点.93.2.2.2 电路工作原理103.2.3 恒流电路103.2.4 采样电路113.3 系统主要芯片介绍123.3.1 AT89S52单片机123.3.2 MAX531123.3.3 MAX187133.3.4 AT24C1614第四章 软件设计184.1概述184.2 主程序结构184.3 各模块子程序设计原理204.3.1 MAX531工作原理204.3.2 MAX187工作原理204.3.2 键

10、盘扫描原理214.3.3 LCD 12864显示22第五章 系统调试235.1硬件设计要点235.1.1 共地问题235.1.2 采样电阻选择235.1.3 D/A及A/D电路处理24第六章 数据测试及分析256.1 输出电流测试256.2 步进电流测试266.3工作时间测试276.4负载阻值变化测试286.5输出电压值测试29第七章 结束语31参考文献32附录33一、系统电路原理图:33图1.1 系统电源原理图33图1.2 系统恒流源电路原理图33图1.3 系统单片机最小系统原理图34图1.4 系统D/A、A/D原理图34图1.5 系统显示电路及存储电路35二、系统部分程序设计3521 MA

11、X531子程序3522 MAX187子程序3623 键盘扫描子程序3724 AT24C16子程序3825 LCD12864子程序42致谢45前言随着电子技术的发展、数字电路应用领域的扩展,现今社会,产品智能化、数字化已成为人们追求的一种趋势,设备的性能、价格、发展空间等备受人们的关注,尤其对电子设备的精密度和稳定度最为关注。性能好的电子设备,首先离不开稳定的电源,电源稳定度越高,设备和外围条件越优越,那么设备的寿命更长。普通直流恒流稳压电源品种很多, 但均存在以下问题: 输出电压是通过粗调(波段开关)及细调(电位器)来调节。1这样, 当输出电压需要精确输出, 或需要在一个小范围内改变时(如1.

12、051.07V),困难就较大。另外, 随着使用时间的增加, 波段开关及电位器难免接触不良, 对输出会有影响。因此,人们对数控稳定电源器件的需求越来越迫切基于此,人们对数控恒定电流器件的需求越来越迫切当今社会,数控恒压技术已经很成熟,但是恒流方面特别是数控恒流的技术才刚刚起步且有待发展,高性能的数控恒流器件的开发和应用存在巨大的发展空间。本文正是应社会发展的需求,研制出一种基于单片机的高精度数控直流恒流源。本数控直流恒流源系统输出电流稳定,输出电流可在1mA2500mA范围内任意设定,不随负载和环境温度变化,并具有很高的精度,输出电流误差范围为1mA,因而可实际应用于需要高稳定度小功率直流恒流源

13、的领域。第一章 系统结构及功能介绍1.1系统工作原理概述本系统以Atmel 公司生产的AT89S52单片机为控制中心,用D/A输出可调的模拟量来控制场效应管IRF640的导通状态,并控制保持采样电阻两端的电压,从而形成数控压控恒流源。开机首先读出前一次设定的电流值和限压值作为这一次的电流输出值和限压值。经过D/A转换器(MAX531)输出模拟量,再经过运算放大器隔离放大,控制输出功率管的基极,随着场效应功率管基极电压的变化而输出不同的恒定电流。采样电路采样回来的电压值通过A/D转换把模拟量转化为数据量并显示出输出的电压值,和所设定的限压值进行比较,如果大于限压值则启动报警电路进行报警提示用户进

14、行电流设定或限压值设定,若报警数秒后电压值仍高于限压值,系统则自动把输出电流值降为10mA的微小电流,以免长时间工作在限压状态损坏用电器。实际测试结果表明,本系统能有效应用于需要高稳定度的恒流源的领域。通过键盘用户可以方便的输入所需电流值和限压值。并可以通过按键“+”和键“-”进行微调。从而省去了每次都要手动输入进行微调的工作。1.2系统的特点和使用1.2.1 系统的特点用户可以通过键盘直接输入所需电流值和限流值。 用户可以通过键盘上的“+”和“-”键进行电流值和限压值进行微调。 单键模式转换“M”可以随时对电流值和限压值进行设定,方便使用。 显示实时输出电压值,并能对输出电压值设上限值,超出

15、上限值则报警。 系统处于限压状态数秒后自动将输出电流值降低,保护用电器。 额定功率可达到20W。1.2.2 系统的使用说明启动电源,系统开启散热系统并进入工作状态,系统先自动读出存储器保存的前一次设定数据进行输出。若用户需要不同的电流值和限压值,可以通过按键进行输入或按键盘上的“+”、“-”键对当前值进行电流加1、减1微调和限压值加10、减10微调。按下键盘上方的“M”模式转换键即可以在电流值设定与限压值设定之间进行切换,省去用户多次按键的麻烦。每当输完设定值后用户要按下键盘上的“E”Enter确定为用户所需值。当用户设定好所需的电流值和限压值后,屏幕上会显示用户所设的值,同时屏幕上还显示此时

16、系统的输出电压值方便用户随时查看。系统按键说明09数字输入键C数字清除键M输入电流值和输入限压值转换键+电流值加1 或 限压值加10微调键-电流值减1 或 限压值减10微调键E确定键表1-1 系统按键说明系统显示屏显示区说明电流/限压设定:输入数值显示区电流值:输出电流值显示区单位符限压值:限压值显示区单位符电压值:输出电压值显示区单位符表1-2 系统显示屏显示区说明第二章 设计方案本项目要求设计一种电流源,要想实现电流源必须先设计一个稳定的电压源,其次再设计一个恒流源,因此电压源、恒流源是本项目的核心硬件基础。本项目同时要求电流源可数控,实现数控的常规方法有:数字逻辑器件构成、可编程器件CP

17、LD/FPGA、单片机等。具体方案的对比和选择如下。2.1方案比较2.1.1整体方案2.1.1.1 方案一方案一如图2-1所示,采用计数器、EPROM和D/A转换器等数字逻辑器件完成系统的控制2。此方案使用一套十进制计数器,一方面完成电压的译码显示,另一方面其输出作为 EPROM的地址输入,而由EPROM的输出经D/A变换后控制误差放大的基准电压来实现输出步进。但由于此方案使用开环控制策略,电路简单,成本低,但是对最后的输出结果不能进行较好的调整和修正,使得输出电流精度不高,且控制数据烧录在EPROM中,使系统设计灵活性降低,自适应能力差。 图2-1 方案一电压源调整管误差放大步进加步进减计数

18、器译码显示EPROMD/A转换2.1.1.2 方案二此方案如图2-2所示,主要是以单片机为核心构建控制器,通过键盘对电流值进行预置,单片机输出相应的数字信号,经过D/A转换、信号放大、电平转换、压控恒流源,输出电流信号。实际输出的电流再利用精密电阻采样变成电压信号,经过高输入阻抗差动放大器、A/D转换,将信号反馈到单片机将输出反馈信号再与预置值比较,送出调整信号,再输出新的电流,这样就形成了闭环调节,锁定输出电流,提高了输出电流的精度和稳定度。本方案采用单片机进行控制、显示、预置数,使得系统灵活方便,电流输出精度和稳定度较高。但此方案存在稳定性受限于单片机处理数据的能力。键盘显示单片机D/AA

19、/ D放大压控恒流源采样电阻负载差动放大稳压源 图2-2 方案二2.1.1.3 方案三 此方案如图2-3所示,整体原理框图与方案二大致相同,采用Altera公司的cyclone EP1C6T144C8 FPGA芯片构成sopc片上系统,利用NIOS32位嵌入式软核处理器进行总体控制、算法运算、显示和置数等功能,配合VHDL语言设计数字硬件控制模块进行控制,具有运行速度快,工作稳定可靠的特点3。显示FPGA键盘NIOS处理器D/AA/ D放大压控恒流源采样电阻负载差动放 大数字硬件外围电路控制模块稳压源图2-3 方案三2.1.2恒流源方案2.1.2.1 方案一采用恒流二极管或者恒流三极管,精度比

20、较高,但这种电路能实现的恒流范围很小,只能达到十几毫安,不能达到题目的要求4。2.1.2.2 方案二采用四端可调恒流源,这种器件靠改变外围电阻元件参数,从而使电流达到可调的目的,这种器件能够达到12200毫安的输出电流。改变输出电流,通常有两种方法:一是通过手动调节来改变输出电流,这种方法不能满足题目的数控调节要求;二是通过数字电位器来改变需要的电阻参数,虽然可以达到数控的目的,但数字电位器的每一级步进电阻比较大,很难调节输出电流。2.1.2.3 方案三压控恒流源,通过改变恒流源的外围电压,利用电压的大小来控制输出电流的大小。电压控制电路采用数控的方式,利用单片机送出数字量,经过D/A转换转变

21、成模拟信号,再送到大功率三极管进行放大。当改变负载大小时,基本上不影响电流的输出,使得系统一直在设定值维持电流恒定。该方案通过软件方法实现输出电流稳定,易于功能的实现,便于操作。2.2 最终选用方案以上三个整体方案各自的特点,经过比较可以看出,方案三是最优方案,但考虑到既要用NIOS软核又要用数字硬件控制模块,设计工作量大、调试复杂,且quartus5.0、SOPC5.0与IDE开发系统调试速度不是很快,所以最终选择方案二。此设计在采用整体方案中的方案二的基础上进行改进与恒流源方案的方案三相结合,构成了以单片机为核心构建控制器,通过键盘对电流值进行预置或按键逐步微调,单片机输出相应的数字信号,

22、经过D/A转换、信号放大、压控恒流源,输出电流信号。实际输出的电压值利用精密电阻进行分压采样后,经过高输入阻抗运算放大器构成的电压跟随器、A/D转换,将信号反馈到单片机将输出反馈信号再与预置限压值比较,构成了实时监控的限压功能。因为在电流源方案中大功率三极管采用了场效应管,而且采样电阻使用了基本上没有温度漂移的康铜丝作为采样电阻,从而使整个系统工作在最佳状态。即使不用对输出电流进行采样形成闭环控制回路也可以达到预期的目的。而且省去了不少硬件开支。本方案采用单片机进行控制、显示、预置数还有单键模式转换,使得系统灵活方便,电流输出精度和稳定度较高。但此方案存在稳定性受限于单片机处理数据的能力。第三

23、章 硬件系统设计3.1 系统硬件基本组成系统原理总框图如下:D/AA/D电源系统恒流稳压输出单片机AT89S52系统限压报警系统设定状态输出电流限压值输出电压存储系统键盘模块工作状态显示电源输入采样电路图3-1 系统原理框图系统主要包括 核心控制部分单片机电路4、D/A转换电路、电源电路、恒流稳压电路、 电压采样电路、A/D转换电路、存储电路、键盘输入电路和报警电路及显示电路。3.2 各模块单元电路设计3.2.1 电源电路为了使整个设计显得清洁美观,系统所需电源电路集成在同一块板上,因为恒流源部分所需电源要求是稳定的,所以在设计电源时应该注意对其进行足够的滤波和稳压,考虑到本系统所需功率比较大

24、,所以避开普通整流桥堆的功率局限,采用了常用的低频整流管IN5408,该整流管反向电压为1000V,电流为3A。可是满足本系统的需要。由于通过整流后的电压还不是很平稳,所以要有一定的滤波电路来平滑电压,这也为最后系统有较小的纹波电流和纹波电压打下坚实的基础。再者,恒定的电压值也给系统提供了稳定,所以本系统采用了三端稳压管7818的7918即作为恒流源部分的电源供应,也可以作为运放所需的稳定双电源供电。3.2.2 扩流电路本系统采用了三端稳压对电压进行稳压,但7818最大只能输出1A的电流,对本系统来说并不达到要求,为了保证能得到稳定的电压和足够大的电流,本系统使用了用三端稳压管进行稳压并在三端

25、稳压的基础上进行扩流,扩流采用了大功率三极管6。原理图如下:IQIOIO7818IREGIRIc 图3-2 扩流电路原理图3.2.2.1 电路的优点.(1) 电路简单,稳定.调试方便(几乎不用调试).(2) 价格便宜,适合于对成本要求苛刻的产品.(3) 电路中几乎没有产生高频或者低频辐射信号的元件,工作频率低,EMI(电磁干扰)等方面易于控制.3.2.2.2 电路工作原理Io = Io7818 + Ic.Io7818= IREG IQ (IQ为7818的静态工作电流,通常为4-8mA)IREG = IR + IB = IR + Ic/ ( 为P817的电流放大倍数)IR = VBE/R1 (V

26、BE为 B817的基极导通电压)所以Io7818=IREGIQ = IR + IBIQ = VBE /R1 + Ic/- IQ由于IQ很小,可略去,则: Io7818= VBE /R1 + Ic/其中R越大,则输出同样的电流的情况下流过7818的电流要小些,反之亦然。但是R的值不能过大,其条件是: R VBE /( IREGIB).3.2.3 恒流电路恒流电路原理如下图所示:图3-3 恒流电路恒流电路是整个电路中的主要电路之一,其工作原理是由可数控的D/A转换器给U4运算放大器的12脚同相输入端,由运算放大器的虚短原理可知,13脚反相输入端的电压和12脚同相输入端是一样的,所以电阻R1对地电压

27、即为我们输入的电压值是可控的。再由I=U/R可知,流经R1的电流即为一恒定的值,由于运算放大器具有高阻抗,所以电流只能由Q1来提供,因为R1两端的电压恒定,运放放大提供给Q1的基极,使其在一定的导通状态下,当负载变化时,虽然反馈也是变化,导致Q1的导通状态在改变,但R1两端电压不会改变,所以流过R1的电流是恒定的,所以系统将可以得到恒定的电流值,并且受到用户输入的电压值所决定,形成数控恒流源7。3.2.4 采样电路采样原理图如下所示:图3-4 采样电路采样电路即为采样输出电压值,运用一个电压跟随器对输出电压进行采样,因为电压跟随器的输入阻抗很高,基本上没有电流流入,所以不会因为采样而改变输出电

28、压值。经过跟随器后可用A/D对采样信号进行数字化,但我们知道,系统的的输出功率会随着输出电流和负载的变化而变化,输出电压有可能大于10V,所用A/D(MAX187)无法直接输入这么高的电压,因此必须采取一定的降压措施。为了方便,这里使用了精密多圈电位器进行分压,采用4:1进行采样。即当输出为4V时A/D采到的电压值即为1V,只要在进行显示时再给采样得回数据乘以4就可以得回原来的数据。这样计算 电压输出16V时对A/D都无影响。但本系统输出是如上图所示的P1,它并不是对地电压,所以在软件编程时须用所测得的电压值减去我们输入的电压值(即为R1两端的电压),经理论和实验证实,此方法可以运用在此系统中

29、。3.3 系统主要芯片介绍3.3.1 AT89S52单片机AT89S52是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案8。主要性能 与MCS-51单片机产品兼容 8K字节在系统可编程Flash存储器 1000次擦写周期 全静态操作:0Hz33Hz 三级加密程序存储器 32个可

30、编程I/O口线 三个16位定时器/计数器 八个中断源 全双工UART串行通道 低功耗空闲和掉电模式 掉电后中断可唤醒 看门狗定时器 双数据指针 掉电标识符3.3.2 MAX531MAX531 芯片是Maxim 公司推出的性能优越、高分辨率D/ A 转换集成电路. 它具有功耗低、转换频率快、内部带基准电压等特点,能完成12 位D/ A 转换,数字输入为串行,采用“反向”R2R的梯形电阻网络结构。内置单电源CMOS运算放大器,其最大工作电流仅为260A,具有很好的电压偏移,增益和线性度。内部运算放大器根据需要可配置成1或2的增益,也可作四象限乘法器9。主要技术性能: 只要调整零点和满度就可确定其线

31、性度 分辨率:12位二进制数 电源电压:+5V,5V 采用固定的或可变的基准电压 功耗:典型值2.6 mW 具有四象限乘法功能 可直接与CMOS、TTL电路接口 建立时间:25 S 内部有rail-to-rail输出缓冲放大器3.3.3 MAX187MAX187 串行12 位模数转换器可以在单5V 电源下工作,接受05V 的模拟输入。MAX187为逐次逼近式ADC,快速采样/保持(1.5uS),片内时钟,高速3 线串行接口10。MAX187 转换速度为75Ksps。通过一个外部时钟从内部读取数据,并可省却外部硬件而与绝大多数的数字信号处理器或微控制器通讯。接口与SPI,QSPI,和Microw

32、ire兼容。MAX187 有内部基准,MAX189 则需要一个外部基准。MAX187 和MAX189 采用节约空间的8 脚DIP 和16 脚SO 封装。电源消耗为7.5mW,在关断模式下可以减少至10uW。优异的AC 特性和极低的电源消耗,同时及其容易的使用和较小的封装尺寸使得MAX187/189 能理想的应用于远程DSP 和传感器,或者应用于对电源消耗和空间极为苛刻的地方。应用范围:移动式数据处理(Portable Data Logging)远程数字信号处理(Remote Digital Signal Processing)隔离数据获取(Isolated Data Acquisition)高

33、精度处理控制(High-Accuracy Process Control)特性:12 位精度1/2 LSB 完整非线性(Integral Nonlinearity)(MAX187A/MAX189A)内部采样/保持电路,75KHz 采样速率单5V 电源工作低功耗:关断模式下2uA5mA 操作电流内部4.096V 基准(MAX187)3 线串行接口,SPI,QSPI 和Microwire 兼容小管脚8 脚DIP 和16 脚SO 封装。3.3.4 AT24C16CAT24C16 是一个16K 位串行CMOS E2PROM 内部含有2048 个8 位字节CATALYST 公司的先进CMOS 技术实质上

34、减少了器件的功耗,AT24C16 有一个16 字节页写缓冲器该器件通过I2C 总线接口进行操作有一个专门的写保护功能11。特性: 与400KHz I2C 总线兼容 1.8 到6.0 伏工作电压范围 低功耗CMOS 技术 写保护功能当WP 为高电平时进入写保护状态 页写缓冲器 自定时擦写周期 1,000,000 编程/擦除周期 可保存数据100 年 8 脚DIP SOIC 或TSSOP 封装 温度范围商业级工业级和汽车级AT24C16 支持I2C总线数据传送协议,I2C总线协议规定,任何将数据传送到总线的器件作为发送器。任何从总线接收数据的器件为接收器。数据传送是由产生串行时钟和所有起始停止信号

35、的主器件控制的。主器件和从器件都可以作为发送器或接收器。I2C总线协议I2C总线协议定义如下:(1)只有在总线空闲时才允许启动数据传送。(2)在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允许有跳变。时钟线为高电平时,数据线的任何电平变化将被看作总线的起始或停止信号。I2C总线时序图如下:图3-5 I2C时序总图起始信号时钟线保持高电平期间,数据线电平从高到低的跳变作为I2C总线的起始信号。停止信号时钟线保持高电平期间,数据线电平从低到高的跳变作为I2C总线的停止信号。应答信号I2C 总线数据传送时,每成功地传送一个字节数据后,接收器都必须产生一个应答信号。应答的器件在第9个

36、时钟周期时将SDA 线拉低,表示其已收到一个8位数据。AT24C16 在接收到起始信号和从器件地址之后响应一个应答信号,如果器件已选择了写操作,则在每接收一个8位字节之后响应一个应答信号。当AT24C16 工作于读模式时,在发送一个8位数据后释放SDA 线并监视一个应答信号,一旦接收到应答信号,AT24C16 继续发送数据,如主器件没有发送应答信号,器件停止传送数据且等待一个停止信号。写操作字节写在字节写模式下,主器件发送起始命令和从器件地址信息(R/W 位置零)给从器件在从器件产生应答信号后,主器件发送AT24C16 的字节地址,主器件在收到从器件的另一个应答信号后,再发送数据到被寻址的存储

37、单元。AT24C16 再次应答,并在主器件产生停止信号后开始内部数据的擦写,在内部擦写过程中,AT24C16 不再应答主器件的任何请求。页写用页写AT24C16 可以一次写入16个字节的数据。页写操作的启动和字节写一样,不同在于传送了一字节数据后并不产生停止信号。主器件被允许发送15个额外的字节。每发送一个字节数据后AT24C16 产生一个应答位并将字节地址低位加1, 高位保持不变。如果在发送停止信号之前主器件发送超过16个字节地址计数器将自动翻转先前写入的数据被覆盖。接收到16字节数据和主器件发送的停止信号后,AT24C16启动内部写周期将数据写到数据区。所有接收的数据在一个写周期内写入AT

38、24C16。应答查询可以利用内部写周期时禁止数据输入这一特性。一旦主器件发送停止位指示主器件操作结束时,AT24C16 启动内部写周期,应答查询立即启动,包括发送一个起始信号和进行写操作的从器件地址。如果AT24C16 正在进行内部写操作,不会发送应答信号。如果AT24C16 已经完成了内部自写周期,将发送一个应答信号,主器件可以继续进行下一次读写操作。写保护写保护操作特性可使用户避免由于不当操作而造成对存储区域内部数据的改写,当WP 管脚接高时,整个寄存器区全部被保护起来而变为只可读取。AT24C16 可以接收从器件地址和字节地址,但是装置在接收到第一个数据字节后不发送应答信号从而避免寄存器

39、区域被编程改写。读操作对24C16读操作的初始化方式和写操作时一样,仅把R/W 位置为1,有三种不同的读操作方式:立即地址读、选择读和连续读。立即地址读24C16的地址计数器内容为最后操作字节的地址加1。也就是说,如果上次读/写的操作地址为N, 则立即读的地址从地址N+1 开始。如果N=2047 则计数器将翻转到0 且继续输出数据。24C16接收到从器件地址信号后(R/W 位置1 ),它首先发送一个应答信号,然后发送一个8 位字节数据。主器件不需发送一个应答信号,但要产生一个停止信号。选择性读选择性读操作允许主器件对寄存器的任意字节进行读操作,主器件首先通过发送起始信号、从器件地址和它想读取的

40、字节数据的地址执行一个伪写操作。在AT24C16 应答之后,主器件重新发送起始信号和从器件地址,此时R/W 位置1 ,AT24C16 响应并发送应答信号,然后输出所要求的一个8 位字节数据,主器件不发送应答信号但产生一个停止信号。连续读连续读操作可通过立即读或选择性读操作启动。在24C16发送完一个8 位字节数据后,主器件产生一个应答信号来响应,告知24C16主器件要求更多的数据,对应每个主机产生的应答信号24C16将发送一个8 位数据字节。当主器件不发送应答信号而发送停止位时结束此操作。从24C16输出的数据按顺序由N 到N+1 输出读操作时地址计数器在24C16整个地址内增加,这样整个寄存

41、器区域在可在一个读操作内全部读出。当读取的字节超过2407计数器将翻转到零并继续输出数据字节。第四章 软件设计4.1概述整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了。从软件的功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。二是执行软件(子程序),它是用来完成各种实质性的功能如输入、控制、采样、报警、显示等。每一个执行软件也就是一个小的功能执行模块。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义12。各执行模块规划好后,就可以规划监控程序了。首先要根据系统的总体功能和键盘设

42、置选择一种最合适的监控程序结构,然后根据实时性的要求,合理地安排监控软件和各执行模块之间地调度关系。4.2 主程序结构系统软件编程总设计框图如下图4-1所示:初始化读标示符显示“电流设定”显示“限压设定”读数据开始实行D/A子程序A/D子程序空载/限压报警取键值读标示符调用电流设定子程序调用电流设定子程序调用电流设定子程序调用限压设定子程序调用限压设定子程序调用限压设定子程序是设置是设置是“+”键是“+”键是“-”键是“-”键NNNNNNYYYYYY电流设置标示电流设置标示限压设置标示限压设置标示YN图4-1 主程序流程图4.3 各模块子程序设计原理4.3.1 MAX531工作原理MAX531

43、 D/A 转换的数据输入是串行输入,所以在编程上比其它并行输入的D/A 芯片要复杂一些. 下面 图 4-2是D/A 转换器数据输入的时序图.图4-2 MAX531时序图输入数据之前必须把CLR 清除端口置1 ,然后才能输入数据。从 图4-2 可以看出,当片选信号CS 来一个下降沿时,将开始进行数据输入。CS 的下降沿之后在时钟的作用下可使数据输入寄存器。因为数据中的每一位,都在各个时钟上升沿之后输入寄存器。 由于有十二位数据,所以输入这些数据至少需要十二个时钟上升沿。 当片选信号CS 来一个上升沿时,将使D/ A 转换器开始进行数模转换,转换结果以电压的方式从Vout 端口输出。4.3.2 M

44、AX187工作原理MAX187 有2 种操作模式: 正常模式和休眠模式, 将置为低电平进入休眠模式, 这时的电流消耗降到10 A 以下。置为高电平或悬空进入正常操作模式13。MAX187工作时序图如下 图4-3 :图4-3 MAX187 时序图A/D转换的工作过程是: 当CS为低电平时, 在下降沿MAX187 的T/H 电路进入保持状态, 并开始转换, 8.5s 后DOUT 输出为高电平作为转换完成标志。这时可在SCLK 端输入一串脉冲将结果从DOUT 端移出, 读入单片机中处理。数据读取完成后将CS置为高电平。要注意的是: 在CS置为低电平启动A/D 转换后, 检测到DOUT 有效(或者延时

45、8.5 s 以上) , 才能发SCLK 移位脉冲读数据, SCLK 至少为13 个。发完脉冲后应将CS置为高电平。4.3.2 键盘扫描原理键盘扫描程序详见附录该程序与以往键盘扫描程序有所不同,也有其自身的优点。相对而言它程序要比常规简单易懂。扫描原理是先置低4位为低电平高4位为高电平即端口为0XF0(或者反过来),然后对商品进行实时监控,如果端口电平不为0XF0,调用消抖程序,再次检测端口电平,如果还不是0XF0,则判断为有键按下。调用按键检测,先检测行4位的电平就可以判断是哪一行有键按下,接下来继续检测列4位的电平也可以判断是哪一列有键按下,结合行列电平并调用二维数组就可以判断是哪一个键按下。相比常规扫描程序来说,省去了将扫描得到的键值再次转换为数字再进行显示。4.3.3 LCD 12864显示LCD 12864 是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及12864全点阵液晶显示器组成 可完成图形显示也可以显示8

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号