ZLG7289程序

合集下载

电子秤毕业设计论文

电子秤毕业设计论文

多功能电子称作者:xxx摘要:该设计以51系列单片机AT89S52为控制核心,实现电子秤的基本控制功能。

在设计系统时,为了更好地采用模块化设计法,分步的设计各个单元功能模块,系统的硬件部分可以分为最小系统、数据采集、人机交互界面和系统电源四大部分。

最小系统部分主要包括AT89S52和扩展的外部数据存储器;数据采集部分由压力传感器、信号的前级处理和A/D 转换部分组成,包括运算放大器AD620和A/D转换器ICL7135;人机交互界面为键盘输入和点阵式液晶显示,主要使用ZLG7289键盘控制芯片和OCM4x8C显示器,可以方便的输入数据和直观的显示中文。

系统电源以LM317和LM337为核心设计电路以提供系统正常工作电源。

软件部分应用单片机C语言进行编程,实现了该设计的全部控制功能。

该电子秤可以实现基本的称重功能(称重范围为0~9.999Kg,重量误差不大于±0.005Kg),并发挥部分的显示购物清单的功能,可以设置日期和设定十种商品的单价,还具有超量程和欠量程的报警功能。

整个系统结构简单,使用方便,功能齐全,精度高,具有一定的开发价值。

关键词:单片机;采样电路;A/D转换器;液晶显示ABSTRACT:The design is based on the microcontroller AT89S52 system as the core to carry out the basic control function of the electronics steelyard. While designing the system, I adopt the mold piece method to divide the hardware of the system into four parts: the minimum system, sampling circuit, I/O interface and the system power supply. The minimum system mainly includes the AT89S52 and the expanded exterior data memory. Sampling circuit is comprised of a pressure sensor, a differential measuring amplifier AD620 and a A/D converter ICL7135. With the usage of ZLG7289 keyboard control chip and OCM4*8C display, we complete the function of the key board input and the LCD manifestation. The power supply system selects the LM317 and LM337 to design the electric circuit to provide the needed power supply. The software part applies a machine C language to carry out all control function. The electronic steelyard can weigh the scope as 0~9.999Kgs, and the weigh error margin is no bigger than ±0.005Kgs. It also has many other functions, such as displaying the shopping detailed list, setting the date and ten kinds of unit prices of merchandise and overweighing alarm. The whole system is simple, well-found, convenient to use and has high accuracy and certain development value.Key words:microcontroller; sampling circuit; A/D converter;LCD Manifestation目录第一章绪论 (1)1.1 引言 (1)1.2选题背景与意义 (2)1.3 研究现状 (2)1.3.1 影响因素 (2)1.3.2产品质量 (3)1.3.3发展方向 (3)1.3.4电子秤的智能化 (3)1.4 本文的结构 (4)第二章系统方案的设计 (5)2.1 电子秤的设计要求 (5)2.1.1 基本要求 (5)2.1.2 发挥部分 (5)2.1.3 创新部分 (5)2.2 系统工作原理及设计基本思路 (5)2.2.1 系统工作原理 (5)2.2.2 系统设计基本思路 (6)2.3 系统总体设计方案比较与论证 (6)2.4 单片机的选型 (8)2.5 数据采集部分的方案确定 (9)2.5.1 传感器 (9)2.5.2 前级放大器部分 (12)2.5.3 A/D转换器 (15)2.6 人机交互部分 (17)2.6.1 键盘输入 (17)2.6.2 输出显示 (17)2.7 系统电源 (18)2.8 具体实施方案简介 (20)第三章系统硬件设计 (22)3.1 基于AT89S52的主控电路 (22)3.1.1 芯片介绍 (22)3.1.2 主控电路 (26)3.2 基于ICL7135的前端信号处理电路 (27)3.2.1 芯片介绍 (27)3.2.2 信号处理电路 (30)3.3 人机交互界面 (33)3.3.1 键盘控制电路 (33)3.3.2 液晶显示电路 (35)3.4 系统电源 (37)3.4.1 芯片介绍 (37)3.4.2 电源电路 (38)3.5 报警电路 (40)第四章软件流程 (41)4.1 主程序流程图 (41)4.2 主要中断程序流程图 (42)第五章结论 (44)致谢 (46)参考文献 (47)附录A:英文资料 (48)附录B:英文资料翻译 (55)附录C:原理图 (62)附录D:Pcb板图 (63)附录E:元器件清单 (64)第一章绪论1.1引言质量是测量领域中的一个重要参数,称重技术自古以来就被人们所重视。

光电电流互感器专用显示仪表设计

光电电流互感器专用显示仪表设计

光电电流互感器专用显示仪表设计摘要:光电电流互感器是电力系统的重要设备,其电压信号的幅度和相位直接体现了被测电力母线中的电流大小和相位。

为精确显示被测电流的大小及相位,采用先进的信号处理技术及单片机技术,设计了专用显示仪表。

试验结果表明此仪表满足0.2级光电电流互感器要求,具有精度高、可靠性好、使用方便的优点。

关键词:电力系统光电电流互感器显示仪表单片机应用电力系统是国民经济的支柱产业,起着举足轻重的作用。

在电力系统中,电磁感应式电流互感器被用来测量电流已有一百多年的历史了。

随着电力系统的传输容量越来越大,电压等级越来越高,传统的电磁式电流互感器因其传输机理而出现不可克服的问题。

为适应电力系统快速发展的需要,必须研究利用其它感应原理的电流互感器[1]。

随着光电子技术的发展,一种新型的光电电流互感器应运而生。

由于光电电流互感器的输出是模拟电压信号,其电压信号的幅度和相位直接体现了被测电力母线中的电流大小和相位,其不同于常规的电磁式电流互感器输出是规定的电流信号。

所以目前应用于电磁式互感器的显示仪表无法满足新式互感器的需要,应该设计一种能够利用低压端输出的电压信号来实时显示电力母线上电流的幅值情况(相位变化一般不需要显示)的仪表,鉴于目前不容易找到这类成品专用仪表,通过比较各种方案,设计精度高、可靠性好、价格便宜、使用方便的数字式专用显示仪表。

1 硬件设计部分考虑到信号的幅度为0~0.5V的交流小信号,精度要求为0.2%,所以其最小识别电压应该为1mV。

为此,为了确保数据显示的正确和稳定必须采用最小识别电压为0.3mv的A/D器件,AD7894-10为AD公司14位高速模数转换芯片。

输入电压范围-10~+10V,转换时间为5us,外接2.5V电压基准[2],电压基准源采用AD780,AD780可以提供精确的2.5V/3V基准电压。

处理器采用ATMEL公司的ATMEGA16L-8AU。

资源如下:16K片内FLAsH,512字节EEPROM,1K字节sDRAM,支持JTAG在线仿真,32个可编程I/O端口,宽电压2.7~5.5V供电,0~8MHz外接或内部晶体振荡器。

数据采集系统实验报告报告

数据采集系统实验报告报告

任务要求1.4路模拟量输入,输入电压范围0~5V,分辨率8位,转换时间100us,具有显示(数码管)测量结果(用10进制显示直流电压值或交流电压峰值)的功能;2.1路模拟量输出,用来分别重现4路被采信号的波形(供示波器观测)摘要本数据采集系统是基于单片机AT89C51来完成的,4路的模拟电压通过通用的8位A/D 转换器ADC0809转换成数字信号后,由单片机进行数据处理,并将处理后的数据送LED显示器显示。

再经过常用的8位D/A转换器DAC0832将数字数据转换成模拟量,供示波器观测。

一、系统的方案选择和论证根据题目基本要求,可将其划为如下几个部分:●4路模拟信号A/D转换●单片机数据处理●LED显示测量结果●D/A转换模拟量输出系统框图如图1所示:图1 单片机数据采集系统框图1、4路模拟信号A/D转换由于被测电压范围为0~5V,分辨率为8位,转换时间为100us,所以A/D转换部分,本系统选择常用的8路8位逐次逼近式A/D转换器ADC0809。

ADC0809芯片有28条引脚,采用双列直插式封装。

下面说明各引脚功能。

IN0~IN7:8路模拟量输入端。

2-1~2-8:8位数字量输出端。

ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。

ALE:地址锁存允许信号,输入,高电平有效。

START:A/D转换启动信号,输入,高电平有效。

EOC:A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

OE:数据输出允许信号,输入,高电平有效。

当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

CLK:时钟脉冲输入端。

要求时钟频率不高于640KHZ。

REF(+)、REF(-):基准电压。

Vcc:电源,单一+5V。

GND:地。

ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。

此地址经译码选通8路模拟输入之一到比较器。

单片机系统中汉字字库的设计与实现

单片机系统中汉字字库的设计与实现
60 H ,08 H ,53 H , E8 H ,4A H ,28 H ,4A H ,28 H
4A H ,28 H ,6B H , E8 H ,50 H ,08 H ,40 H ,08 H
40 H ,08 H ,40 H ,08 H ,40 H ,28 H ,40 H ,10 H 在汉字字模库中 ,就是按区位码顺序存储了各 个汉字的字模信息 。 根据汉字代码简述中所提到的区位码排列的规 律 ,一个汉字字模点阵码的首地址的确定可以通过 计算得到 :
1 汉字代码简述
单片机 、计算机等诸多设备的内部信息都是以数 据形式表示和进行处理的 ,汉字也不例外 ,为了方便、 确切和规范化地表示汉字 ,我国于 1981 年颁布了 GB2312《信息交换用汉字编码字符集 ———基本集》国 家标准 ,这是汉字信息处理的基本标准 ,因此 ,汉字字 库、字模库的设计 ,汉字输入码的转换 ,汉字输出设备 的汉字地址码及汉字内部码等的设计中都广泛采用 了 GB2312 标准 ,本系统采用的也是这个标准。
单片机的系统信息要求掉电重新启动后 ,还要恢复 的信息就存储在这区域 。
00050 H~00CF0 H : 区位码索引区 。构造这个 索引表的依据是 :一级汉字字库是按照拼音的顺序 来排列的 ,相同的拼音的汉字放在一起 。整个区位 码索引表分两部分 :一级索引区和二级索引区 ,存储 信息分别如表 1 、表 2 所列 。一级索引区以两个字 节为一个单元 ,按顺序存储各个拼音字母作为首字 母时 ,其所对应的二级区位码索引区的首地址 。二 级索引区以 8 个字节为一个单元 ,前面的 5 位为除 去第一个字母的拼音后余下的拼音对应的 ASC Ⅱ 码 (内容为 20 时 ,表示拼音结束) ,后两位为这个拼 音所对应的第一个汉字的区位码 ,对于具体的一个 输入汉字 ,还要再加上一个选择码作为偏移量 ,才能 得到输入汉字对应的区位码 。

全国大学生电子设计竞赛论文F题

全国大学生电子设计竞赛论文F题

2011年全国大学生电子设计竞赛帆板控制系统F 题120212组2011年9月6日摘要本文主要介绍了一种帆板控制系统;通过对直流风扇风速的控制,调节风力大小,改变帆板的转角;其主控芯片为MC9S12XS128,通过PWM对电机驱动7960的控制,来调节电机的转速,同时应用光电编码器和倾角传感器作为反馈,对整个调速系统进行PID闭环调节,以到所预期的角度;并且介绍了在调试过程中的实时监控、宏观曲线分析和数据分析应用等调试手段;文章着重介绍核心器件的选择、各部分电路、软件的设计和调试手段关键词:PID调速MC9S12XS128 调试手段目录1系统方案................................................... 错误!未定义书签。

角度调整系统方案的论证与选择........................................................... 错误!未定义书签。

电机驱动方案的论证与选择................................................................. 错误!未定义书签。

MCU控制系统的论证与选择............................................................... 错误!未定义书签。

2系统理论分析与计算......................................... 错误!未定义书签。

帆板受力的分析与计算....................................................................... 错误!未定义书签。

帆板转角的原理............................................................................... 错误!未定义书签。

485通讯例程

485通讯例程

RS-485总线的接口电路硬件设计笔者在火灾自动报警系统的联网设计中,经大量试验,发现在使用RS-485总线时,如果简单地按常规方式设计电路,那么在实际工程中可能存在以下两个问题:一是通信数据收发不可靠;二是在多机通信方式下,一个节点的故障(如死机)往往会使得整个系统的通信框架崩溃,而且给故障的排查带来困难。

针对上述问题,对485总线接口的软硬件设计采取了有效的改进措施,大大提高了联网系统的可靠性和稳定性。

1 RS-485总线接口硬件电路的设计如图1所示,89C51单片机自带异步通信接口,外接RS-485收发器75LHCl84,89C5l的异步通信口与75LBCl84之间采用3片光耦进行电气隔离。

1.1 75LBCl84 DE控制端的设计由于火灾报警控制系统中主机与分机相隔较远,通信线路的总长度往往超过l000m,而分机系统上电或复位又常常不在同一个时刻完成。

如果此时某个75LBCl84的DE端电位为1,那么它的485总线输出将处于发送状态,也就是占用了通信总线,这样其他分机就无法与主机进行通信。

这种情况尤其表现在某个分扰出现异常情况(如死机)下,会使整个系统通信崩溃。

因此在电路设计时,应保证系统上电复位时75LBCl84的DE端电位为O。

由于89C51在复位期间,I/O口输出高电平,故图1中电路的接法可有效地解决复位期间分机“咬”总线的问题。

1.2 隔离光耦电路的参数选取在火灾报警系统中,要对现场情况进行实时监控及响应,因此通信数据的波特率往往做得较高(本系统中控制器与显示盘之间的通信速率在6250bps)。

限制通信波特率提高的“瓶颈”并不是现场的导线(现场施工一般使用非屏蔽的双绞线),而是单片机系统进行信号隔离的光耦电路。

此处采用TIL117,电路设计中可以考虑采用高速光耦,如6N137、6N136等芯片;也可以优化普通光耦电路参数的设计,使之工作在最佳状态。

例如:电阻R2、R3如果选取得较大,则会使光耦的发光管由截止进入饱和变得较慢;如果选取得过小,则退出饱和会很慢。

毕业论文:智能避障小车之欧阳学创编

摘要避障是智能小车应具备的基本功能之一, 以P89C51RA芯片为核心,采集前方障碍信息并对智能小车进行控制,选用红外避障传感器检测智能小车前方的障碍物,设计了智能小车的自动避障系统,并阐述其工作原理。

该系统设计简单、成本低、实时性好,在室内环境中取得了预期的实验结果,使智能小车无碰撞到达目的地。

关键词:P89C51RA,智能,红外避障传感器AbstractThe obstacle avoidance is one of the main functions that an independently intelligent carriage should be provided. Use the P89C51RA as a key component, collecting the environmental information and controlling the intelligent carriage, a kind of obstacle avoidance system of intelligent carriage is designed. In this system, infrared obstacle avoidance sensors are used to detect thebarries,which are front of distance between the intelligent carriage and the barriers. The system's design is simple, and has lower cost and better real time features. And at the same time, this system has obtained anticipated experimental results in the indoor environment. That is: the intelligent carriage can arrive at the destination without any collision.Keywords: P89C51RA; intelligent; infrared obstacle avoidance sensors目录第一章绪论1.1 小车避障系统设计的意义自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。

新型多功能电子闹钟设计毕业设计论文

本科生毕业设计(论文)毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:2009届本科毕业设计(论文)资料第一部分毕业论文(2009届)本科毕业设计(论文) 新型多功能电子闹钟设计2009年6月摘要本文提出了一种基于AT89C51单片机的新型多功能电子闹钟。

通过对设计方案的比较与论证,选择了适合本设计的时钟模块、闹铃模块、温度检测模块、键盘及显示模块、电源模块设计方案。

其中实时时钟采用DS12C887实现年月日时分秒等时间信息的采集和闹钟功能;温度检测模块由DS18B20集成温度传感器对现场环境温度进行实时检测;键盘和数码管与ZLG7289连接,通过键盘数码管可方便地校对时钟和设置闹钟时间;用蜂鸣器进行声音指示;采用7805 三端稳压集成芯片稳定输出5V直流电压。

通过对AT89C51单片机最小系统的原理分析,结合论文的设计要求,完成了系统流程图及系统程序的设计。

本设计可实现时间显示、闹钟设置、环境温度测量、交直流供电电源等功能。

关键词:单片机,电子闹钟多功能设计,温度检测,交直流供电ABSTRACTIn this article a new type of multi-functional electronic alarm clock, is based on AT89C51 single-chip controller is designed. Through the comparison of design and feasibility studies, choosing a design of the clock module, alarm module, the temperature detection module, a keyboard and display module, and power module design. Real time clock uses DS12C887 to achieve accurate date and alarm function such as the collection of time information; Temperature detection detects the on-site real-time by the integrated temperature sensor DS12B20 ambient temperature; keyboard and digital tube are connected with ZLG7289, can be easy to proof-reading alarm clock and set up time; It use buzzer for voice instructions; Using 7805 three-terminal regulators chip output DC voltage of 5V. By analysis the minimum system’ principium of singlechip AT89C51, combine the request of this character, I finished the design of system flow chart and system program.The design can achieve the goal of time display, the alarm settings, the ambient temperature measurement, AC-DC power supply functions.Key word: AT89C51, the temperature sensor DS18B20, keyboard and demonstrates the ZLG7289, buzzer7805目录第1章绪论 (1)1.1 电子闹钟研究的背景 (1)1.2 本课题研究的意义 (1)1.3 本课题研究的主要内容 (2)第2章电子闹钟硬件电路设计 (4)2.1 电子闹钟总体设计方案的比较与论证 (4)2.1.1 设计要求 (4)2.1.2 设计方案的比较和论证 (4)2.2 电子闹钟主机电路设计及原理 (5)2.2.1 AT89C51芯片概述 (5)2.2.2 系统时钟电路设计 (8)2.2.3 系统复位电路设计 (8)2.3 时钟模块的设计及原理 (9)2.3.1 时钟模块设计方案比较比较与论证 (9)2.3.2 DS12C887芯片概述 (9)2.3.3 DS12C887与单片机的连接图 (14)2.4 温度检测模块的设计及原理 (14)2.4.1 温度检测模块设计方案比较与论证 (14)2.4.2 DS18B20芯片概述 (14)2.4.3 DS18B20的内部结构 (15)2.4.4 DS18B20在设计中的连接图 (17)2.5 闹铃声光指示电路设计 (17)2.6 键盘及显示电路设计 (18)2.6.1 ZLG7289芯片概述 (18)2.6.2 ZLG7289在设计中与键盘及数码管的连接图 (20)2.7 电源电路的设计 (20)第3章系统原理分析及软件部分 (22)3.1 原理分析 (22)3.2 单片机最小系统 (22)3.3 系统软件部分 (23)3.3.1 软件总体设计 (23)3.3.2 系统流程图及程序 (23)结论 (26)参考文献 (27)致谢 (28)附录1 (29)附录2 (31)湖南工业大学本科毕业设计(论文)第1章绪论1.1 本课题研究的背景随着科学技术的进步,现在的闹钟也不再是过去的老样子。

轨道衡称重传感器原理[称重传感器的原理及应用]

轨道衡称重传感器原理[称重传感器的原理及应用]称重传感器的原理及应用随着技术的进步,由称重传感器制作的电子衡器已广泛地应用到各行各业,实现了对物料的快速、准确的称量,特别是随着微处理机的出现,工业生产过程自动化程度化的不断提高,称重传感器已成为过程控制中的一种必需的装置,从以前不能称重的大型罐、料斗等重量计测以及吊车秤、汽车秤等计测控制,到混合分配多种原料的配料系统、生产工艺中的自动检测和粉粒体进料量控制等,都应用了称重传感器,目前,称重传感器几乎运用到了所有的称重领域。

1.高速定量分装系统本系统由微机控制称重传感器的称重和比较,并输出控制信号,执行定值称量,控制外部给料系统的运转,实行自动称量和快速分装的任务。

系统采用MCS-51单片机和V/F电压频率变换器等电子器件,其硬件电路框图如图1所示,用8031作为中央处理器,BCD拔码盘作为定值设定输入器,物料装在料斗里,其重量使传感器弹性体发生变形,输出与重量成正比的电信号,传感器输出信号经放大器放大后,输入V/F转换器进行A/D转换,转换成的频率信号直接送入8031微处理器中,其数字量由微机进行处理。

微机一方面把物重的瞬时数字量送入显示电路,显示出瞬时物重,另一方面则进行称重比较,开启和关闭加料口、放料于箱中等一系列的称重定值控制。

图1原理框图在整个定值分装控制系统中,称重传感器是影响电子秤测量精度的关键部件,选用GYL-3应变式称重测力传感器。

四片电阻应变片构成全桥桥路,在所加桥压U不变的情况下,传感器输出信号与作用在传感器上的重力和供桥桥压成正比,而且,供桥桥压U的变化直接影响电子称的测量精度,所以要求桥压很稳定。

毫伏级的传感器输出经放大后,变成了0-10V的电压信号输出,送入V/F变换器进行A/D转换,其输出端输出的频率信号加到单片机8031定时器1的计数、输入端T1上。

在微机内部由定时器0作计数定时,定时器0的定时时间由要求的A/D转换分辩率设定。

基于MSP430单片机的数控直流电流源的设计

基于MSP430单片机的数控直流电流源的设计摘要本系统是一个基于单片机的数控直流电流源系统。

采用单片机作为核心,辅以带反馈自稳定的串调恒压源,可以连续设定电流值。

由D/A转换器TLC5615、ZLG7289、中文字库液晶显示块、放大电路和大功率调整电路组成。

通过独立键盘输入给定值,由D/A转换器将数字信号转换成模拟信号,经D/A输出电压作为恒流源的参考电压,利用晶体管平坦的输出特性得到恒定的电流输出,最后用中文液晶显示输出。

其中单片机选用美国TI公司的MSP430F2274作为控制核心,利用闭环控制原理,加上反馈电路,使整个电路构成一个闭环。

软件方面主要利用PID算法来实现对输出电流的精确控制。

系统可靠性高,体积小,操作简单方便,人机界面友好。

关键字:数控 MSP430 PID算法反馈电路单片机Digital Controlled DC Current Source Design BasedOn MSP430 MCUABSTRACTThis system is a based on SCM numerical control dc current source system. Using single chip microcomputer as the core, with the strings with feedback from stability constant pressure source, can tone set by continuous. By D/A converter ZLG7289, Chinese word stock TLC5615, liquid crystal display (LCD) block, amplifying circuit and high-power regulating circuit component. The given value through independent keyboard input by D/A converter, converts digital signals into analog signals, the D/A constant current source voltage output as A reference voltage, using the plain output characteristic get the transistor constant current output, finallyuse Chinese LCD display output. One of the American TI company microcontroller choose MSP430F2274 as control core, using the closed-loop control principle, plus feedback circuit, make whole circuit constitute a closed-loop. Mainly using PID algorithm software to achieve output current the precise control. The system reliability high, small volume, easy to operate, friendly man-machine interface.Key Words:Numerical Control MSP430 PID Algorithm Feedback Circuit SCM目录前言 (1)第一章绪论 (2)1.1 课题背景 (2)1.2数控直流电流源概述 (2)1.2.1 电流源简介 (2)1.2.2 数控直流电流源的必要性 (2)1.2.3 数控直流电流源简介 (3)1.3课题进展 (3)1.4后话 (3)第二章芯片简介 (4)2.1单片机芯片MSP430F2274 (4)2.2D/A芯片TLC5615 (5)2.2.1 TLC5615功能简介 (6)2.2.2 TLC5615工作原理 (7)2.3ZLG7289A芯片介绍 (8)2.3.1 芯片简介 (8)2.3.2 引脚说明 (8)第三章系统硬件设计 (10)3.1 总体方案设计与比较 (10)3.2 单元电路设计 (11)3.2.1 电源电路 (11)3.2.2 D/A电路 (12)3.2.3 恒流源电路 (12)3.2.4 数码管显示电路 (14)3.3 PROTEL 99SE介绍 (15)第四章系统软件设计 (17)4.1程序语言介绍 (17)4.1.1机器语言 (17)4.1.2汇编语言 (17)4.1.3高级语言 (17)4.2PID算法介绍 (18)4.2.1 PID增量式算法 (18)4.2.2 PID位置算法 (19)4.2.3 微分先行PID算法 (20)4.3C语言程序设计流程 (20)4.4MSP430F2274编程基础简介 (21)4.4.1数据存储器和程序存储器地址空间 (21)4.4.2 MSP430F2274寄存器介绍 (21)4.4.3单片机的工作模式 (23)4.5程序流程图 (23)4.5.1 主程序流程图 (24)4.5.2 中文液晶显示 (24)4.5.3 键盘程序流程图 (25)4.5.4 A/D转换流程图 (26)4.5.5 D/A转换流程图 (26)4.6本章小结 (27)第五章系统仿真调试 (28)5.1仿真软件介绍 (28)5.1.1 功能特点 (28)5.1.2 功能模块 (28)5.2仿真步骤 (30)结论 (31)参考文献 (32)致谢 (33)前言直流电流源是电子技术常用的设备之一,广泛应用于教学、科研等领域。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

//以下为键盘使用的全局变量声名#define KEY_BUFFER_SIZE 30 //键盘缓存大小,如果缓存的按键数量大于缓存容量,则最早按下的按键丢弃#define KEY_CANCEL 0x11#define KEY_UP 0x12#define KEY_CONFIRM 0x10#define KEY_LEFT 0x14#define KEY_DOWN 0x13#define KEY_RIGHT 0x15//--定义键盘缓存:缓存为循环链表unsigned char key_buffer[KEY_BUFFER_SIZE]; //键盘缓存int key_buffer_pointer; //键盘缓存首指针(指向最后一个被按下的按键)int key_buffer_amount; //键盘缓存键值数()//int key_current_key;//--定义结束//--定义ZLG7289与MCU的硬件连接sbit ZLG7289_pinCS = P0^3;sbit ZLG7289_pinCLK = P0^2;sbit ZLG7289_pinDIO = P0^1;unsigned char ZLG7289_Delay_t;//--定义结束//键盘使用的全局变量定义结束/*宏定义:ZLG7289_ShortDelay()功能:短延时说明:延时(ZLG7289_Delay_t*2+2)个机器周期*/void ZLG7289_ShortDelay(){unsigned char t = ZLG7289_Delay_t;while ( --t != 0 );}/*宏定义:ZLG7289_LongDelay()功能:长延时说明:延时(ZLG7289_Delay_t*12+8)个机器周期*/void ZLG7289_LongDelay(){unsigned char t = ZLG7289_Delay_t * 6;while ( --t != 0 );}/*函数:ZLG7289_SPI_Write()功能:向SPI 总线写入1 个字节的数据参数:dat:要写入的数据*/void ZLG7289_SPI_Write(char dat)// reentrant{unsigned char t = 8;do{ZLG7289_pinDIO = (bit)(dat & 0x80);dat <<= 1;ZLG7289_pinCLK = 1;ZLG7289_ShortDelay();ZLG7289_pinCLK = 0;ZLG7289_ShortDelay();} while ( --t != 0 );}/*函数:ZLG7289_SPI_Read()功能:从SPI 总线读取1 个字节的数据返回:读取到的数据*/char ZLG7289_SPI_Read()// reentrant{char dat;unsigned char t = 8;ZLG7289_pinDIO = 1; //读取数据之前DIO 引脚要置1 以切换到输入状态do{ZLG7289_pinCLK = 1;ZLG7289_ShortDelay();dat <<= 1;if ( ZLG7289_pinDIO ) dat++;ZLG7289_pinCLK = 0;ZLG7289_ShortDelay();} while ( --t != 0 );return dat;}/*功能:执行ZLG7289 键盘命令返回:返回读到的按键值:0~63如果返回0xFF 则表示没有键按下*/char ZLG7289_Key() //reentrant{char key;ZLG7289_pinCS = 0;ZLG7289_LongDelay();ZLG7289_SPI_Write(0x15);ZLG7289_LongDelay();key = ZLG7289_SPI_Read();ZLG7289_pinCS = 1;ZLG7289_LongDelay();return key;}void ZLG7289_Reset(){EX0=0;key_buffer_pointer=-1;key_buffer_amount=0;ZLG7289_pinCS = 0;ZLG7289_LongDelay();ZLG7289_SPI_Write(0xA4);ZLG7289_pinCS = 1;EX0=1;ZLG7289_LongDelay();}/*函数:ZLG7289_Init()功能:ZLG7289 初始化参数:t:SPI 总线的延时值设置,取值1-40(超出范围可能导致错误)说明:t的取值可以参照以下公式:t >= 5 * f1 / f2,其中f1 表示80C51 的晶振频率,f2 表示ZLG7289 的晶振频率*/void ZLG7289_Init(){//unsigned char x;//I/O 口初始化ZLG7289_pinCS = 1;ZLG7289_pinCLK = 0;ZLG7289_pinDIO = 1;//ZLG7289_pinINT = 1;EA=0;IT0 = 1; //负边沿触发中断EX0 = 1; //允许外部中断EA=1;//延时初始化ZLG7289_Delay_t = 30;ZLG7289_Reset();}void ZLG7289_read() interrupt 0 using 1// 读键盘函数,响应外部中断0 {unsigned char t,t1;unsigned char dat;EX0=0;//此处处理键盘缓存,取回的键值已放在了temp变量中key_buffer_pointer++;key_buffer_pointer=key_buffer_pointer%KEY_BUFFER_SIZE;ZLG7289_pinCS = 0;t = ZLG7289_Delay_t * 6;while ( --t != 0 );t=8;dat=0x15;do{ZLG7289_pinDIO = (bit)(dat & 0x80);dat <<= 1;ZLG7289_pinCLK = 1;t1 = ZLG7289_Delay_t;while ( --t1 != 0 );ZLG7289_pinCLK = 0;t1 = ZLG7289_Delay_t;while ( --t1 != 0 );}while ( --t != 0 );t = ZLG7289_Delay_t * 6;while ( --t != 0 );t=8;dat=0;ZLG7289_pinDIO = 1; //读取数据之前DIO 引脚要置1 以切换到输入状态do{ZLG7289_pinCLK = 1;t1 = ZLG7289_Delay_t;while ( --t1 != 0 );dat <<= 1;if ( ZLG7289_pinDIO ) dat++;ZLG7289_pinCLK = 0;t1 = ZLG7289_Delay_t;while ( --t1 != 0 );} while ( --t != 0 );key_buffer[key_buffer_pointer] = dat;ZLG7289_pinCS = 1;t = ZLG7289_Delay_t * 6;while ( --t != 0 );key_buffer_amount++;EX0=1;}unsigned char GetKey() //用户函数,得到最先被按下且尚未被处理的按键。

若未有按键则返回-1{unsigned char temp;if(key_buffer_amount){EX0=0;if(key_buffer_amount>KEY_BUFFER_SIZE)key_buffer_amount=KEY_BUFFER_SIZE;temp=key_buffer[(key_buffer_pointer-key_buffer_amount+1)%KEY_BUFFER_SIZE];key_buffer_amount--;EX0=1;return temp;}return 0xFF;}unsigned char GetLastKey() //用户函数,得到最后被按下的按键,尚未处理的按键全部丢弃;若无键按下,返回-1。

{unsigned char temp;if(key_buffer_amount){EX0=0;temp=key_buffer[key_buffer_pointer];key_buffer_pointer=-1;key_buffer_amount=0;EX0=1;return temp;}return -1;}unsigned char GetCurrentKey() //用户函数,等待用户按键,并得到键值,尚未处理的按键全部丢弃{unsigned char temp;EX0=0;key_buffer_pointer=-1;key_buffer_amount=0;EX0=1;ZLG7289_Reset();while(!key_buffer_amount);EX0=0;key_buffer_pointer=-1;key_buffer_amount=0;temp=key_buffer[0];EX0=1;return temp;}。

相关文档
最新文档