avr单片机视频教程中怎么屏蔽自己发出的信号

【单片机到嵌入式之路】序列之9:总线你懂么?
> 【单片机到嵌入式之路】序列之9:总线你懂么?
【单片机到嵌入式之路】序列之9:总线你懂么?
  本节我们主要是从下面6个方面进行讲解:本文引用地址:
  1.的简单介绍
  2.的原理
  3.的特征
  4.总线的分类
  5.总线的技术指标
  6.传输数据可靠性
  一、总线的简单介绍:
  其实现实生活中也有很多总线的影子。比如从A地到B地,只能通过船来渡河,并且船一次只能承载一个人,这时候,如果大家蜂拥而上,那么大家都会掉到河里去,轻则都去不了,重则出现死亡。这时,我们可以通过分时来实行,比如多少点是谁坐船过去,人之间的先后顺序如何排序等。这就不知道不觉中运用了总线的时分系统传输性质。
  随着网络的发展,现在总线不仅仅局限于时分。还有频分系统、相分系统和码分系统等。只要认真分析,抓住本质东西,总线不是大家想象的那么难理解。
  二、总线原理【参考百度百科和网络】
  如果说主板(Mother Board)是一座城市,那么总线就像是城市里的公共汽车(bus),能按照固定行车路线,传输来回不停运作的比特(bit)。这些线路在同一时间内都仅能负责传输一个比特。因此,必须同时采用多条线路才能传送更多数据,而总线可同时传输的数据数就称为宽度(width),以比特为单位,总线宽度愈大,传输性能就愈佳。总线的带宽(即单位时间内可以传输的总数据数)为:总线带宽 = 频率 x 宽度(Bytes/sec)。当总线空闲(其他器件都以高阻态形式连接在总线上)且一个器件要与目的器件通信时,发起通信的器件驱动总线,发出地址和数据。其他以高阻态形式连接在总线上的器件如果收到(或能够收到)与自己相符的地址信息后,即接收总线上的数据。发送器件完成通信,将总线让出(输出变为高阻态)。
  目前最常见的主要有时分多路复用、频分多路复用和码分多路复用等。
  1.时分多路复用(TDMA)
  时分复用是将信道按时间加以分割成多个时间段,不同来源的信号会要求在不同的时间段内得到响应,彼此信号的传输时间在时间坐标轴上是不会重叠。
  2.频分多路复用(FDMA)
  频分复用就是把信道的可用频带划分成若干互不交叠的频段,每路信号经过频率调制后的频谱占用其中的一个频段,以此来实现多路不同频率的信号在同一信道中传输。而当接收端接收到信号后将采用适当的带通滤波器和频率解调器等来恢复原来的信号。
  3.码分多路复用(CDMA)
  码分多路复用是所被传输的信号都会有各自特定的标识码或地址码,接收端将会根据不同的标识码或地址码来区分公共信道上的传输信息,只有标识码或地址码完全一致的情况下传输信息才会被接收。
  总线的通信协议
  对于总线的学习,了解其通讯协议是整个过程中最关键的一步,所有介绍总线技术的资料都会花很大的篇幅来描述其协议,特别是ISO/OSI的那七层定义。其实要了解一种总线的协议,最主要的就是去了解总线的帧数据每一位所代表的特性和意义,总线各节点间有效数据的收发都是通过各节点对帧数据位或段的判断和确信来得以实现。
  如图1所示是常见的I2C总线上传输的一字节数据的数据帧,其总线形式是由数据线SDA和时钟SCL构成的双线制串行总线,并接在总线上的电路模块即可作为发送器(主机)又可作为接收器(从机)。帧数据中除了控制码(包括从机标识码和访问地址码)与数据码外还包括起始信号、结束信号和应答信号。
  起始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。
  控制码:用来选泽操作目标与对象,即接通需要控制的电路,确定控制的种类对象。在读期间,也即SCL时钟线处于时钟脉冲高电平时,SDA上的数据位不会跳变。
  数据码:是主机向从机发送的具体的有用的数据(如对比度、亮度等)和信息。在读期间,SDA上的数据位不会跳变。
  应答信号:接收方收到8bit数据后,向发送方发出特定的低电平。读/写的方向与其它数据位正好相反,也即是由从机写出该低电平,主机来读取该低电平。
  结束信号:SCL为高电平时,SDA由低电平向高电平跳变表示数据帧传输结束。
  当然不同的总线其数据位或段的定义肯定不同,但依据同样的原理可以更快的去了解它的协议的特性和特点。虽然其信息帧的大小不一,但具体的某一数据位或数据段都类似于本文所提及的I2C总线,会依据它的协议的要求来定义它所达标的意义和功能。
  三、总线的特征
  由于总线是连接各个部件的一组信号线。通过信号线上的信号表示信息,通过约定不同信号的先后次序即可约定操作如何实现。总线的特性如下
  (1)物理特性:
  物理特性又称为机械特性,指总线上部件在物理连接时表现出的一些特性,如插头与插座的几何尺寸、形状、引脚个数及排列顺序等。
  (2)功能特性:
  功能特性是指每一根信号线的功能,如地址总线用来表示地址码。数据总线用来表示传输的数据,控制总线表示总线上操作的命令、状态等。
  (3)电气特性:
  电气特性是指每一根信号线上的信号方向及表示信号有效的电平范围,通常,由主设备(如CPU)发出的信号称为输出信号(OUT),送入主设备的信号称为输入信号(IN)。通常数据信号和地址信号定义高电平为逻辑1、低电平为逻辑0,控制信号则没有俗成的约定,如WE表示低电平有有效、Ready表示高电平有效。不同总线高电平、低电平的电平范围也无统一的规定,通常与TTL是相符的。
  (4)时间特性:
  时间特性又称为逻辑特性,指在总线操作过程中每一根信号线上信号什么时候有效,通过这种信号有效的时序关系约定,确保了总线操作的正确进行。
  为了提高计算机的可拓展性,以及部件及设备的通用性,除了片内总线外,各个部件或设备都采用标准化的形式连接到总线上,并按标准化的方式实现总线上的信息传输。而总线的这些标准化的连接形式及操作方式,统称为总线标准。如ISA、PCI、USB总线标准等,相应的,采用这些标准的总线为ISA总线、PCI总线、USB总线等。
  四、总线的分类
  总线按功能和规范可分为五大类型:
  数据总线(Data Bus):在CPU与RAM之间来回传送需要处理或是需要储存的数据。
  地址总线(Address Bus):用来指定在RAM(Random Access Memory)之中储存的数据的地址。
  控制总线(Control Bus):将微处理器控制单元(Control Unit)的信号,传送到周边设备,一般常见的为 USB Bus和1394 Bus。
  扩展总线(Expansion Bus):可连接扩展槽和电脑。
  局部总线(Local Bus):取代更高速数据传输的扩展总线。
  按照传输数据的方式划分,可以分为串行总线和并行总线。
  串行总线中,二进制数据逐位通过一根数据线发送到目的器件;并行总线的数据线通常超过2根。常见的串行总线有SPI、I2C、USB及RS232等。
  按照时钟信号是否独立,可以分为同步总线和异步总线。
  同步总线的时钟信号独立于数据,而异步总线的时钟信号是从数据中提取出来的。SPI、I2C是同步串行总线,RS232采用异步串行总线。
  五、总线的技术指标
  1、总线的带宽(总线数据传输速率)
  总线的带宽指的是单位时间内总线上传送的数据量,即每钞钟传送MB的最大稳态数据传输率。与总线密切相关的两个因素是总线的位宽和总线的工作频率,它们之间的关系:
  总线的带宽=总线的工作频率*总线的位宽/8
  或者 总线的带宽=(总线的位宽/8 )/总线周期
  2、总线的位宽
  总线的位宽指的是总线能同时传送的二进制数据的位数,或数据总线的位数,即32位、64位等总线宽度的概念。总线的位宽越宽,每秒钟数据传输率越大,总线的带宽越宽。
  3、总线的工作频率
  总线的工作时钟频率以MHZ为单位,工作频率越高,总线工作速度越快,总线带宽越宽。
  六、传输数据可靠性
  可靠性是评定总线最关键的参数,没有可靠性,传输的数据都是错误的信息,便就失去了总线的实际意义。为了提高总线的可靠性,通常采用的措施有:
  采用数据帧发送前发送器对总线进行侦听,只有侦听到总线处于空闲状态下时才可向总线传送数据帧,这样避免了不同节点的数据冲突。
  采用双绞线差分信号来传送数据,以降低单线的电压升降幅度,减小信号的边沿产生的高次谐波。
  适当的让数据的边沿具有一定的斜坡。
  增加匹配电阻和电容等来减少总线上信号的发射和平衡总线上的分布电容等。
  采用合适的网络拓扑结构和屏蔽技术等来减少受其他信号的干扰。
  还有就是在软件上通过数字滤波、数据校验纠错等措施来提高数据传输的可靠性。
  看了上面的是不是对总线没有那么陌生了,感觉总线没有那么恐怖了!!
linux操作系统文章专题:
单片机相关文章:
单片机相关文章:
单片机相关文章:
cdma相关文章:
双绞线传输器相关文章:
分享给小伙伴们:
我来说两句……
最新技术贴
微信公众号二
微信公众号一百度文库-信息提示
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
对不起,该文档已被删除,无法查看
4秒后,自动返回首页单片机如何处理压变传感器的电压信号_百度知道
单片机如何处理压变传感器的电压信号
  首先确定压变传感器输出信号范围,单片机是否能直接识别,即是否在单片机识别范围内,如不是那就需要信号调试,比如放大等手段;其次是关心da的精度选取恰当即可。  压变传感器:传感器((英文:transducer/sensor))指的是能感受规定的被测量并按照一定的规律转换成可用信号的器件或装置,通常由敏感元件和转换元件组成。是一种检测装置,能感受到被测量的信息,并能将检测感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。它是实现自动检测和自动控制的首要环节。 传感器是以一定的精度和规律把被测量转换为与之有确定关系的、便于应用的某种物理量的测量装置。
其他类似问题
为您推荐:
提问者采纳
如果你不需要方向.5V,不过最大范围控制在-1.25V,把信号整理成正数压力输出的电压有正负问题不大。2?处理方法不完全一致,把整个波形上移1,你要估测一下他可能达到的最大值,最好不要用电源电压作为基准。把电压信号利用运算放大器放大。然后下面习惯路线,比如LM336-2、AVR的AD使用的时候,那也比较简单,不过要稍微损失一些精度,处理的时候变一变好了,你是否需要识别压力的正负方向。然后用运放搭一个加法器,第二种方法可以获得方向信息.5V,而是用独立的外接基准源芯片。还是把电压信号放大,这个比较好办,如果要追求精度.5V之间、如果你需要方向,走习惯路线好了,只是需要压力大小,增益你自己估算一下,以2。两种方法比较一下。1,送AD采样,注意。3.25V之间,AD780等,模电书里有),电压变化范围在0-2,也就是说.5V为基准比较好,不要超过2.25V-1。然后利用精密全波整流电路(也是用运放做。然后就送AD。我现在没有完全搞明白的是
提问者评价
谢谢你,你的答案基本上都讲到了。我采集的信号需要识别压力的正负方向,用示波器看就是有正有负的数值。
来自团队:
其他4条回答
只是你的信号有正负之分,都可以通过提取您的电压信号。即双电源,而后通过放大器电路放大之后进入ADC芯片(或者单片机自带ADC功能)中进行分析提取的,所以,你的放大器需要正负电源不管您的信号是正还是负的
首先确定压变传感器输出信号范围,单片机是否能直接识别,即是否在单片机识别范围内,如不是那就需要信号调试,比如放大等手段;其次是关心da的精度选取,这个跟据你系统要求而定;然后是对采集的数据处理,对于不稳定的数据一般要采取滤波等手段。
首先选一种ad转换芯片。。因为你的输出是有正负的,所以要那种课接受双极性的信号的ad芯片,如果只有单极性的,可以通过加法器或者偏置电路把它转换成正信号。。还要注意输出信号的电压范围,如果不在你所用的ad芯片范围内,就要通过运放或信号调理等方面来处理信号。。。具体的操作要看你输出的电压值及你所用的什么芯片。。。希望上面的回答对你有帮助
通过运放将信号变化到avr的ad采集范围既可
您可能关注的推广
单片机的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁我是怎样开始学习电子的
& &&&&第三届单片机征文精选稿件深圳学林电子 版权所有 转载注明出处&&&51单片机的LED点阵屏设计邢建鹏河南省新乡市河南科技学院机电学院应教054班1 引言点阵显示是集微电子技术、计算机技术、信息处理于一体的新型显示方式。由于其具有色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点。目前大多数的公交车招牌都是采用固定的板块显示,显示的信息量少,内容固定,修改站点信息比较麻烦,不能快速、便捷的更新站点信息。本文提出一种方案,采用LED点阵显示模块,克服了上述缺点,不仅可以静态的显示公交车站点信息,而且也可以通过动态滚动,从而增加信息显示的容量。为了醒目,还可以产生诸如闪动、滚动等显示效果。1.1 车内显示器的发展现状随着电子技术和计算机控制技术在客车上的日益广泛的应用,客车内的路牌显示器也经历了从灯光路牌、翻板式电子模块路牌、CRT显示、LCD液晶显示和LED点阵显示等几种发展类型;显示信息也从固定内容发展到任意内容的多种显示方式;对显示信息的编辑、修改,也由遥控键盘有线通讯模式发展到用计算机编辑文字,在经专用无线控制器将其发射到各站点的通讯模式。以后的发展趋势是卫星定位系统站点显示器,客车内站牌显示器由天线、卫星定位模块、微处理器、LED点阵驱动电路、LED点阵站牌和电可擦写存储器构成。目前在客车内广泛的显示器由LED点阵显示器和LCD液晶显示器,还有部分CRT显示器,由于CRT显示器耗电量多、体积较大,且本质量较重,与LED点阵显示器和LCD液晶显示器相比,已处于下风,目前LED和LCD显示器成为现代人们选择之一,它们各有优缺点。LCD液晶显示器具有图像清晰、体积小、功耗低等优点,但它的成本高、亮度低、寿命短、可视距离和角度很有限。而LED显示屏具有亮度高、故障低、能耗少、使用寿命长、显示内容多样、显示方式丰富等优点。1.2 LED点阵显示系统点阵显示是集微电子技术、计算机技术、信息处理于一体的新型显示方式。由于其具有色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点。目前大多数的公交车招牌都是采用固定的板块显示,显示的信息量少,内容固定,修改站点信息比较麻烦,不能快速、便捷的更新站点信息。本文提出一种方案,采用LED点阵显示模块,克服了上述缺点,不仅可以静态的显示公交车站点信息,而且也可以通过动态滚动,从而增加信息显示的容量。为了醒目,还可以产生诸如闪动、滚动等显示效果。目前LED显示屏的种类越来越多,从使用场合及亮度考虑可分为室内与室外屏,从扫描方式可分为动态扫描显示屏和静态扫描显示屏。室外使用的交通诱导屏,通常采用计算机同步控制的静态扫描显示,每个像素由几个高亮LED发光管组成,可做成多色或全色。其优点在于播放的内容信息量大,实时性强,且由于采用静态显示,亮度高;其缺点是硬件电路复杂,成本高。室内使用的由8×8LED点阵拼成的显示屏也有同步和异步之分,同步控制显示屏由计算机作为主控器,异步控制显示屏的主控器可采用单片机。单片机控制的单色显示屏由于结构简单,成本低廉,适合作为客车广告屏。本文介绍的客车广告屏屏系统是智能交通系统的一部分,它是利用先进的显示、及通信等技术手段,动态地、实时地显示公交车的站点信息,最大限度的提高公交车站牌的信息显示量。本系统采用的STC89C516RD+(宏晶科技)单片机是新一代增强型8051单片机标准的制定者,致力于提供满足用户需求的世界级高性能单片机技术,在业内处于领先地位,销售网络覆盖全国。在保证质量的基础上,以极低的价格和完善的服务赢得了用户的长期信赖。在广受欢迎的STC89C51全系列单片机的基础上,现全力推出“1个时钟/机器周期”的单片机,全面提升8051单片机性能。用该单片机作为系统的中央控制单元,负责产生和控制扫描信号、读出显示缓冲区的数据送给扫描驱动电路,使LED点阵屏按照一定的要求显示。根据设计要求,显示方式要具有掉电存储功能,因此,在单片机外围电路加上I2C总线的EEPROM,利用单片机外部中断功能检测出来所需要的显示方式,并把它存储在该EEPROM内,这样,即使断电显示方式也仍然存储在该EEPROM里面,单片机再重新读取该EEPROM里面的内容,也就是断电前的显示方式。结合KEIL软件编程,实现了PC机通信、控制界面以及安全措施,从而大大丰富了系统功能,提高了系统的可操作性,使达到交互式与智能化,符合未来交通系统智能化、网络化的发展方向。利用该系统,可以实现同一站牌不同方向客车站点的静态显示、动态显示和定时显示控制,另外用来应对交通突发事件,作为应急告示,达到疏散交通,保护人们安全的目的。设计时考虑到系统的扩展加上升级模块,可以实现系统的远程升级;加上公交车到站时间预测模块,可以预测到公交车到站的时间,方便行人;加上网络模块,可以连接互联网,直接通过互联网进行控制,也为以后的智能交通打下基础。2 LED点阵显示的理论基础LED点阵显示的基础理论包括光电子学、半导体器件、数字电子电路、大规模集成电路、单片机及微机等各个方面,既有硬件又有软件。上述各个领域都有自成体系,本文无法一一尽述,只能以显示屏为主线进行讨论,主要阐述了LED器件的应用基础和工作原理,以及LED点阵模块的构成和工作原理。2.1 LED器件的应用基础LED器件种类繁多。早期LED产品是单个的发光灯,随着数字化设备的出现,LED数码管和字符管得到了广泛的应用。LED发光灯可以分为单色发光灯、双色发光灯、三色发光灯、面发光灯、闪烁发光灯、电压型发光灯等多种类型。按照发光灯强度又可以分为普通亮度发光灯、高亮度发光灯等。LED发光灯的外形由PN结、阳极引脚、阴极引脚和环氧树脂封装外壳组成。其核心部分是具有注入复合发光功能的PN结。环氧树脂封装外壳除具有保护芯片的作用外,还具有透光聚光的能力,以增强显示效果。LED器件通常用砷化镓(GaAs)、磷化镓(GaP)等半导体材料制成。当向LED器件施加正向电压时,器件内部的电子与空穴直接复合而产生能量,以光的形式释放出来,产生半导体发光。因此LED的驱动就是如何使它的PN结处于正偏状态,而且为了控制它的发光强度,还要解决正向电流的调节问题。具体的驱动方法可以分为直流驱动、恒流驱动、脉冲驱动和扫描驱动等[2]。2.2 LED点阵模块显示单元(Display unit)由电路及安装结构确定的并具有显示功能的器件组成LED显示屏的最小单元,也叫点阵显示模块。点阵显示屏是由上万个或几十万个LED发光二极管组成,每个发光二极管称为一个像素。为了取得良好的显示一致性并简化器件结构,八十年代以来出现了组合型LED点阵显示器,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成,即所谓的点阵模块。点阵模块具有高亮度、功耗低、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。按照颜色的不同分为单基色、双基色和三基色三类,可显示红、黄、绿、蓝、橙等颜色。按照点阵规模大小分有4×4、4×8、5×7、5×8、8×8、16×16、24×24、32×32、40×40等。按照像素的直径大小分有φ3、φ3.75、φ5、φ10、φ20等。(a) 外部结构(b) 内部结构图1 8×8点阵结构图1为8×8单基色点阵的结构图,从内部结构可以看出8×8点阵共需要64个发光二极管,且每个发光二极管是放置在各行和列的交叉点上。当对应的某一列置高电平,另一列置低电平时,则在该行和列的交叉点上相应的二极管就亮。LED显示屏就是由若干个点阵模块组成的,它通过一定的控制方式,就可以显示文字、文本、图形、图像、动画等各种信息,以及电视、录像信号。3 方案设计从前两节的论述中可以看出LED点阵显示技术已经相当成熟。实现方案非常多。本文要设计的是客车内LED点阵显示屏,根据客车内的特殊环境,选择方案时就要考虑公交车的车身尺寸、震动、温度等对显示屏的影响,以及客车内电源的局限性,为了节约电能,采用太阳能电池供电,就要使显示屏功耗降到最低。3.1 显示方案根据论文的设计要求,本文提出了以下几种方案,对比论证,选取较合适的方案。(1)CRT监视器设计方案:在站牌出安装一小型彩色监视屏,将站点信息显示在CRT监视器上,供行人查阅。站点信息放在存储器内,通过无线广播的方式进行数据更新。这种方案的优点:是成本比较低,可以采用淘汰下来的电视机作为监视器;缺点是:耗电量巨大,
CRT显示器在阳光下的显示效果不理想。(2)LED点阵显示屏设计方案:整个站牌由LED显示屏构成,站点信息在点阵屏幕上显示,并且可以以静态的方式固定显示站点或者以动态的方式轮流显示所有的站点。系统通过RS485或者互联网进行更新、升级。这种方案的优点是:成本相对比较低廉,能及时动态的显示站点信息,显示的信息容量也比较大,便于远程控制和升级。缺点是:受目前LED显示技术的限制,对于图像和视频显示的效果不是很理想。(3)液晶显示器(或者等离子)设计方案:由液晶(等离子)显示器构成站牌,不但能显示站点信息,还可以显示图象或者视频信息,站点信息经过专用电缆或者互联网络传送。这种方案的优点是能在有限的站牌上显示更多的信息,尤其是图像和视频信息,缺点是成本太高,数据传输量巨大,不适合推广使用。通过比较上述三种方案,可以发现LED点阵显示方案有很大的可行性,而且其系统的升级也比较方便,便于推广使用,适应现代化建设的发展需求。3.2 控制电路方案控制电路有两种选择,数字电路控制和CPLD控制。数字电路控制的原理是LED点阵显示屏由单片机控制电路和显示驱动电路两大部分组成,一般的单片机控制部分采用ATMEL公司的51系列单片机,考虑到它的ROM相对较小,这里采用增强型的51单片机STC89C516RD+(宏晶科技)单片机,显示驱动部分由16片8×8
LED点阵模块和相应的驱动电路组成,位码扫描信号和段码信号都有单片机提供。由CPLD器件组成的控制电路,具有很高的可靠性和设计灵活性,所实现的显示效果样式较多,但采用可编程逻辑器件CPLD的设计成本相对较高。由于采用由单片机组成的控制电路已能完成设计的要求,且其性价比要优于采用由CPLD组成的控制电路。因此,本文采用前者作为控制电路。3.3 系统框图整个系统由两大模块组成:主控制单元和辅助控制单元模块。其框图如下所示。&&&&&&&&&&&&&&&&&&
图2 主控制单元结构框图图2为主控制单元结构框图,它主要完成的功能是LED点阵的显示和定时显示控制。DS1302为时钟芯片,为显示准确的时间;
DS18B02是温度控制芯片,显示车内的温度;AT24C256是容量为256Kbit的E2ROM,用来保存扫描方式的数据的信息,以及广告信息和更新广告信息等其它待显示的信息。RS232通信模块用来更新显示信息和升级系统。4 系统硬件设计4.1 显示屏驱动显示电路 显示屏分成屏体和控制器两部分,屏体的主要部分是显示阵列以及有行列驱动电路。根据安装环境的空间以及考虑成本造价,决定使用多大尺寸的显示屏,从而决定了显示模块的数量,这里以8×8点阵为例,模块单位为256点阵,即需要16块点阵模块,如图4示。汉字一般是256点阵,那么该屏可以一次显示4个汉字。采用扫描方式进行显示时,分成两步,对于每行有一个行驱动器,各行的同名列共用一个列驱动器,由单片机给出行选通信号,从第一行开始依次对各行进行扫描,对于列,根据各列所存数据,确定相应的列驱动器是否将该列与行接通,如果接通,那么该行该列的LED将亮,以同样方法进行显示全部各行都扫描一遍之后(一个扫描周期),再从第一行开始,进行下一个周期的扫描。只要一个扫描周期的时间比人眼1/25秒的滞留时间短,就不会感觉出闪烁现象。显示数据从驱动芯片到显示模块是以并行方式传输的,但显示数据从单片机到驱动芯片是以串行方式传输的,由于串行传输的控制电路简单,设计容易,缺点是串行数据传输需要很长的时间,不过这可以由软件来弥补,也可考虑单片机的控制速度。显示驱动电路由74HC595组成。74HC595输入端是8位串行移位寄存器,输出端是8位并行缓存器具有锁存功能。由于CLK、LOAD端相连,而数据线分开,这样在同一脉冲下,行列的数据可以同时进行传入,行列数据准备好后,启动LOAD信号使所有数据同时输出并锁存,这样的设计较之传统方法提高了4倍的速度,占用I/O口少,由于CLK,
LOAD引线较长,为避免线间干扰,在驱动6片74Ls595之后再加驱动芯片74L5244以驱动下一级驱动电路。行列扫描驱动相当于对发光管脉冲供电,要获得与直流驱动方式相当的发光强度,脉冲驱动电流的平均电流I1与直流电流I2相同,它们与脉冲电流幅值If的关系为If=Ton/Th,×I1是扫描周期,Ton是导通时间,占空比是1/16,扫描频率应大于24HZ,I取8mA,那么I=8×16=128mA,发光管压降取2V,那么每个发光管应串接50的电阻。行驱动最大瞬间电流能达到128×80=10.240A。LED显示屏驱动电路的设计,与所用控制系统相配合,通常分为动态扫描型驱动及静态锁存型驱动二大类。以下就动态扫描型驱动电路的设计为例为进行分析:动态扫描型驱动方式是指显示屏上的4行、8行、16行等n行发光二极管共用一组列驱动寄存器,通过行驱动管的分时工作,使得每行LED的点亮时间占总时间的1/n,只要每行的刷新速率大于50Hz,利用人眼的视觉暂留效应,人们就可以看到一幅完整的文字或画面。常规型驱动电路的设计一般是用串入并出的通用集成电路芯片如74HC595或MC14094等作为列数据锁存,以8050等小功率NPN三极管为行驱动,而以达林顿三极管如TIP127等作为行扫描管。如动态扫描型驱动方式是指显示屏上的4行、8行、16行等n行发光二极管共用一组列驱动寄存器,通过行驱动管的分时工作,使得每行LED的点亮时间占总时间的1/n,只要每行的刷新速率大于50Hz,利用人眼的视觉暂留效应,人们就可以看到一幅完整的文字或画面。常规型驱动电路的设计一般是用串入并出的通用集成电路芯片如74HC595或MC14094等作为列数据锁存,以8050等小功率NPN&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
图3 显示驱动电路三极管为列驱动,而以达林顿三极管如TIP127等作为行扫描管。如以单色点阵、16行×64列为一个基本单元,则需用8片74HC595、16个行扫描管,其工作原理为:将八片74HC595级连,共用一个串行时钟CLK及数据锁存信号STR。当第一行需要显示的数据经过8×8=64个CLK时钟后将全部移入74HC595中,此时产生一个数据锁存信号STR,使数据锁存在74HC595的后级锁存器中,同时由行扫描控制电路产生信号使第一行扫描管导通,相当于第一行LED的正端都接高平,显然第一行LED管子的亮、灭取决于74HC595中所锁存的信号;在第一行LED管子点亮的同时,在74HC595中移入第二行需要显示的数据,随后将其锁存,并同时由行扫描控制电路将第一行扫描管关闭而接通第二行,使第二行LED管子点亮……以此类推,当第十六行扫描过后再回到第一行,只要扫描速度足够高,就可形成一幅完整的文字或图像,其工作时序见图4。图4 串行移位工作时序图4.2 显示屏主控制电路在控制领域51系列、PIC系列以及AVR系列单片机是常用的微型控制器,每个系列都有自己的优缺点,在某些方面都有自己的长处。在具体的设计当中要综合考虑,如单片机的资源是否满足系统要求,系统是否有严格的速度要求,系统对控制器的抗干扰能力,硬件的加密性,外围电路是否简单,是否有比较齐全的成熟的开发、调试工具,如果要生产的话,则还要考虑价格和供货渠道等因素。4.2.1 控制器的比较及选型PIC系列单片机:PIC单片机采用精简指令使其执行效率大为提高。PIC系列8位CMOS单片机具有独特的RISC结构,数据总线和指令总线分离的哈佛总线(Harvard)结构,使指令具有单字长的特性,且允许指令码的位数可多于8位的数据位数,这与传统的采用CISC结构的8位单片机相比,可以达到2:1的代码压缩,速度提高4倍。PIC有优越开发环境。PIC在推出一款新型号的同时推出相应的仿真芯片,所有的开发系统由专用的仿真芯片支持,实时性非常好。其引脚具有防瞬态能力,通过限流电阻可以接至220V交流电源,可直接与继电器控制电路相连,无须光电耦合器隔离,给应用带来极大方便。PIC以保密熔丝来保护代码,用户在烧入代码后熔断熔丝,别人再也无法读出,除非恢复熔丝。目前,PIC采用熔丝深埋工艺,恢复熔丝的可能性极小。自带看门狗定时器,可以用来提高程序运行的可靠性。AVR系列单片机:是一种新型的单片机。运行速度快,一个时钟周期执行一条指令。硬件应用哈佛(Harvard)结构,具有预取指令功能,即在执行一条指令时,预先把下一条指令取进来,使得指令可以在一个时钟周期内执行。AVR单片机是多累加器型,数据处理速度快。超功能精简指令,具有32个通用工作寄存器,相当于有32条立交桥,可以快速通行。相当多的单片机只有一个累加器,就像一条独木桥,所有事都要通过累加器,速度慢。AVR单片机系列中有128B~4KB的SRAM静态随机数据存储器,可灵活使用指令运算、存放数据,中断响应速度快。AVR像8051一样,有多个固定中断向量入口地址,可快速响应中断。高级C语言编程效率高。从高级语言C代码完成同一任务实例来比较,8
MHz AVR单片机的速度相当于224 MHz的80C51单片机,AVR比80C51快28倍。AVR是低功耗单片机,具有休眠省电功能(Power
Down)及闲置(Idle)低功耗功能。一般耗电在1~2.5 mA;对于典型功耗情况,WDT关闭时为100 nA,更适用于电池供电的应用设备。有的器件最低1.8
V即可工作。可多次烧写的Flash,且具有多重密码保护锁死(Lock)功能。I/O口功能强、驱动能力大,具有输入/输出、三态高阻输入,也可设定内部拉高电阻作输入端的功能,以便于应用到各种所需的场合(多功能I/O口)。51系列单片机:51系列是指是兼容Intel公司51指令集的单片机系列的统名称。这种单片机所包括的硬件资源有:(1)一个8位的微处理器;(2)片内数据存储器RAM,用以存放可以读/写的数据,如运算的中间结果、最终结果以欲显示的数据等;(3)片内程序存储器ROM/EPROM,用以存放程序、一些原始数据和表格;(4)四个8位并行I/O接口P0~P3,每个口可以用作输入,也可以用作输出;(5)两个(或三个)定时器/计数器,每个定时器/计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制;(6)五(或六个)个中断源的中断控制系统;(7)一个全双工UART接口(通用异步接收发送器)的串行I/O,用于实现单片机之间或单片机与微机之间的串行通信;(8)片内振荡器和时钟产生电路,但石英晶体和微调电容须要外接。可以看出MCS-51系列单片机也是一款功能强大的单片机。STC89C51RC/RD+系列单片机是宏晶科技推出的新一代超强抗干扰/ 高速/ 低功耗的单片机,指令代码完全兼容传统 8051 单片机,12 时钟 /
机器周期和6时钟/机器周期可任意选择,最新的D版本内部集成MAX810专用复位电路。特点如下:(1).增强6时钟/机器周期,12时钟/机器周期8051CPU;(2)工作电压:5.5V~3.4V(5V单片机)/3.8V~2.0V(3V单片机);(3)工作频率范围:0~40MHz,相当于普通MHz实际工作频率可达48MHz;(4)用户应用程序空间4K/8K/13K/16K/20K/32K/64K字节;(5)片上集成1280字节/512字节RAM;(6)通用I /O口(32/36个)复位后为:P1/P2/P3/P4是准双向口/弱上拉(普通8 051传统I
/O口),P0口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为I /O 口用时,需加上拉电阻;(7)ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器/仿真,可通过串口(P3.0/P3.1)直接下载用户程序,8K程序3秒即可完成一片;(8)EEPROM功能;(9)看门狗;(10)内部集成 MAX810 专用复位电路(D 版本才有),外部晶体 20M 以下时,可省外部复位电路;(11)共3 个16位定时器/计数器,其中定时器0还可以当成2个8位定时器使用;(12)外部中断4路,下降沿中断或低电平触发中断,Power Down模式可由外部中断低电平触发中断方式唤醒;(13)通用异步串行口(UART),还可用定时器软件实现多个UART;(14)工作温度范围:0~75℃/-40~+85℃;(15)封装:PDIP-40,PLCC-44,PQFP-44。从以上几种型号单片机的比较中可以看出,PIC单片机、AVR单片机虽然在很多方面都有其特点,如在运行速度上,内部资源的配置等。但因其价格高,开发工具不及使用51系列单片机齐全,再考虑本系统对CPU的要求并不是很高,综合考虑还是选用已经普及的51内核的单片机。4.2.2 EEPROM存储器的选用为了能将系统所设定的常数,如更新的站点信息,设定的定时显示时间在系统掉电之后仍能恢复,在设计时必须考虑将常数保存起来。由于STC89C516RD+单片机片内没有EEPROM,须采用外部扩展方式。在系统的设计过程中,为了取得较大的系统余量,常采取存储芯片AT24C256,按照16×16的点阵来算,可以存储1000个字符,对于一个客车广告屏屏来说容量已经足够。AT24C256接口采用I2C总线接口方式。I2C总线是一种用于IC器件之间连接的二线制总线。连接总线的器件的输出必须是集电极或漏极开路,以具有线“与”功能。I2C总线的数据传送速率在标准工作方式下为100kbit/s,在快速方式下,最高传送速率可达400kbit/s。它通过SDA(串行数据线)及SCL(串行时钟线)两根线和连在总线上的上位机进行通信,并根据地址识别每个器件。采用I2C总线标准的单片机或IC器件,其内部不仅有I2C接口电路,而且将内部各单元电路按功能划分为若干相对独立的模块,通过软件寻址实现片选,减少了器件片选线的连接。CPU不仅能通过指令将某个功能单元电路挂靠或摘离总线,还可对该单元的工作状况进行检测,从而实现对硬件系统既简单又灵活的扩展与控制。表1 24C256的管脚介绍4.2.3 控制单元和存储单元电路用PC机实现的主要功能包括单片机显示子系统的(选择显示方式选择,包括静态、闪动、滚动、打字等),滚动方向选择(包括上下滚动和左右滚动),动态显示速度调节(即文字闪动频率、滚动速度、打字),显示速度等。显示采用定时器中断方式进行行扫描,每次中断显示一行,定时中断时间为1.25ms,这样整屏的刷新率为50Hz,因而无闪烁感。实现动态显示速度调节的方法通常是改变定时器的中断时间,但是当显示速度很慢的时候,该方法容易使整屏的刷新率降低,从而使显示内容出现闪烁。因此,本设计采用一种“软定时”方法,即在程序中命名一个变量作为“软定时器”,以用来设定两次动态显示的时间间隔。在对定时中断调用计数时,如果调用次数达到设定值,则改变显示内容。为保证能够正常显示,“软定时器”的设定值必须大于整屏显示周期。由于显示屏每行显示1.25ms,整屏显示周期为20ms,考虑到余量的情况,可将软定时器的设定值定在大于30ms。如此循环计数,即可实现动态显示。“软定时器”的设定值可以通过上位机PC机来改变,这样既可实现LED动态显示的速度调节,又可保持显示内容的流畅和无闪烁感。以上提到的静态、闪动、滚动和打字等4种显示方式,实际上是单片机定时中断程序进行行扫描处理的不同方法。下面将分别说明如何实现这4种显示方式。静态显示只需在定时中断处理程序中从显示缓冲区调入相应的一行显示数据,然后选中该行即可实现该行的显示,如此循环,便可显示整个内容。闪动显示与此类似,不同的是要间隔一个“软定时器”的定时时间,在行扫描时,行移位寄存器的D端打入的数据全为0,可使得整屏不显示,以确保黑屏的时间与显示当然时间相等,从而实现汉字或图符的闪动显示。滚动显示要求需要显示的内容每隔一定时间向指定方向这里以从右向左为例移动一列,这样显示屏可以显示更多的内容。为此,需要在下次移动显示之前对显示缓冲区的内容进行更改,从而完成相应点阵数据的移位操作。具体操作方法是:设置一个显示缓冲区,该区应包括两部分,一部分用来保存当前LED显示屏上显示的4个汉字点阵数据;另一部分为点阵数据预装载区,用来保存即将进入LED显示屏的1个汉字的点阵数据。滚动指针始终指向显示屏的最右边原点。当滚动指针移动到需要显示的点阵数据存储区的第1个汉字的首地址时,内容。需要注意的是,要确保该操作能在1.25ms的中断时间内完成(这里STC89C516RD+采用24MHz晶振实验证明可以实现该操作)。这样,在一个扫描周期后,整个汉字将左移一列,而显示缓冲区的内容也同时更改。由于预装载区保存了1个汉字点阵数据,即16×16点阵,所以当前显示缓冲区的内容只能移动16列。当下一个滚动到来时,滚动指针将移动到点阵数据存储区的下一个汉字的首地址,并在预装载区存入该汉字的点阵数据。然后重复执行上述操作便可实现滚动显示。特殊字符或图形的显示与此类似,这里不再赘述。打字显示要求汉字在显示屏上按从左到右的顺序一个个的出现,如同打字的效果。设计时可采用如下方法:首先将LED显示屏对应的显示缓冲区全部清零,即LED显示空白,然后每间隔一个“软定时器”设定的动态显示时间,显示缓冲区依次加入一个汉字点阵数据并进行扫描显示,这样就可达到打字显示的效果。DS1302慢速充电时钟芯片包括实时时钟/日历和31字节的静态RAM。它经过一个简单的串行接口与微处理器通信。实时时钟/日历提供秒、分、时、日、周、月和年等信息。对于小于31天的月,月末的日期自动进行调整,还包括了闰年校正的功能。时钟的运行可以采用24小时或带AM(上午)/PM(下午)的12小时格式。使用同步串行通信,简化了DS1302与微处理器的通信。与时钟/RAM通信仅需三根线:(1)RST(复位)、(2)DO(数据线)和(3)SCLK(串行时钟)。数据可以以每次一个字节或多达31字节的多字节形式传送至时钟/RAM或从其中送出。DS
1302设计成能在非常低的功耗下工作,消耗小于1微瓦的功率便能保存数据和时钟信息。传感器部分采用美国dallas半导体公司的DS18B20.温度测量范围为-55℃~+125℃,DS18B20是一种继DS1820之后新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,它能够直接读出被测的温度。DS18B20是支持“一线总线”接口的温度传感器,对DS18B20读出或写入信息仅需要一条线路,因此电路连接简单,一条线上可同时扩展多个传感器,以增加测量的准确性,该传感器支持3.0V~5.5V的电压范围,可靠性高,体积小,更经济,更灵活。4.2.4 远程通信电路在串行通讯时,要求通讯双方都采用一个标准接口,使不同 的设备可以方便地连接起来进行通讯。 RS-232-C接口(又称 EIA
RS-232-C)是目前最常用的一种串行通讯接口。在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻 辑“1”,-5— -15V;逻辑“0” +5— +15V 。噪声容限为2V。即
要求接收器能识别低至+3V的信号作为逻辑“0”,高到-3V的信号
作为逻辑“1”。RS-232-C接口连接器一般使用型号为DB-25的25芯插头座,通常插头在DCE端,插座在DTE端。一些设备与PC机连接的RS-232-C接口,因为不使用对方的传送控制信号,只需三条接口线,即“发送数据”、“接收数据”和“信号地”。所以采用DB-9的9芯插头座,传输线采用屏蔽双绞线。
由RS-232C标准规定在码元畸变小于4%的情况下,传输电缆长度应为50英尺,其实这个4%的码元畸变是很保守的,在实际应用中,约有99%的用户是按码元畸变10-20%的范围工作的,所以实际使用中最大距离会远超过50英尺。电路原理如图11所示,使用RS-232C的4、6和1、7、8分别进行短接,将2、3脚引出通过MAX232电平转换后连接到单片机的串口,在通信的时候,尽量要选用低的波特率,这样不容易出现错误,单片机的晶振频率最好选用11.0592MHZ,有利于正确传输数据[12]。&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
图5 远程通信电路5 系统软件设计5.1 显示屏主体显示本设计采用LED点阵显示屏设计方案,初步实现了在同一公交站牌显示不同公交车次,以及动态和静态的显示。程序在初始化后将存储在ROM内部的站点信息读出,送至单片机的RAM,初步的进行汉字点阵转换,转换后的数据再经过显示效果处理,比如站点信息的左移显示、右移显示、上下移动显示、滚动显示、等等。最后送入数据缓冲区,调用显示子程序,完成广告信息的显示。主程序的流程图如图12所示。显示子程序的任务是将缓冲区的数据读出,然后送到点阵屏显示。点阵显示的原理是按照列进行选择,然后通过串并转换,将一列的显示数据送至选择的列排点阵中,然后选择下一列,重复这样的步骤,就可以实现数据的显示。显示子程序的流程图如图13所示。&&&&&&&& 图6 主程序流程图&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
图7 显示流程图5.2 显示屏显示效果显示添加上效果处理后,增添了动态效果,能达到更好的显示效果。主程序在开始的时候设置要显示的效果,在显示效果子程序中,程序判断需要显示的效果后调用不同的显示效果处理程序,对缓冲区内的数据进行效果处理,最后再送入显示缓冲区,等待显示调用。其程序流程图如图14所示。&&&&&&&&&&&&&&&&&&&
图8 显示效果流程图
5.3 远程通信设计在远程通信程序中单片机主要完成接收PC机通过串口发送过来的公交车站点数据。采用中断接收方式。在中断服务子程序中,为了区别所接收的信号是联络信号还是字节数、是数据还是校验和,需要对接收到的数据进行辨别。首先在主程序开始中进行设定,若接受到的是01H,则判定为接收联络信号;接收到的是02H,则判定为接收命令信号;若接收到的是03H,则判定为接收数据信号;接收到的是04H,判定为接收数据开始标志信号;接收到05H,判定为结束接收数据标志信号[13]。程序在初始化后,首先调用单片机内部ROM区存储的站点信息,当有远程通信的数据到来时候,先将接收到的数据送到单片机内部的数据缓冲区,进行数据辨别和处理之后,再送到外部的E2
ROM中,将这些处理之后,再开始调用外部存储器的站点信息。单片机远程通信程序的流程图如图16所示。设置STC89C516RD+的串行口工作于第3种方式:9位异步传输,波特率由定时器1的溢出率决定。数据帧共12位,四个用于起停和命令标志位,8位数据放在四位标志位之后,接收时存入RB8,发送时取TB8中的值,由硬件自动完成。波特率设定为9600bps,串行口初始化后,需有一个时间延迟再接收数据,数据接收完后也需一个时间延迟后再转入接收状态。在串行通信RS232收发器控制方面,平时置P1.0为低,使串行口处于侦听状态,当有串行中断时,则置P1.0为高,发送应答信息,然后再置P1.0为低接收控制指令,继续保持Pl.0为低,使串行收发器处于接收状态,在这些过程中,涉及收、发等功能转换。&&&&&&&&& 图9 远程通信流程图
6 系统测试结果系统在测试的过程中,硬件电路相比较复杂,加上对点阵电路的研究不够深入,刚开始设计的时候,走了很多的弯路。尽管没有出现大的异常情况。但在软件调试过程中,出现一些问题:(1)单片机输出的信号在点阵屏幕上显示为乱码,不能正确显示字符,通过示波器的跟踪观察,确定为输入锁存芯片74SC244信号选择端没有正确连接所致,通过将电路修改后解决问题。(2)芯片编程出现错误,更换芯片后仍不能解决问题,经仔细查找后发现刚开始选用的AT89S52的ROM空间不够所致,所烧写的程序代码已经超过AT89S52内部的4KB的ROM空间,选用宏晶科技的STC89C516RD+单片机并且外加一片AT24C256芯片后解决问题。7 结论本文所讨论的客车广告屏的设计采用了宏晶科技的STC89C516RD+单片机作为系统的中央控制单元,并结合软件编程,实现同一站点不同方向客车的静态显示、动态显示,简化了系统操作,丰富了系统功能,符合未来交通智能化、网络化的发展方向。本系统经过改进后还可以应用到广告宣传的领域,通过远程通信实现对点阵屏幕的远程控制。在通信网络日益完善、通信工具日趋普及的今天,是一种很值得推广的技术。该系统具有较高的性能价格比,由此开发出的智能信息显示产品符合未来智能交通的发展方向,很具市场发展潜力。致谢在本次挑战杯设计过程当中,指导老师赵明富和其他老师以及同学们都给予了很大的帮助支持,赵老师严谨的治学态度和务实的求知精神给我留下了很深的印象,他们鼓励我孜孜不倦,锐意进取,特别是在困难的时候,他有意识地培养我独立思考和解决问题的能力。赵老师的严格要求,令我以后的工作和生活当中受益匪浅。在此,对他们所给予的指导和帮助表示最衷心的感谢。参考文献[1]王宏民.LED点阵显示屏驱动方案[J].黑龙江电子技术,~2.[2]眭碧霞.用单片机串行口实现动态扫描LED显示[J].电子工程师, 2006(6)[3]李熹霖.谈LED大屏的刷新频率和换帧频率[J].现代显示, 2004(1)[4]庞家成.多功能LED信息显示屏的设计[J].现代显示技术, 2006(9)[5]周小平.LED显示屏及其扫描电路的硬件及软件实现[J].印刷电路信息, 2005(1)[6]虞鹤松.LED显示屏高速数据通讯接口设计[J]. 国外电子元器件, 2005(2)[7]郭兆正等.LED点阵显示屏系统设计[J].渤海大学学报, 2005(12) [8]郝金刚.LED产业分析报告[J].现代显示, 2006(3)[9]张新鸣.公交无线信息广播系统[J].城市公共交通, 2003(4)[10]关积珍.显示发展及其在交通领域的应用[J].产业透视, 2004(6)[11]任来双.车载LED大屏幕显示屏的设计理念[J].郑州工业高等专科学校学报, 2004(3) [12]江丽炜.智能公交电子站牌显示时间预测方法研究[J].交通与计算机, 2006(10)[13]常玉林.胡启洲.城市公交线网优化的线性模型[J].中国公路学报, 2005(18)附录1 整体电路图&&&&&&&&&作品图片&&&&&&&&&&&&&&&&&&&&&&&&}

我要回帖

更多关于 avr单片机教程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信