使用查询标志位的方法通过串行口发送C语言的经典语句“hello World!”,在PC上运行串口调试助手软件接收此消息并在屏幕上显示出来。单击“打开串口”按钮,这时会发现在串口调试助手的接收区有“hello World!”图9-29 串口调试助手向单片机发送数字单片机接收到来自PC发送的信息后,用LED灯显示该数字的状态,系统板的具体状态如图9-30所示。......
2023-11-17
要驱动一个单色的LED点阵显示块,可以使用总线驱动器74HC245,任务8.1中使用了一个74HC245用来驱动行线,将图8-1电路图稍做改动,用两个74HC245配合使用8051系列单片机的两组I/O口来实现,其电路原理如图8-6所示。
图8-6中,两片74HC245分别驱动点阵显示块的行线和列线,驱动一个点阵显示块总共占用了单片机的16个I/O口,为了节省I/O口,可以使用前面介绍的74HC573。在这介绍另外一个芯片,用74HC138作为列线的驱动,其电路如图8-7所示。
图8-6 74HC245驱动点阵显示块
在图8-7所示的电路中,使用一片总线驱动器74HC245驱动点阵显示块的行线,而点阵显示块的列线则由一片74HC138来驱动,这样做的好处是可以节省5个I/O口,74HC138的灌电流和拉电流大约为25 mA,驱动8个LED绰绰有余。
图8-7 74HC138驱动点阵显示块
8.2.1 三八译码器的原理
三八译码器即三线八线译码器,三线是指三位的二进制输入端,八线是指八位输出端。三个输入端可以组合成从“000”到“111”共八种组合变化,对应着八个输出端互斥的低电平输出。
1.74HC138的功能
74HC138是一种三通道输入、八通道输出的译码器,其内部原理如图8-8所示。图中A0~A2为三线输入端,Y0~Y7为八线输出端。CS1、CS2和CS3分别是芯片的三个选通控制端,当CS1~CS3的值为“100”时芯片被使能,三个输入端电平的变化会被翻译成八个输出端互斥的低电平输出。三八译码器的引脚逻辑见表8-1。
图8-8 74HC138的内部原理
表8-1 74HC138真值表
注:H=高电平,L=低电平,×=不用关心,Z=高阻态。
2.74HC138的引脚排列
74HC138采用CMOS工艺,工作电压为2.0~6.0 V,其外观如图8-9所示,引脚排列如图8-10所示,引脚功能见表8-2。
图8-9 DIP16封装的74HC138(www.chuimin.cn)
图8-10 74HC138引脚排列
表8-2 74HC138引脚的功能
8.2.2 74HC138的编程应用
【实训8.1】用点阵LED显示心形图案。按照图8-7所示的实验电路,用来驱动点阵显示模块。电路搭建好后,编写驱动程序,目的是在点阵显示块上显示一个固定的心形,具体程序见代码清单。
将源程序正确编译后,在Proteus中进行仿真,程序运行后可见点阵显示块上显示出了心形图案,具体状态如图8-11所示。
图8-11 点阵显示块显示心形图案(一)
【实训8.2】让图像动起来。在上面的编程应用中,已经成功地将心形图案显示在点阵显示块上,现在如何让这个心形图案动起来,实现的方法是使用本书前面介绍的循环左移函数,具体程序见代码清单。
以上程序运行后,我们会发现点阵显示块上显示的心形图案会自上而下不断运动,具体状态如图8-12所示。
图8-12 点阵显示块显示心形图案(二)
三八译码器可以进一步降低I/O口的开销,其互斥的低电平输出可以驱动总线上不同器件的OE端作为选通信号,用于选通总线上的多个器件。另外,三八译码器同样具有较强的驱动能力,可以进一步简化电路的设计。
有关单片机原理与应用 基于C语言的文章
使用查询标志位的方法通过串行口发送C语言的经典语句“hello World!”,在PC上运行串口调试助手软件接收此消息并在屏幕上显示出来。单击“打开串口”按钮,这时会发现在串口调试助手的接收区有“hello World!”图9-29 串口调试助手向单片机发送数字单片机接收到来自PC发送的信息后,用LED灯显示该数字的状态,系统板的具体状态如图9-30所示。......
2023-11-17
随着单片机系统越来越广泛地应用于消费类电子、医疗、工业自动化、智能化仪器仪表、航空航天等领域,单片机系统面临着电磁干扰日益严重的威胁。电磁兼容性包含系统的发射和敏感度两方面的问题。如果一个单片机系统符合下面三个条件,则该系统是电磁兼容的:对其他系统不产生干扰。在前面的学习中,电源和复位电路部分是容易引起电磁干扰的地方,实际工程中解决电磁干扰的主要方法是在主电路上并接电容,使其干扰量减至最小。......
2023-11-17
目前在单片机市场上,8位单片机和32位的ARM嵌入式微处理器占据的市场份额达70%以上。在单片机市场中,代表性的产品有MCS-51系列产品,其中ATMEL公司的AT89C51/C52两个系列8位单片机在焊接领域应用较为广泛。1994年ATMEL公司以其E2PROM和Intel公司的80C31单片机核心技术进行交换,从而取得80C31核的使用权。......
2023-06-26
表4-3 C51支持的数据类型续表注:数据类型中加底色的部分为C51语言扩展的数据类型。C51语言中使用的数据类型包括C语言中标准的数据类型和C51语言扩展的数据类型。C51语言扩展的数据类型有位类型、可位寻址的位类型、特殊功能寄存器和16位特殊功能寄存器型等。另外,C51语言还支持由基本数据类型组成的数组、结构体、联合体和枚举类型等结构类型数据。......
2023-11-17
CADFEKO和POSTFEKO集成了一种强大的、高效的轻量级脚本语言——LUA,允许用户利用脚本来创建模型、得到仿真结果和模型配置信息等。需要注意的是,LUA脚本区分大小写,在FEKO 14.0进行更新后,在LUA脚本编辑器中就可以支持中文字符的输入。LUA脚本可以很容易地被C/C++代码调用,也可以反过来调用C/C++的函数,这使得LUA在应用程序中可以被广泛应用。在网络上可以发现很多LUA的功能模块,可以下载、安装到本地,并在FEKO中直接使用。......
2023-10-31
目前,Xen已应用于许多不同的商业和开源应用程序,如服务器虚拟化、基础设施即服务及桌面虚拟化。此版本Xen的设计是基于半虚拟化技术实现,要求修改客户机操作系统。成立XenSource的目的是为了基于Xen VMM,为用户提供一个完整的虚拟化解决方案。图3-6 Xen 3.0虚拟化架构在Xen虚拟化架构中,虚拟机被称为虚拟域。......
2023-11-18
图2-27 物体沉浮条件2.7.3 浮力原理的定义物体依据其本身在液体或气体中沉浸或飘浮的状况,可以分成沉体与浮体两种状态,所以浮力原理可分成沉体所受到的浮力与浮体所受到的浮力两个部分来表示。飘浮在流体的物体,称为浮体,受到的浮力等于物体排开流体的重力或浮体本身的重力。试用浮力原理说明在日常生活水饺的烹煮过程中,水饺刚放入水中时会下沉,而在水饺煮熟时会上浮的原因。......
2023-06-29
如果将单片机的一个I/O口连接于K点,通过检测K点电压的高低,就可以确认是否有按键按下,这就是键盘检测的基本原理。基于中断方式工作的独立键盘的电路原理如图6-8所示。矩阵键盘能有效地节省I/O口,简化电路,非常适用于按键数量较多的应用。......
2023-11-17
相关推荐