单片机C语言开发与应用技术案例详解.ppt
《单片机C语言开发与应用技术案例详解.ppt》由会员分享,可在线阅读,更多相关《单片机C语言开发与应用技术案例详解.ppt(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、魏伟中国化学工业出版社中国化学工业出版社单片机单片机C语言语言开发与应用案例详解开发与应用案例详解 151系列单片机开发的基础知识单片机软件开发工具LED显示模块液晶显示模块D/A转换与A/D转换模块MCS-51单片机与键盘接口串行接口模块单相交流多用表设计实例程控直流电压电流表设计实例主要内容主要内容2第第1 1章章 51系列单片机开发的基础知识单片机应用系统的一般硬件组成由于单片机主要用于工业测控,其典型应用系统应包括单片机系统、用于测控目的前向传感器输入通道,后向伺服控制输出通道以及基本的人机对话通道。大型复杂的测控系统是一个多机系统,还包括机与机之间进行通信的互相通道。典型单片机应用系
2、统结构如图1.1所示。1.1 单片机应用系统开发单片机应用系统开发3图1.1 典型单片机应用系统结构 41.2单片机应用系统开发过程单片机应用系统开发过程单片机应用系统开发流程如图1.3所示。其开发过程如下:(1)系统需求与方案调研。(2)可行性分析。(3)系统方案设计。(4)系统详细设计与制作。(5)系统调试与修改。(6)生产样机。(7)生成正式系统或产品。5图 1.3 单片机应用系统开发流程图 61.3单片机应用系统的一般开发流程单片机应用系统的一般开发流程1确定系统的功能与性能确定系统的功能与性能2确定系统基本结构3单片机应用系统硬、软件的设计原则4硬件设计5软件设计6资源分配71.4单
3、片机应用系统调试单片机应用系统调试1.单片机应用系统调试工具单片机开发系统单片机开发系统万用表万用表逻辑笔逻辑笔逻辑脉冲发生器与模拟信号发生器逻辑脉冲发生器与模拟信号发生器示波器示波器逻辑分析仪逻辑分析仪2.单片机应用系统的一般调试方法硬件调试硬件调试软件调试软件调试8第2章单片机软件开发工具2.1Keil软件简介软件简介Keil软软件件公公司司的的8051单单片片机机软软件件开开发发工工具具可可用用于众多的于众多的8051派生器件以实现嵌入式应用。派生器件以实现嵌入式应用。Keil提提供供工工业业用用的的8051开开发发工工具具。为为了了帮帮助助你你熟熟悉悉我我们们是是如如何何分分配配工工具
4、具的的,下下面面介介绍绍工工具具套套件件的的概概念念。工工具具套套件件是是几几个个应应用用程程序序的的集集合合,这这些些程程序序用用来来创创建建8051应应用用系系统统。使使用用汇汇编编器器汇汇编编8051汇汇编编程程序序,使使用用编编译译器器将将C源源代代码码编编译译成成目目标标文文件件,使使用用连连接接器器创创建建一一个个绝绝对对目目标标文件模块供仿真器使用。文件模块供仿真器使用。92.28051开发工具开发工具1.8051开发工具2.KeilC51编译器3.A51宏汇编器102.38051开发工具的使用开发工具的使用Vision是一个集成软件开发平台。其中包含了编辑器、项目管理器和程序生
5、成器。Vision支持所有的Keil8051,251和166工具。Vision提供以下特性帮助用户加快嵌入式应用的开发过程:双击KeilVisionIDE的图标,启动KeilVisionIDE程序,你会得到图2.2所示的KeilVision2IDE的主界面。通过用Project菜单中的NewProject命令建立项目文件,过程如下:11图2.2 Keil Vision IDE的主界面12第3章 LED显示模块该例子的功能是要在51单片机系统中使用专用的LED显示芯片实现8位LED数码管的显示,主要可以分为三个部分:LED显示驱动芯片和单片机的接口电路LED显示驱动芯片和8位数码管的接口电路单片
6、机控制LED显示驱动芯片实现8位数码管显示的C语言程序3.13.1实例说实例说明明133.2设计思路分析MAX7219是一种串行接口的8位LED数码管显示驱动器。它与通用微处理器只有3根串行线相连,最多驱动8个共阴级数码管或64个发光二级管。它内部有可存储显示信息的88静态RAM,动态扫描电路,以及段、位驱动器。其主要特点包括:串行接口的传输速率可达10MHz;独立的发光二极管控制;译码与非译码两种显示方式可选;数字与模拟两种亮度控制方式;可以级联使用。由于MAX7219集成度高,驱动能力强,亮度可调,编程容易,与单片机接口十分简单,占用单片机的接口资源少,成为单片机应用系统中首选的LED显示
7、接口电路。143.3硬件电路设计MAX7219与8051单片机连接采用三线串行接口,典型应用电路如图3.4所示。具体连接方式参见图3.5和图3.6。图3.4 MAX7219与8051应用电路原理图15图3.5基于MAX7219的8位数码管显示电路单片机部分 163.4软件设计软件设计软件设计是本章的重点,在软件设计之前应仔细阅读3.2节有关MAX7219时序和内部寄存器部分。在这里,仅给出相关程序代码。源程序如下:/max7219leddriveprogram#include/*/通用符号宏定义#defineHIGH1#defineLOW0#defineTRUE1#defineFALSE0#d
8、efineZERO0#defineMSB0 x80#defineLSB0 x01/max7219part#defineDECODE_MODE0 x09#defineINTENSITY0 x0A#defineSCAN_LIMIT0 x0B#defineSHUT_DOWN0 x0C#defineDISPLAY_TEST0 x0F17第4章液晶显示模块4.1实例说明实例说明对于现在流行的嵌入式电子产品,如便携式仪对于现在流行的嵌入式电子产品,如便携式仪表、智能电器、消费类电子产品等,显示输出表、智能电器、消费类电子产品等,显示输出模块是必不可少的。液晶显示已得到广泛地应模块是必不可少的。液晶显示已得
9、到广泛地应用。用。本章将介绍如何在本章将介绍如何在51单片机系统中实现液晶显单片机系统中实现液晶显示。总的来说,本例是要实现这样的功能:示。总的来说,本例是要实现这样的功能:在在51单片机上运行单片机上运行C语言程序,通过单片机与语言程序,通过单片机与液晶模块靡靡之间的接口电路,控制液晶模块,液晶模块靡靡之间的接口电路,控制液晶模块,显示需要的内容,并控制显示的格式。显示需要的内容,并控制显示的格式。184.3硬件电路设计本例中液晶显示模块选用图形液晶显示模块GXM12864,它内含KS0108B/HD61202控制器,是一种采用低功耗CMOS技术实现的点阵图形LCD模块,有8位的微处理器接口
10、,通过内部的DDRAM实现128点64点大小的平板显示。该液晶显示模块使用KS0108B作为列驱动器,同时使用KS0107B作为行驱动器。KS0107B不与CPU发生联系,只要提供电源就能产生行驱动信号和各种同步信号,比较简单。GXM12864的内部逻辑电路如图4.2所示。19图4.2液晶显示模块GXM12864内部逻辑电路图20由于内部液晶控制器的存在,单片机可直接与GXM12864相连,不必使用其它的接口芯片。单片机采用Atmel公司的AT89C52,将液晶模块作为存储器的一部分,直接进行I/O操作。其工作原理如图4.4所示。图4.4单片机模块工作原理图214.4软件设计软件设计本例软件设
11、计的重点在于对液晶显示模块的驱动。由于内含GXM12864控制驱动器,所以需要了解控制器的指令集并掌握如何使用。本例中经常用到液晶显示,包括屏幕提示、键盘输入值的显示以及行驶中状态信息的显示。要编写正确的液晶显示程序,必须掌握所用液晶模块的指令集。22第5章D/A转换与A/D转换模块一般来说,自然界中存在的物理量大都是连续变化的物理量,如温度、时间、角度、速度、流量、压力等。由于数字电子技术的迅速发展,尤其是计算机在控制、检测以及许多其他领域中的广泛应用,用数字电路处理模拟信号的情况非常普遍。这就需要将模拟量转换为数字量,这种转换称为模数转换,用A/D表示(AnalogtoDigital);而
12、将数字信号变换为模拟信号叫做数模转换,用D/A表示(DigitaltoAnalog)。带有模数和数模转换电路的测控系统大致可用图5.1所示的框图表示。23图5.1一般测控系统框图245.1基于基于MAX527的并行的并行D/A转换器设计实例转换器设计实例5.2设计思路分析设计思路分析本例实现的是基于本例实现的是基于51单片机控制的单片机控制的D/A转换系转换系统,设计这样的系统时,需要着重考虑下面统,设计这样的系统时,需要着重考虑下面3个方面的内容。个方面的内容。1.如何针对系统需求选择合适的如何针对系统需求选择合适的D/A转换器件;转换器件;2.如何根据所选的如何根据所选的D/A转换器件设计
13、外围电路转换器件设计外围电路以及与单片机的接口电路以及与单片机的接口电路;3.如何编写控制如何编写控制D/A转换器件实现转换器件实现D/A转换的转换的接口程序。接口程序。255.4硬件电路设计硬件电路设计本例选用Maxim公司出品的4路12位电压输出型高精度D/A转换器MAX527。MAX527采用5V供电,8位数据总线(D0D3复用产生12位输入的高4位),数据通过两次写操作(低8位LSB,高位MSB)装入各输入寄存器,并通过异步装载输入信号将寄存器中的数据再装入DAC寄存器。MAX527芯片的引脚分布如图5.4所示。26图5.4MAX527芯片的引脚分布275.5软件设计单片机实现D/A转
14、换程序的流程如图5.8所示。图5.8单片机实现D/A转换的程序流程285.7A/D转换器的接口设计实例转换器的接口设计实例5.7.2设计思路分析设计思路分析本例要实现的一个51单片机A/D转换系统,设计这样的系统时,需要着重考虑下面几个方面的内容。1.如何针对系统需求选择合适的A/D转换器件;2.如何根据所选的A/D转换器件设计外围电路以及与单片机的接口电路;3.如何编写控制A/D转换器件实现A/D转换的接口程序。295.9MAX195电路设计电路设计图图5.23为为AT89C51与与MAX195接口的硬件电路图。接口的硬件电路图。图5.23AT89C51与MAX195接口电路图30第6章MC
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 语言 开发 应用技术 案例 详解
限制150内