怎么制作比较真实的led屏幕设置效果

当前位置: >>
基于ARM的LED显示屏设计及显示效果的算法研究
西南交通大学 硕士学位论文 基于ARM的LED显示屏设计及显示效果的算法研究 姓名:邱云平 申请学位级别:硕士 专业:计算机技术 指导教师:靳桅 201205 西南交通大学硕士研究生学位论文第1页摘要LED显示屏作为新一代信息传播媒体工具,主要是因为它具有以下几个优点:使用寿命长、功耗较低、亮度比较高、可视角度大、可视距离远等。如今LED显示屏应 用十分广泛,比如证券交易、金融、车站、体育场馆、道路交通、机场航班、调度指 挥中心、商场、广告媒体、邮政、演出、展览会等各种公共场所。与如今LCD相比,LED显示屏具有低成本、高亮度且可以用标准单元板拼接成现场需要的LED屏幕尺寸。随着科技的发展,LED材料技术和工艺手段也在逐步提升,凭借其突出的优势,LED 显示屏成为信息显示的主流产品之一【11。本文主要讨论基于ARM的LED显示屏系统 的设计及显示效果算法的研究。 在LED显示屏系统设计中,控制卡设计是整个系统技术的核心。传统的LED显 示屏都是基于高性能8/16位单片机,采用的是8051内核,系统主频较低,对数据存储 和处理是通过扩展外部flash,不适合大屏幕的设计;采用ARM/FPGA作为微处理器时,虽然克服了单片机的缺点,但是成本也是明显提高。基于此,在分析前人研究的基础上,本课题基于ARM Cortex.M3内核的STM32芯片作为LED显示屏的微处理器,既 克服了单片机的性能缺陷和ARM/FPGA芯片高成本,同时又满足LED显示屏的性能 要求。论文主要内容如下: l、深入分析LED显示屏工作原理及整体架构,给出基于STM32的LED显示屏系统 的设计方案,完成了系统原理图和PCB板的设计、电路板的制作与调试等。 2、通过对双色LED显示屏的数据进行组织,得出了数据和存储地址之间的对应关 系,数据组织原理同样也适用LED大屏幕,因为通过LED显示屏单元板可以拼接LED 大屏幕。 3、通过对LED显示屏的数据组织的分析,得出一套比较通用的显示效果的算法, 为后续更深入研究LED显示屏或者是想研究LED显示屏的人员提供参考。 4、通过分析LED显示屏对ASCII码和汉字的显示原理,设计一种算法,可以一次 性输出ASCII码中的所有字符和汉字字库中的所有内容,并以数组的形式保存,方便程 序修改和调用,为LED显示屏在字符和汉字显示方面提供参考。 由于本设计采用高性能、低价位、低功耗的STM32作为微处理器,使得LED显示 屏系统具有相当好的应用前景。经过安装测试后,系统的各项指标均达到了设计要求, 整个设计已经在西南交通大学峨眉校区得到实践并运用。关键字:LED显示屏;删;STM32:数据组织:算法 西南交通大学硕士研究生学位论文第ll页AbstractThe LED displayscreenhas advantages of long service life,low power consumption,ahigh brightness,large viewing angle,visible distance etc.And it has become generation of informationnewtransmissionmediat001.Widelyused in securities trading,financial,station,stadiums,road traffic,airport flight,scheduling mall,advertisingcommandcenter,shoppingmedia,postal service,performances,exhibitionsscreenand all kinds of otherpublic places.LED display is lowcomparedwithLCD,the most outstanding characteristiccost,high brightnessand resizable screen size according to the need using standard the development of scienceLED unit board to makeup.Withandtechnology,LED materialtechnologies andonecraft also rising,LEDdisplay谢tllits outstanding advantages to becomeonof the mainstreaminformationproductlll.111is thesis mainly discussed basedembedded LED display system designand the displayeffect ofthe algorithm that research.coreIn the LED display system design,Control Card is theof the overall system design.Traditional LED display is based 1t isnotonhigh-performanceits8/1 6 bitSCM,usingthe 805 1 kernel.suitable for large?screendesign,becausehighestfrequency is low,data storageand processing ismadeby expanding the external flash;when usingARMorFPGAasamicroprocessor,it overcomes the shortcomings of the SCM,but the raised.Basedoncost is significantlythisand analysisof previousstudies,thissubject’usingtheARMCortex-M3 core-based STM32 chip as the microprocessor of the LED display,not onlyovercomes the deficiencies of the microcontroller and the but also meets the This thesishighCOst ofARM/FPGA chips,performancerequirements of the LED display. sectionsascomprises severalfollows:1.AnPCBin-depth analysis of how the LED display works and the overall architecture,giving the LED displaydesign plan basedonSTM32,it completes the system schematic andetc.board design,make and debugging of the circuit board2.Organized by the two?color LED displaydata,it obtains correspondence betweenthedataandstoreaddress.Andscreendata organizationprinciple also applies to the large LEDscreen,for LED largeis made up with LED display unit boards. above3.Through theanalysisof the dataorganizationof the LED displayscreen,auniversal algorithm was got to provide the reference staff for the LED displayscreenpeoplewho will study themore in-depthorwanttostudy it.4.Throughtheanalysisof the LED display ASCIIto output allandChinese characters displayprinciple,all algorithm isdesignedthe characters of ASCII code and the 西南交通大学硕士研究生学位论文第1 lI页Chinese Font Library.and store themasanarray.It contributes tO modification procedureand provides reference for the LED displaying characters. Because itauseshigll.performance,low-cost,lowapower consumption of the STM32舔microprocessor,LED display system hasvery good prospect.After the installationtesting,all the indicators of the system meet the design requirements;the entire design haS been used in the Emei Branch of Southwest Jiaotong University Campus.Key words:LED display screen;ARM;STM32;data organization;algorithm 西南交通大学硕士研究生学位论文m第1V页符号、变量说明D。:LED显示屏在动态显示时的显示区域的宽度 Dh:LED显示屏在动态显示时的显示区域的高度LE瞳Sw:LED显示屏在静态显示时的显示区域的宽度LEDDEL:,S_度高的域区示显时 态静在屏示显 Lw"LED显示屏的宽度(LED显示屏的物理尺寸) Lb:LED显示屏的高度(LED显示屏的物理尺寸) S。:LED显示屏的扫描宽度 B。:扫描线数 B。:输出数据宽度也即数据存储器的位数 X:X轴坐标(LED显示屏的显示区域,X≥01 Y:Y轴坐标(LED显示屏的显示区域,Y≥01 】‘i:显示区域X轴坐标的第j条扫描线 yi:显示区域Y轴坐标的第j条扫描线 XL:X轴坐标(LED显示屏左上角在显示区域中,Xl,≥ YL:Y轴坐标(LED显示屏左上角在显示区域中,YL≥ x:X轴坐标(LED显示屏的显示区域)。X=XI.+X(X y:y轴坐标(LED显示屏的显示区域)。Y=YL+Y(Y ∞∞≥≥ i: 逻辑存储单元字节地址 j: 逻辑存储单元位地址。j=O,l,...,Bw.1 Line:LED显示屏的行 D旷D7…:LED显示屏扫描线所对应的位,如单色LED显示屏8条扫描线分别对应Dl旷D7 疋P,:SPI总线时钟 11:灰度等级黏弘轧h≥≮∞∞丘:晶振频率 西南交通大学硕士研究生学位论文第1页第1章绪论1.1课题研究背景从1999年开始LED全彩显示屏在中国就已得到广泛使用,主要是因为红色、纯 绿色、纯蓝色LED发光二极管的飞速发展。全彩色LED显示屏可以实现漂亮的文字、 图像、图形,甚至动画、视频等等信息的显示。如今彩色LED显示屏随处可见,2008 年奥运更是推进了LED显示屏的发展,大量的运用了全彩LED显示屏。2010年上海 世博会现场也安装了大量的全彩LED显示屏;各项大型运动赛场、各个运动场馆均已 安装LED显示屏;翻新的火车站为了更好、更远距离看清车次和售票等情况也安装了 LED显示屏。机场、兴建中的大型购物广场、商务中心等地也在继续大规模安装使用 12】f31。2012年龙年春晚对LED屏幕巧妙的运用更是给观众展现了无数美轮美奂的多变 场景。 虽然LED显示屏的前景相当可观,但为了保护LED显示屏的知识产权和公司的 核心技术,使得很多技术没有得到很好的交流,这也在一定程度上制约了LED显示屏 技术更好的发展。本文基于以上考虑,在设计LED显示屏系统中尽量做到通用化,可 移植,包括硬件设计和软件设计。1.2国内外对LED显示屏研究现状及LED显示屏的发展趋势我国对LED显示屏的需求每年都在不断的增加,具体数据请参考【4】【51。据行业统 计,我国华东地区是全彩LED显示屏生产厂家最多的地区,占比为34.5%,我国华南地 区次之,占比为28.7%,其他的地方都是一些小公司,自主创新能力较弱【21。国内在这 行业比较好的有深圳艾比森、惠州德赛、德彩光电等。同时,通过产业的协同,TCL、 康佳、创维、海信、长虹等各大家电厂已经进入LED显示屏行业和照明行业、LED 背光行业,使未来的行业整合和竞争态势更加激烈。 国外对LED的研究相对比较早,目前国际比较著名的LED显示屏厂商有美国的 Dak仃omcs、Lighthouse和比利时Barco等,国外主要是在LED的材料、色彩、亮度等 方面进行研究:我国比较著名的公司有深圳艾比森、惠州德赛等,我国相对在LED研 究方面性对比较晚,主要是中科院、一些高校及电子系部等单位进行LED的研究。但 是大型使用LED显示的国家主要偏向于亚洲,如:中国、韩国、日本等国家,而欧洲 及美国地区次之【6】。 我国LED产业经过了30多年的发展, 在LED显示屏方面我国与国外相比较主要表现在以下几个方面:①从技术水平方面: 主要产品和关键技术与国际同行业的先进水平能保持一致,但工艺水平还比较落后: ②在产品设计方面:我国产品规范化、可靠性、整体系统设计、制造工艺、检测测试手段等方面与国际先进水平有差距。⑨从自主研发和产量方面:我国已经实现了自主生产器件、芯片和外延材料,但自产的LED 西南交通大学硕士研究生学位论文第2页芯片,外延材料产量仍有限,其产品以中、低档为主,产业化规模偏小,只能满足国内封装企业需求量的20%.30%,大部分高性能LED和功率LED产品均要依赖进口【71。201 1年,响应国家节能减排的号召,环保和节能已成为市场热点,因而具有节能优势的LED行业也在持续升温,同时也加快了LED的研发进程。 同时,在LED应用产业持续受到关注的时候,知识产权问题也受到了大家的特别关注,由于LED主流技术的核心专利已被国际巨头垄断并交叉授权,所以在LED方面的专利已成为全球竞争的焦点,具体可以参考【8119]。 LED显示屏发展是向着更高分辨率和更小点距这个趋势,使得它的运用范围也在 不断的扩大,具有更广阔的市场前景。1.3课题研究的主要内容1.3.1目前LED显示屏系统存在的一些问题l、目前大部分LED显示屏系统还是基于高性能8/16位单片机作为微处理器,其 主频受到限制,在一定程度上也限制了扫描速度和LED显示屏的可视区域的稳定性。 2、要想设计出比较优秀的显示算法,LED显示屏数据的组织就显得比较重要,有 些研发人员甚至有些公司没有意识到数据组织的重要性。 3、LED显示效果也是多种多样,目前还没有统一的算法或公认的算法。因为有些 算法涉及到公司的核心技术或知识产权,所以很多技术没有得到很好的交流,这也是 制约LED发展的一个重要因素。 4、目前有些LED显示屏对ASCII码和汉字的处理方面不够灵活,比如要显示“< 西南交通大学>"可能会先把每个字符或汉字用数组表示出来,然后把该数组嵌入到程 序里面,这样在需要显示大量汉字或字符的时候,就显的相当麻烦。1.3.2课题研究的意义基于上面存在的一些问题,本课题提出了一些相应的解决方法。 l、基于ARM的LED显示屏系统的设计 本课题采用的STM32序列的STM32F103C8T6芯片作为微处理器,该芯片成本10 元左右,与单片机的价格差不多,但是性能远远高于8/16位的单片机。该芯片是32 位,最高频率可达72MHz完全可以满足大屏幕的显示的需要,同时数据的处理采用 SPI接口,利用它可以同时发送、接受串行数据和传输数据速度快的优点来实现。 2、数据组织与存储。本课题通过对双色LED显示屏的数据进行组织,得出了数据和存储地址之间的对应关系。因为LED单元板可以拼接出LED大屏幕,所以数据组织的原理同样可以运 西南交通大学硕士研究生学位论文 用于LED大屏幕。 3、显示效果算法研究第3页通过对LED显示屏数据组织的分析,得出一套比较通用的显示效果的算法,方便 编程实现不同的显示效果,为后续工作和研究人员带来方便。 4、ASCII码和汉字字库的处理 在深入了解ASCII码和汉字在LED显示屏中的显示原理基础上,本文提出一种算 法,可以实现一次性输出所有的ASCII码和汉字字库中的所有内容,从而极大方便了 ASCII码和汉字在LED显示屏中的运用。1.4本章小结本章首先介绍课题研究背景,其次介绍国内外研究背景和趋势,最后介绍课题研究 主要内容,在主要内容中来阐述本课题研究的必要性和创新性,找出课题值得研究之 处,同时明确课题研究的方向和步骤。 西南交通大学硕士研究生学位论文.31第4页第2章整体方案分析.’2.12.1.1LED器件的介绍LED显示屏中术语的提取LED单元板是组成LED大屏幕的基本单位,要想得到不同尺寸的屏幕,只需将同 一类型的单元板在行、列两个方向上分别延伸。但选择何种类型的单元板则要求我们 必须了解LED单元板主要参数。下面提出如下部分术语并给出定义,本文下面的各章节所提及的未语均采用此部分的定义【10l。1、基色 指LED发光二极管颜色的数目。如:单基色、双基色LED显示屏和全彩色LED 显示屏,这三种显示屏对应的基色分别为l,2,3。 2、像素 每个LED发光二极管可以视为一个像素点。 3、扫描方式 扫描方式指在一块单元板中行扫描线数除以总行线数得到的比例,常见的LED显 示屏有1/4、1/8、1/16三种扫描方式。 4、LED显示屏的宽(高) 指LED显示屏水平(垂直)方向上象素的个数,而不是实际显示屏的物理尺寸。 5、LED显示屏扫描线数【11l首先把我们LED显示屏在扫描显示一副完整的图像的时候将图像分为几个部分,然后这几个部分分时显示,所需要的分时点亮的次数就叫扫描线数。2.1.2LED器件发光的基本原理介绍发光二极管LED(Light Emitting Diode),是一种把电能转换为光能的器件,发光二 极管是二极管,所以只要是二极管的PN结处于正向偏置就可以使发光二极管点亮。点 亮一个LED发光二极管的原理图如图2.1所示。LED光学原理和性能请参考‘12】【1 31。Vcc从圈中我们可以求出漉 过发光二稷臂的电流I。I=学■■■_■■■●图2-1点亮一个发光二极管原理图 西南交通大学硕士研究生学位论文 2.1.3第5’页LED器件驱动电路的设计目前最常见的LED器件驱动方法有三种:直流驱动方式、恒流驱动方式和脉冲驱动方式。 l直流驱动方式 直流驱动方式主要是LED发光强度相对恒定,适合于LED器件比较少的显示屏。 如图2.2所示。 2恒流驱动方式 恒流驱动一般采用晶体管,因为晶体管的输出具有恒流特性,恒流驱动使LED器件发光强度比较接近,如图2.3所示。3脉冲驱动方式 脉冲驱动采用LED器件重复通断电的方式使之点亮,就是利用人眼的惰性原理。 脉冲驱动的主要应用有两个方面:占空比驱动和扫描驱动。通过调节器件的发光强度 来实现图像的灰度的显示,一般采用占空比驱动。在考虑成本节约驱动器的时候,一 般采用扫描驱动,简化电路。如图2-4所示。V“ VwV”===基极电流控制 图2-2直流驱动方式 2.1.4 摹极电压控制 图2-4脉冲驱动方式 图2-0恒流驱动方式LED屏幕分类简介按照LED显示屏显示的内容是否与电脑是实时性,可以把LED显示屏分为同步 显示屏和异步显示屏。我们把LED显示屏同步显示电脑屏幕的内容称作同步显示屏。 同样把LED屏显示的内容已经发送到控制卡上存储器中,要显示的内容事先用电脑编 辑好存入控制卡内,然后显示屏可以脱离电脑使用,我们称为异步显示屏。按照显示性能可分为下面四种①视频显示屏,一般为全彩色LED显示屏:②文本 显示屏,一般为单基色;③图文显示屏,一般为双基色:④行情显示屏,一般为数码管或单基色显示屏【l 41。本课题就是设计的图文显示屏,而目前对图文显示屏没有一个 统一的定义,人们常常把能显示图形和文字的显示屏称为图文显示屏。 发光二极管是组成LED点阵的基本单位,而LED显示屏是由LED点阵模块拼接 而成,LED大屏幕可以由LED单元板拼接而成。最常见的LED点阵显示单元有5×7, 西南交通大学硕士研究生学位论文 7×9,8×8结构【15】【16】,图2-5是8×8LED点阵单元的外观及电路图。第6页,. 套. ,. ∥. ∥t ∥. .F. F 芦. 芦 芦. F. ≯. 芦. 芦. # 芦. 芦. 芦。 ∥. 芦. 芦. .芦. 擎 ,. 舻. 芦。 芦. 芦I 芦. 芦. 擎 芦。 芦. 矿. 芦. 芦. F ,. F ,. ,. 芦. 芦. 芦. F. 芦。 沓 芦. 芦. 芦. 芦. 芦. 芦。 芦. F 芦. ∥. 芦. 芦. ∥. ,. ,. FI8 7 6 5 4 3 2 l7C!●1●图2-5 8x8的LED点阵显示单元2.2LED大屏幕组成原理简介LED单元板整体电路介绍2.2.1LED大屏幕是由LED单元板组成,所以在设计LED大屏幕的时候必须先了解LED 单元板。在了解LED单元板之前先介绍一下在LED显示屏中常用的驱动芯片,表2.1 简单介绍了LED显示屏中常用的驱动芯片。表2―1LED显+J+'=l='-----t101【171序号l芯片名称74HC245芯片功能描述 总线驱动器,主要对时钟、数据、地址等信号进行增强驱动,一般用于LED单 元板信号输入、出接口。使得LED单元板的信号传输距离更长。 六反相器,主要用于对行扫描信号监测,用于保护LED单元板。以防止LED 单元板行驱动芯片I司定扫描某一行而导致驱动电力过大烧毁芯片。 8位锁存器,LED列数据驱动芯片。通过单元板接口上传来的同步时钟信号, 74HC595将每行显示所需要的数据送入对应位置,配合行驱动芯片进行显示。 行驱动管,功率管。内部是两个CMOS管,与74HC595相互配合进行显示。 译码器,通过3条地址线A、B、C,译出Y旷Y7这8条扫描信号供行驱动芯片 4953使用。 16位移位锁存器,LED驱动芯片。其功能与74HC595相似,只是MBl5026是 16位移位锁存器,并带输出电流调整功能。只有高阻状态和低电平状态。 74HC595并行输出口有高电平和低电平输出。274HC04374HC5954 54953 74HCl386MBl5026常用的LED单元板,一般采用高为4块,长为8块的8×4的排列方式,因此每 个单元板由32块8×8的LED模块组成,如图2-6(a)所示。由于LED大屏幕是由多个 单元板进行拼接而成,所以在LED单元板两端处分别预留了级联用的接口。现在都是 用16针插座,一般称为08接口。如图2-6(b)所示。 西南交通大学硕士研究生学位论文8X8 8×8 8X88×8第7页CND CND CND 暑N ▲B c8×88×88X88X8模组8x8模组8Xg模组8×8模组8x8模组8×8模组8X8模组8×8模组8×8模组8x8模组8X8模组8X8模组8X8梗组gX8模组8X8模组8×8梗组8X808接口●l t2 CND CND模组8×8模组8Xg模组8×8梗组8×8模组8×8模组8X8模组8×8模组8×8梗组梗组模组模组模组模组棋组模组D甜∞呱雠图2―6(a)LED单元板模块组示意图(b)08接口08接口作为级联LED单元板模块,表2.2是08接口16管脚的描述。表2-2 08接口16管脚的描述 序号l 2 3 4管脚名称A、B、C、D Rl、R2 G1、G2 RCK功能描述 行扫描信号线,在74HCl38配合下决定16行中的哪一行点亮 LED显示屏红色列数据线 LED显示屏绿色列数据线 74HC595数据锁存信号,上升沿将串行数据锁存入并行寄存器,同时屏体显 示更新 74HC595串行数据移位信号,上升沿将数据锁存入驱动模块中的串行寄存器74HC5 6 7SCK EN GND138片选信号线,有效控制屏体点亮,无效控制屏体熄灭 LED显示屏接地信号线图2.7是双基色单元板电路结构框架,主要是由32块8×8点阵模块,8片74HC4953,2片74HCl3¥,2片74HC245,32片74HC595。该单元板主要是由下面四 部分组成:分别为接1:3电路、驱动电路、译码电路和列数据电路【1们。图2-7双基色单元板电路结构框图 2.2.2LED显示屏屏体结构为了更容易理解LED大屏幕是如何由单元板进行拼接而成,下面先简单介绍双基 西南交通大学硕士研究生学位论文第8页色LED单元板的等效电路框图,如图2.8所示。这个是比较典型的单元板的等效电路 框图,具有通用性。单元板控制信号输入:Ctrl i-Ai+Bi+Ci+Di+RC鼬+SC硒+ENi 单元板控制信号输出:Ctrlo=Ao+Bo+Co+Do+RCKo+SCKo+ENo簟?一R1 DR1i一单兀一G 篓.一Ctrl 输.一 出一R20 .卜G2口1o DG 1 i――兀一D洲一;一誊哥斗}j图2-8双色LED单元板等效电路框图R2i一入G2i――有了上面的基础,就很容易画出由单元板拼接而成的LED显示屏屏体。图2-9是 256×64的显示屏,用64×32的LED单元板拼接而成。为了方便安装和拆卸,正面是 LED点阵。图2―9 LED屏体组成示意图图中256X64的显示屏的屏体,水平方向由4个“×32的单元板,垂直方向由2个“×32的单元板构成。图2-9右边的四根排线是屏体的接口,即屏体的控制线。在 实际电路和实物联接的时候扫描控制电路和屏体的控制线相联。单元板模块构成了屏 体,屏体信号的产生采用的是动态扫描法,因为LED发光数目比较多,不宜采用静态 扫描,从而使屏体显示需要的图像和文字。2.3基于ARM的LED大屏幕显示系统由图2.10可看出,该系统是主要由PC机和LED显示屏控制电路组成LED显示系统,PC机在控制中作为上位机,进行通信,下位机采用ARM作为微处理,完成对LED大屏幕的动态扫描控制,PC机与控制卡电路之间采用RS232/485通信标准,实现 通信功能。性价比是本设计考虑的一个重要因素,通过分析8/16单片机在LED大屏幕 动态扫描中的不足,从而提出ARM作为微处理的必要性,并且下面分析了基于STM32 作为微处理器的LED大屏幕动态扫描系统。 西南交通大学硕士研究生学位论文PC机第9页图2-10大屏幕LED显示屏的基本结构 2.3.1LED大屏幕显示时间的分析当采用动态扫描的时候,扫描时间比较重要。LED显示屏利用了人眼生理特性中 的视觉惰性,对于一个可以正常显示且不闪烁的LED显示屏而言,它的刷新频率理论 至少不能小于每秒50场,要想得到更好的显示效果,只有大于每秒55场,即一场扫描时间为1/55约等于55ms。当LED显示屏点数越多,则要处理的数据也就越大,这样就会增加扫描的时间,但是让人感觉到不闪烁的时间是固定的,这就迫切要求在设 计LED大屏幕的时候必须考虑CPU的选择了。基于这一点考虑,本课题采用了32位 的嵌入式处理器完全可以解决上述的问题,本课题设计的ARM芯片采用STM32系列的STM32F103C8T6,价格lO元左右,甚至比有些单片机都要便宜,但性能却远远高于绝大部分单片机的性能,所以在成本基本不增加的情况下,采用更高性能的微处理 器来设计LED显示屏,存储容量更大,支持更大可视区域的稳定显示。2.3.2基于单片机作为微处理的动态扫描电路图2.1l所示基于8/16位单片机为核心的动态扫描框图,系统主要由8/16位单片 机作为微处理器、扫描电路、列和行驱动电路、LED显示屏以及PC通信组成。图2-1 1基于单片机为核心的动态扫描框图LED大屏幕按驱动方式可以分为两种:静态显示和动态扫描显示。静态显示指将 一幅画面输入后要保持到下一幅画面的输入,而且还要求每个发光二极管提供单独的驱动电路;动态扫描就是利用人眼的视觉惰性,通过将画面分为若干个部分,分别进行刷新,动态扫描的优点在于若干个发光二极管为一组共用一个驱动电路,而不不必 西南交通大学硕士研究生学位论文第1 0页对每个发光二极管提供单独的驱动电路,然后通过扫描的方法依次点亮各组发光二极 管,从而简化了电路设计。另外,对于静态显示方式,电路比较复杂,需要较多的译 码驱动装置,很容易造成显示屏幕闪烁、亮度低等问题:而动态扫描显示方式,可以 弥补上面的不足之处。所以在静态显示方案很少应用于LED大屏幕的设计。 在LED大屏幕中,通常采用数据串行传输的方式。虽然并行传输的速度比较快, 但是线路复杂,这个复杂是随着屏幕的增大,点阵模块数量的增多而成正比。串行传 输方式电路设计简单,控制电路可以只用一根信号线,一般采用类似74HC595功能的 芯片来实现,因为数据一般要经过并行到串行和串行到并行两次变换。为了避免行扫描等待的时间过长,影响到LED的亮度,可以采用重叠处理的方法,该方法也就是在显示本行各列数据的同时准备下一行的列数据,当然这需要列数据的显示具有并行锁 存功能,这样可以通过锁存显示本行数据的时候,就可以准备下一行的列数据,而不 会影响本行的显示。通过上面一节对显示时间的分析可知:动态扫描对时间要求比较高,假如不能达到人眼视觉惰性范围内,那么我们看见的LED屏幕会出现闪烁,还会出现亮暗不均匀, 所以这就要求在选择微处理器的时候对频率的要求比较高,而基于单片机的LED大屏 幕在这方面就可能很难满足要求,所以本设计采用的是STM32F103系列芯片,频率可 达到72MHz,性能高,功耗低,完全可以胜任。2.3.3基于STM32作为微处理的动态扫描电路STM32系列基于ARM Cortex.M3内核,专为要求性能高、成本低、功耗低的嵌入 式应用而设计的。本设计采用的是STM32F103C8T6芯片,属于“增强型”系列,时钟频 率最高可达72MHz,在同类产品中,STM32F103序列是性能最高的,具体的介绍可以 参考第三章,下面主要讨论动态扫描电路,图2.12为基于STM32的动态扫描电路框 图。JTAG调试 接口鬯16Mbit F1ash SST26VF016翌转换STM32F1 03C8T6l微处理器大屏幕LED显. 示屏动态扫 描控制电路LED点阵 显示屏图2-12基于ARM为核心的动态扫描框图上图中的无源晶振为STM32F103C8T6提供外部时钟信号,通过内部的PLL倍频 电路,可达到72MHz,作为系统的工作频率。JTAG调试接口用于软、硬件的调试与 西南交通大学硕士研究生学位论文第1 1页开发。本系统选用SST26VF016作为串行Flash,存储容量为16Mbit,主要用于存放应 用程序及需要显示的文字和图形信息,因为它具有掉电不丢失的优点。微处理器自带 20KB的SRAM,主要用作程序的运行空间、数据及堆栈区。但是掉电就会丢失,所以 不易存储重要的信息,但其存取速度远高于Flash。LED大屏幕动态扫描控制电路通过 下面两步来完成,首先通过对LED点阵显示屏的各行进行选通,然后同时又向各列送 出表示图形或文字信息的脉冲信号,从而完成LED显示屏的各种显示。2.4各部分组成及功能1、RS232.RS485转换电路 RS232接口是1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂 家及计算机终端生产厂家共同制定的用于串行通讯的标准。该标准作了以下两个方面的规定:①采用一个25只脚的DB25连接器,对连接器的每个引脚的信号内容加以规 定;②对各种信号的电平加以规定。随着设备的不断改进,DB9代替DB25接口,现在都把RS232接口叫做DB9[18】。RS232接口,可以实现点对点的通信方式,但不能实 现联网功能。随后出现的RS485解决了这个问题,这也是RS232和RS485的差别和各 自的优点。RS232通信是全双工通信,可以和PC机9针连接的:3线制,通信距离理论上达到15m,但实际8m就很微弱了。485通信是半双工,2线制差分方式传输数据,可以 组网,用于主从方式,常用Modbus协议,理论达到1200m119】。RS232和RS485之间 的转换的设计是LED显示屏控制卡设计的一部分,本设计的控制卡中可以通过跳线帽 来选择是使用RS232还会使用RS4851201。图2.13中(a)是示意图,(b)是原理图。R RS232一vc印/I.IH洱85 T图2-13(a)RS232一RS485转换电路示意图图2―13(b)RS232一RS485转换电路原理图 西南交通大学硕士研究生学位论文 2、PC机与LED显示屏之间的通信第1 2页PC机与LED显示屏之间的通信是通过RS232或RS485121】串口,在LED显示屏系 统中,上位机的编程也是非常重要,有时候可以简化电路和对数据的组织。上位机主 要是完成对LED显示屏的控制与显示数据传输的处理,对LED显示屏的数据进行组 织,然后写入到控制卡中。2.5本章小结本章首先简要介绍了LED器件的发光基本原理和驱动电路,其次对LED大屏幕 系统进行介绍,再次通过对8/16单机片和ARM在大屏幕动态扫描的比较,突出在大 屏幕设计中ARM作为微处理器比采用单片机作为微处理更适合,最后简单介绍基于 ARM的LED大屏幕显示系统的一些功能部件。 西南交通大学硕士研究生学位论文第1 3页第3章系统硬件设计3.1系统硬件设计本设计的是异步LED显示屏,显示控制系统如图3.1所示。本系统主要由下面四 部分组成:LED大屏幕驱动电路部分,主要为显示屏的LED灯管驱动提供恒流源;LED大屏幕数据存储模块,主要是存储LED显示信息:基于ARM的显示屏的控制器部分, 主要是完成数据处理:LED显示屏的通信接口部分,实现上位机的通信,接受上位机的控制信号和数据;上位机用户操作控制平台部分,实现要显示的内容的处理和修改。脉亲善茎鐾鼋掣H黜信号产生电路l7I变化电路L E D大 屏LED显示屏控 制卡模块 串行FLASH存储器幕图3-1系统总体结构图从上述结构框图可以知道,ARM模块是整个系统的核心,该控制器的运算和处理 能力直接由ARM性能决定。为方便显示,把数据分别用两个存储器来存储,显示点阵的信息和一些必要的参数存储在FLASH存储器中,防止掉电丢失,立即输出的点阵信息存储在SRAM存储器中,存取速度快;另配有驱动电路对输出的点阵信息进行驱动, 以防止信号传输距离过长、衰减过大而造成LED显示屏无法正常工作;采用扫描保护 模块对输出信息进行监控,防止LED单元板行驱动芯片长时间固定扫描某一行,最终 由于驱动电流过大烧毁行驱动芯片。3.2微处理器的选择和介绍主芯片选择主要考虑下面四个方面: l、处理器速度方面:本课题要求的数据量大、实时性高、刷新速度,要求微处理 器有很高的处理速度。 2、电路设计角度:希望微处理器内部集成的功能电路越多越好,这样可以简化电 路设计,同时出错的概率相对也少一点,系统也相对稳定一点。 3、主芯片在整个系统中的作用:本课题中,微处理器主要是负责与上位通信,同 时完成文本、图像数据信息的处理。 4、设计成本:选择低成本的微处理器能够降低系统成本,有利于设计的产品向市 场推广应用。 基于以上四点考虑,本设计选用STM32F103C8T6,是意法半导体有限公司生产, 西南交通大学硕士研究生学位论文第1 4页是新型32位RISC处理器芯片STM32系列,其中STM32F103是“增强型"系列,是 同类产品中性能最高的产品,采用3级流水线和哈佛结构。该系列芯片采用高性能的 Cortex.M3版本内核,STM32F103C8T6工作频率72MHz,工作电压3.3V,内置高速存储器,具有丰富的增强I/O端口和连接到两条APB总线的外设【221。图3.2是STM32F103C8T6的系统架构,它主要具有以下几个优点:图3-2 STM32F103C8T6的系统架构1、高性能的“Cortex.M3内核":采用3级流水线和哈佛结构,带独立的指令和 数据以及外设总线:最高72MHz工作频率,在存储器的O的等待周期访问时可高达 1.25MIPS/MHz,而ARM7TDMl只有0.95DMips/MHz;单周期乘法和硬件除法。 2、一流的外设:l 的I/O翻转速度。 3、存储器方面:64K字节的闪存程序存储器和高达20K字节的SRAM,方便程序 和数据的存储。 4、时钟、复位和电源管理方面:①2.0.3.6V供电和I/O引脚,4.16MHZ晶振振荡laS的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI,18MHz器;②上电/断电复位(POMDR)、可编程电压监测器(PVD);③内嵌经出厂调教的8MHz的RC振荡器,内嵌带校准的40KHz的RC振荡器;④产生CPU时钟的PLL,带校准的32KHz的RC振荡器。 5、功耗低:有睡眠、停机和待机三种模式,在72MHz时消耗36mA(所有外设处 于工作状态),待机时下降到2uA。6、新型的存储器控制技术―.FSMC【23】:在外部存储器的扩展方面具有独特的优势, 支持多种存储器类型,同时通过对FSMC时间参数的设置,可以支持广泛的存储器型 号,使得本系统中外部FLASH存储器的扩展变得非常方便。 7、调试模式方便:串行单线调试(SWD)和JTAG接口,本课题采用的是JTAG 调试模式。 西南交通大学硕士研究生学位论文 8、优秀的计算单元:CRC计算单元,96位的新批唯一代码。第1 5页9、多达7个定时器:3个16位定时器,每个定时器有多达4个用于输入捕获/输 出比较/PWM或脉冲计数的通道和增量编码器输入:1个16位带死区控制和紧急刹车, 用于电机控制的PWM高级控制定时器;选2个看门狗定时器(独立的和窗口型的);系统 时间定时器:24位自减型计数器。而MCS一51系列单片机主要功能部件为:①8位CPU,12M的晶振;(室)4KB/SKB 片内程序存储器(ROM/EPROM);③128/256字节的片内数据存储器(RAM);④2/3个 16位定时/计数器;⑤1个全双工一部串行口;⑥5或6个中断源,2个中断优先级等等。 从上面的简单对比可以看出:STM32F103系列的芯片比MCS一5l系列单片机价格差距不大,但是性能却远远高于单片机。 为了更详细和深入的了解该芯片的功能,必须对管脚分布和管脚功能有所了解, 图3-3是STM32F103C8T6引脚实物图,表3.1是STM32F103C8T6引脚功能描述表。百垂蓉堂苫誊 墨。暨’量堇量量差誉薹薹茎萎 蚤‘圣’量堇重量差誉垂垂薹薹VBAT VDD VSS2ZPCI3-ANTI_TAMP PCI4-0SC32一INPCIS-OSC32-oUT PD0,oSC耵N PDI,oSC OUT NRs.rVSS^PAl,^,'rMS停WDIoPAll2 IPAll pAl0 IPA9 IPA8PBlS PBl4 PBl3VDDA队O-WKUPPAIP^工PBl2图3-3 脚位LQFP48l 2 3 4 5 67STM32F103C8T6引脚分配图124I管脚名称VBAT表3-1 STM32F103C8T6引脚功能描述表【251 可选功能 主功能 类型 默认功能 (复位后)S I/o I/o I/o I O I/oVBAT重定义功 能PCI3-ANTIj入MP(4) PC 1 4-OSC32一IN (4)PCI3(5) PCI4(5) PCI5(5)oSC n、I oSC oUT NRSTTAMPER二RTCOSC32..IN OSC32..OUTPC I 5-OSC32..O UT(4) PD0 oSC n、I PDl OSC OUT NRST 西南交通大学硕士研究生学位论文89第1 6页VSSA VDDAS S I/o I/o I/o l/oVSSAVDDA10 11 12 13 14 15 16 17 18 19 20PA0.WKUPPAl PA2 PA3 PA4 PA5 PA6 PA7PB0PAOPAlWKUP/USART2_CTS(8)/ADC_IN0/TIM2 CH!ETR(8)USART2_RTS(8)/ADC..IN 1/TIMPA2USAR飞23X(8)/ADCN2/TIM2CH3(8)2 CH2(8)PA3 PA4 PA5 PA6 PA7 PB0 PBl PB2/BooT 1 PBlO PBl 1 VSS lUSAR丝RX(8)/ADC―IN3/TIM2CH4(8)SPI 1 NSS/ADC――IN4/USART2_C∞l/o I/o I/o I/O I/O I/o I/0 I/o l l S SK(5) SPll SCK/ADCN5SPI I-MISO/ADC―IN6/TIM3_CH l(8) SPI 1..MOSI/ADC―.IN7/TIM3 CH 2(8) ADCN8厂rIM3CH3(8)PBl PB2/BooTl PBlO PBll VSSVDDADC IN9/TIM3 CH4(8)21 22 23 24 25 26 27 28 29 30 3l 32 33 343512C2_sCL(6)/USART3_TX(6X8)12C2?SDA(6)/USART3_RX(6X8)TlM2 CH3 TIM2 CH4VDD l PBl2 PBl3PBl2 PBl3№ №I/o I/o I/o I/o I/o I/o I/O I/o S S I/oSPl2_NSS(6)(8)/12C2――SMBAI(6)/USART3CK(6)(8)SPl2..SCK(6)(8)/USART3 CTS(6X8)PBl4PBl4SPl2_MISO(6xg)/USART3_RTS(6)(8) SPl2 MOSl(6)(8)USARTlPBl5 PA8 PA9PAl0 PAllPBl5PA8 PA9CK,MCoUSARTl TX(8) USARTl RX(8) USARTl CTS USARTl RTS PAl3PAlOPAl lPAl2 PA l 3/JTMS/SW DIoVSS 2 VDD 2PAl2JTMS.SWDIoVSS 2 VDD36 372 PAl4 TIM2 CHlPA 1 4/JTCK/SW CLK PAl5/JTDIJTCI“SWCLK38I/oJTDIPAl5ETIUSPI l NSS T1 M2―.CH2 /SPll SCK TlM3 CHl /sPll MlS O TlM3 CH239PB3/JTDOI/oJTDOPB3门rRACESWo40PB4/JNTRSTI/O刷TRSTPB44lPB5UOPB512C!..SMBAl/SPIl lMoS 西南交通大学硕士研究生学位论文4243 44第1 7页USARTl3XPB6PB7l/o l/olPB6PB712C 1..SCL(8)/TIM4_CH I(6X8) 12C 1_sDA(8)/TIM4 CH2(6)(8)BOoT0 PB8 PB9 VSS 3VDD 3BOoTO PB8 PB9 VSS 3VDD 345 4647I/O I/o S S”M4 CH3(6)(8) TlM4 CH4(6)(8)12Cl SCL 12C1 SDA483.3LED显示屏控制卡电路设计在LED显示屏系统中,控制卡的设计可以算是核心,图3-4就是基于STM32的LED显示屏控制卡。控制卡主要包括下面六个部分: >RS232.RS485转换电路: >系统电源电路; >JTAG接口电路: >基于DSl 8820温度传感器模块; >基于SPI的串行存储器Flash模块; 》.PICl2F508扫描保护电路模块设计;图3-4基于STM32的双色LED显示屏控制卡电路原理图有几个模块前面已经讨论过,这里就不再讨论,下面简单讨论系统电源电路、JTAG 编程接口电路、DSl8820模块、串行存储器Flash模块和PICl2F508保护电路模块的 设计。 西南交通大学硕士研究生学位论文第1 8页1.3.1系统电源电路设计对于系统可以通过USB供电或者外接电源供电,系统包括供电、调试、下载3位一体。系统通过5V转为3.3V给系统供电,为了防止电流过大,在设计的时候采用了 玎恢复保险丝,用于保护电源供电系统。设计时采用了FT232BM芯片【261,实现了USB揣口到串行端口通信。图3.5为系统电源电路刚271。图3-5系统电源电路图I.3.2JTAG接口电路Test Action为了方便程序的调试与下载,本设计采用JTAG接口。JTAG(Joint洳up,联合测试行动小组)是一种国际标准测试协议,芯片内部定义了一个TAP(TestkecessPort,测试访问口),通过专用的JTAG测试工具对芯片内部节点进行测试。JTAG冤定了进行边界扫描所需要的硬件和软件,主要应用于电路的边界扫描测试和对系统 挂行仿真、调试【碍】。很多高级芯片都支持JTAG协议,如ARM、FPGA、DSP等。标 匪的JTAG接口是4线,如图3-6所示,相关引脚的定义为: JTCK:测试时钟输入,作用是用来驱动测试访问口TAP,为TAP的所有操作提供 一个基本的时钟信号; JTMS:测试模式选择.作用是设置JTAG接口的测试模式: JTDI:测试数据输入,数据从JTAG接口输入都是从JTDI引脚以串行方式输入的; JTDO:测试数据输出,数据从JTAG接口输出是通过JTDO引脚以串行方式输出。 _II西南交通大学硕士研究生学位论文 第1 9页 IIIII―●●____―_――__――_―●―____―●―――_______-――__―__―_―_-_-___-――-――__――――__―__――__―_――一图3-6 JTAG接口电路本设计采用10针的JTAG接口,其中JTAG接口上的NRST信号和系统复位信号 NRST接在一起,在仿真时通过JTAG对系统复位。同时,为减少干扰,将JTAG中的 JNTRST、JTDI、JTMS、JTCK引脚接10K上拉电阻。通过JTAG调试工具,可以跟踪程序,同时盯AG支持JTAG和SWD两种模式,而STM32也支持这两种模式,给调试带来了方便。3.3.3基于DS 1 8820温度传感器模块设计DSl8820是DALLAS公司生产的温度传感器,一根线就可以实现DSl8820与主 机的双向通信。用DSl8820采样温度,将温度显示在LED屏上,不但显示效果好, 而且还节省了主芯片的资源,DSl8820详细资料请阅读四J。 LED显示屏控制卡中DSlgB20模块原理图如图3-7(a)所示,图3.7(b)为DSl8820的工作时序图,单总线一共有3种时序信号:①初始化信号;②写0、1信号;③读0、l信号,在设计中必须保证指令的执行时间符合时序信号的要求。主机发复位脉冲DSl8820发响应脉冲DSl8820等待VCCr。――’o”~7””“3’一1]5-60uf―GNDl旷VV~二.tVU了’7/,.―r_――.主机写。l。时枣――-'VCC4,W 扩…, p蝌5咪>30us◆ 茹嚣5u。0slwⅦe..>序3=Ous卜j西。s1882。采样//厂 4吲8啪采样●0NDVCC主机读。0。时序.―◆GND觚删川川 妙 惑乙>l惦一●――一主机读。I。时序_'酬―卜 主机采样●pUS-I?l 5IIs之誓:S孙us―-.图3-7(a)DSl8820/i理ltl图3-7(b)DSl8820的工作时序图【30l3.3.4串行Flash存储器模块设计SPI接口的全称是“SerialPeripheralInterface",意为串行外围接口,是Motorola 西南交通大学硕士研究生学位论文第20页首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在EEPROM,FLASH, 实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI接口是在CPU和外围低速器件之间进行同步串行数据传输,在主器件的移位 脉冲下,数据按位传输,高位在前,地位在后,为全双工通信,数据传输速度总体来 说比12C总线要快,速度可达到几十Mbpsl311。采用SPI接口访问存储器,一方面读取 速度快,另一方面可以扩展存储器的容量。图3-8(a)为SST26VF016的8引脚芯片,图 3.8(b)为控制卡中串行Flash的原理图,图3-9为SST26VF0168051S2AE的命名规则。CE#芯片时钟使能 SIO[3:0】串行数据输入输出SI串行数据输入SO串行数据输出SCK串行时钟线 Vaa电源Vss地图3―8(a)SST26VF016引脚描述图3-8(b)串行Flash存储器模块原理图图3―9 SSl"26VF016的命名规则SST26VF016在芯片擦除的时候可以按4KB、32KB、64KB进行块擦除,也可以整 块擦除。SST26VF016的操作是通过SPI总线兼容协议来使用的。而SPI总线主要是由 4条控制线组成的,分别为:选择芯片的CE引脚、串行数据输入的Sl引脚、串行数 据输出的SO引脚以及串行时钟SCK引脚。 SST26VF016支持SPI操作的模式O和3,如图3.10就是这两种模式的区别,也就 是在当总线主机处于等待模式SCK信号的状态并且没有数据被传输。对于这两种模式。 SO在SCK下降沿使用,SI在SCK的上升沿使用。对SST26VF016的具体操作这里就 不做详细的介绍,可以参考1321133l。 西南交通大学硕士研究生学位论文第21页――――■■_―●●―●■■■―●●●_――_●_______―_―――_―_―___―____-___-_――_-_--__lI―_―●―■―●■__●―――_―_●―___―_E―__―_●∞K瑚∞图3.10 SST26VF016的SPI协议3.3.5PICl2F508扫描保护电路模块设计图3.11是扫描保护电路,该电路主要是防止单元板上4953芯片烧毁,因为当LED 显示屏在固定对某一行扫描的时候,就会使得这一行电流过大,从而就会烧坏4953芯 片。基于此,在电路设计的时候设计了一个保护电路模块,当检测到某行被固定点亮, 则关掉74HC245驱动器,从而达到了保护作用。保护电路中采用的是PICl2C508A单片机,具体可参考【341,该芯片8个引脚,芯片的面积也比较小,使用起来也比较方便。保护电路主要是检测能信号E,当检测到输 出异常时,一定延时后检测仍正常即通过GP5置74HC245的OE#为高,关断屏幕的 输出。在对保护电路的程序编写程序时,可参照下图所示的流程图。 西南交通大学硕士研究生学位论文第22页图3―12保护电路工作不恿图3.4本章小结本章通过介绍系统的硬件设计,首先对主芯片进行介绍,然后介绍LED显示屏控 制卡电路的设计,最后介绍控制卡的主要模块设计。在控制卡设计中分别介绍了温度 传感器模块的设计、基于SPI的串行口存储器的设计以及扫描保护电路的设计。从而 整体上了解LED显示屏控制卡电路的设计。而且STM32F103增强序列的微处理器内 部自带实时时钟,所以不用外接实时时钟芯片,这样更方便了系统的设计与调试。 西南交通大学硕士研究生学位论文第23页第4章显示数据的组织及显示效果算法的研究LED大屏幕是由单元板拼接而成的,这就要求显示数据时必须按照单元板的串行 移位寄存器组的移位先后顺序在存储器中连续存储,即LED显示屏每一行的显示数据 顺序排列在存储器中。基于上面考虑,我们必须先了解LED显示屏的数据组织,为了 方便对LED显示屏的数据组织的讨论,下面以双色64×16的LED显示屏为例子讲解, 该显示屏已经在西南交通大学峨眉校区投入使用,且运行良好。 4.1LED显示屏的基本数据组织关系LED显示屏上的任意一点对应存储单元的某一位,所以可以用存储单元中的位的“l"或者“O"来表示LED显示屏对应点的“亮"或“灭"。LED单元板模块的驱动 方式决定了LED显示屏上点是用“l’’来表示亮还是“0": “0"表示共阳驱动方式,“l"来表示表示共阴驱动方式。我们常见的LED单元板模板的LED模块是共阳方式。 为了讨论的方便,我们把LED显示屏左上角定义为坐标的原点(0,O),下面以双色64×16的小LED显示屏来介绍其数据的组织。通过“×16的显示屏来深入了解LED大屏幕的数据组织之间的关系。如图4.1是64×16的LED显示屏的基本数据组织之间 关系的示意图。所以通过64×16的显示屏介绍同样可以理解64×32单元板的结构和 数据的组织。图4―164x16LED显示屏的数据组织关系示慈图通过上图,下面进一步讨论屏幕坐标X、Y以及扫描行与现实数据存储地址(i)、位 (j)的关系。 4.2X、Y坐标与显示存储单元字节地址(i)、位地址(j)之间的关系由图4.1可知,对于双基色LED显示屏显示数据组织时,我们可将红色扫描线定义为DO、D2、D4、D6,绿色扫描线定义为DI、D3、D5、D7,如图4.2所示,也就 是用一个字节中的两位(DO和DI、D2和D3、D4和D5、D6和D7)来表示LED显 西南交通大学硕士研究生学位论文第24页示屏上的一个点,所以显示一场的点数为256个。显示为低电平有效,即对应位为“0’’ 时显示相应的颜色。当需要LED显示屏X=4、Y=0显示红色时,其对应单元 Display_Ram[1] 的DO-=O,D1---1:当需要LED显示屏X=4、Y=0显示绿色时,其对 的D0=I,DI=0。通过上面的分析,可以得到屏幕坐标X、Y应单元Display Ram[1]以及扫描行与显示数据存储器地址i、位地址j的关系图,如图4-2所示。< 嗍I’l?显示存储器Ⅸ钠碍B栅陋叼)字节地出0 、0 l 4 lS 60 16 O 17 .. 31 60 240 O 241 4 60-2SS斟嘲I,3lS6llS61I56l暖湖2嘲k越。I垮6砬6326记63266237373763Y=Ln卸Y=Ln=lY.-Im=15图4-2坐标X、Y以及扫描行与显示数据存储地址(i)、位(j)的关系通过上面的分析和图4.2之间的关系,我们可以通过一种算法来实现,这样可以 便于理解和编程【lOl。 用CN来表示LED显示屏的单基色数目,CN=2表示为双基色,该显示屏是红、绿双色。用Cn来表示需要显示的颜色,该显示屏中Cn=0表示红色,Cn=l表示绿色,CIl=3为黄色。CN=2 i=Y?1 6+X/4………………………………………………………………………。(4?1) …………………………………………………………………………(4―2) ………………………………………………………(4?3)j=(X%4)?CN+CII通过对双色64×16的LED显示屏中数据和地址的存储关系,用同样的方法,可 以实现LED大屏幕中的数据组织。4.3双色LED显示屏显示数据介绍通过上面的数据组织,我们就可以让LED显示屏显示我们想要的汉字、字符或简 单的图案。下面对双色LED显示屏显示数据进行讨论,图4-3(a)是系统的总体流程图, 图4.3(b)是通过PC编程生成Led_Screen[Y]IX】的流程图。 西南交通大学硕士研究生学位论文第25页图4-3(a)LED显示屏总体流程图(b)PC生成Led_Screen rYl[X]的流程图从流程图可以看出可知首先通过PC机先对要预先显示的汉字或字符进行处理,生 成Led Screen[][]数组;然后在主函数中可以通过包含该数组的头文件,把数据和地址 部署到LED显示屏中:最后在LED显示屏中就显示了自己想要的汉字或字符。4.3通过proteus对双色64×16的LED显示屏进行仿真和实际效果图Proteus是一款优秀的电路仿真软件,它可以在windows上面运行,可以进行很多电 路的模拟和仿真,具体可以参考【35】【36】。图4.4是用Proteus仿真的双色LED显示屏的效果图。图4-4 Proteus仿真16X64的双色LED显示屏 西南交通大学硕士研究生学位论文实际显示效果如图4.5所示第26页图4-5实际显示效果图通过仿真和实际测试,验证了数据组织的正确性,同时也证明了LED显示屏控制 卡电路的各项指标基本符合。 在proteus中对于64×16的LED显示,用单片机作为微处理器来仿真的效果和实 际用STM32来显示的效果基本一样,但是在LED大屏幕仿真中用单片机就基本很难 完全显示出来,甚至画面不连续,图4-6就是采用8051内核的单片机来仿真128×128 的效果图。ip,_oEw'iliPJ-'!■_诫丽羞i霜’丽丽蠕i而丽i闹丽i闹丽i丽蕊t?::,..Ⅲ¨-¨¨¨l¨¨¨¨-l¨¨¨¨-I¨¨¨¨-¨¨¨¨¨l¨¨¨¨ll¨¨●¨印I●..-¨w.uIIllu.Iumu uliUliUuimimUll.U1.1l,Ulllll!UlllUUU UlnlnlWUlllUnuiii ..''‘{:f::t… .:::‘.+一’:::‘.…::::::.. .:二:二.‘.:..二.::.:.:::.。:,:,::…o:::‘::::::::’::’:::.’:::::,:。::::::. :::::.:::::::: ‘:::::::::’二:::::::.j.:. :廿l::f::{j::‘。l::?‘::t1I:l Ia:l{l l::-j?{';1?:ii叠:::!:i;::臻畦j:㈡Fz:吲曩:.?:o.:誊。‘Ⅲ¨¨¨¨Ⅲ¨¨¨II¨¨¨¨Ⅲ¨¨¨¨眦¨¨¨ⅢⅢ¨¨Ⅲ¨¨¨¨Ⅲ¨¨-¨Ⅲ¨¨¨I眦¨¨¨I哪¨¨¨-mI¨¨¨Ⅲ¨I‘图4-6单片机仿真128X 128的LED显示屏从图中可以看出,图片不连续,有些点也不亮,而且会闪烁,当然这不仅仅是单 片机的性能问题还有Proteus这个软件本身处理有点关系,当采用高性能的单片机有可 能不会出现上面的情况,当采用STM32F103增强型序列的芯片作为微处理器,上面的 显示就正常,这个已经通过了实际测试得到了验证。 西南交通大学硕士研究生学位论文4.3第27页LED显示屏显示效果介绍水平移动和垂直移动,是LED显示两种最基本的显示效果,其它任何运动基本上都可以由这两种基本运动进行叠加。同时显示效果根据算法的不同,会出现各种各样 的显示效果,但由于知识产权和商业机密等原因,导致LED显示屏的显示效果的算法并没有完全公布和很好的交流。这也是该课题的研究价值所在,通过数据的组织分析,从而列出通用的公式和显示效果图案,进行显示效果的算法研究。 LED显示屏的数据组织分为静态数据组织和动态的数据组织,但我们有时候可以 认为都是动态数据组织,因为静态显示是动态显示的一个特例。静态和动态显示的划 分主要依据需要显示的区域和实际显示区域(LED显示屏的尺寸)的关系来定义的。所 以静态显示就是当需要显示的区域小于或等于实际显示区域,动态显示就是当需要显 示的区域大于实际显示的区域。 下面将从静态显示屏和动态显示屏两方面来研究LED显示屏的显示效果,进而推 导出LED显示屏显示效果的算法,为了讨论和理解方便采用8位单片机进行讲解。 显示效果的基本条件: >显示屏的宽度为Lw=256: >显示屏的高度为Lh=128; >微处理器:8位单片机.>两条扫面线之间的扫描宽度为Sw=16: >显示屏的颜色为CN=l;单基色LED显示屏 >扫描线数Bw=2(标准单色单元板) >共用8条扫描线分别对应为D―D7 >X坐标为0,l,…,255 >Y坐标为0,l,…,127 >Do对应于Y=0至Y=15…D7对应于Y=I 12至Y=127;如果Y>127则Y-Y%1274.4静态LED显示屏显示效果算法研究为了更直观的理解静态LED显示屏,下面给出了示意图,如图4.7所示。通过上 面的基本条件和对双色LED显示屏的数据组织的分析,可以得出静态LED显示屏的 屏幕坐标X、Y以及扫描行与显示数据存储器地址(i)、位(j)的关系。位地址J其实也就 是表示Do至D7。Lll(n=0,l,...15)对应的均为X=0,l,…,255。扫描行为(DCBA),所 以Sw=16。具体的关系,如表4.1所示。 ――■―___―●_____●●―__――●_――――――_●_●―――_―――______――__●-____―_―――_II_――●―――●―■■■■■■____●―●――_―____―______―■――_西南交通大学硕士研究生学位论文第28页Y图4-7静态LED显示屏示意图扫描行(DCBA) .显示屏x坐标0 0 16 32 l O 16 32 LO 255 0 16 32 0 I 17 33 1 1 17 33 Ll 255 l 17 33 0 15 3l l 15 3l L15 255 15 31存储嚣位地址j,?一DO(YO) ~Dl(Y1) "-D2(Y2) ‘一D3(Y3) ~D4(Y4) "-DS(Y5)?一D6(Y6)4763 79 95 lll 127 f004763 79 95 111 127 fOl47 63 7995 1ll 127 fff显示屏Y坐标48 6480 96 11248 648048 648049654965 8l 97 1134965 81 97 1138197 113%112%112 Off‘一D7(Y7)存储单元地址i∞O∞ll∞lOI1ff静态显示屏的水平移动显示可以看成是将LED显示屏的第一列和最后一列对接; 垂直移动显示可以看成是将LED显示屏的第一行与最后一行对接;斜运动和曲线运动 可以看成是这两种运动的叠加。因为静态显示是显示的区域要小于LED显示屏的物理 尺寸,所以静态显示主要讨论的也是水平移动和垂直移动。图4-8(a)就是描述了静态 LED显示屏水平移动显示效果的数据组织,(b)图描述了静态LED显示垂直移动显示效 果的数据组织13引。圈I暖1一心一~幽(b)静态LED显示屏垂直移动数据组织图4.8(a)静态LED显示屏水平移动数据组织通过对表4.1和图4.8的分析,可以得出静态LED显示屏水平和垂直移动效果的 算法。 1.水平移动效果算法研究【10】 ≯Lo,Ll,…,L15水平移动时候扫描行时所对应的数据: >当左移一列时:输出Lo显示数据块时,先依次输出存储单元0001H,--00FFH后, m――l●●■_――■■■■■■――_●―■■――■■■■■■■■―●●●―■●■■―■■■●―■■■●■■―●●――_●西南交通大学硕士研究生学位论文 第29页 最后输出0000H; …:输出L15显示数据块时,先依次输出存储单元0F01H-0FFFH 后,最后输出0F00H。 >用Xo表示起始的X坐标,ADDR_BEG-k表示LIl行显示数据首地址,ADDR_Ln 表示输出数据的地址。 则按照上面的的结论可以推导出:输出行LII时,输出数据的地址的通用公式为:ADDR_Ln=ADDRBEG_JLll+(xo+i)%Lw(i=0,1,...,Lw-1)………………(4。4)所以在编程序的时候,可以先计算ADDR_BEG Ln,然后再计算ADDR_Ln,这样 就可以实现水平移动效果。 2.垂直移动效果算法研究 >当垂直向上移动时:第1次输出Lo,Ll,...,L15;第2次输出Ll,L2,...,L17;…第15次 输出Ll 12,Ll 13,...,L127。 >通过上面的分析,可以得出当第N次输出为LNo,LNl,...,LNl5 其中Nl=(N+1)%128 其它的依次类推: …………………………………………………………………………….(4?5)>通过上面的推导,我们可以用一个通用的公式来表示。首地址定义为ADDRBEG,当第N次第K行的时候,通用公式为:ADDRBEG=(N×L、一K)%Lh…………………………………………….(4-6)这样在编程的时候就可以指定要显示的行进行显示,就可以实现LED显示屏的垂 直移动效果。4.5动态LED显示屏的数据组织静态显示是动态的特例,有了静态的基础,对动态的显示效果算法的研究,就相对 来说有了一定的基础。除了上面提到的基本条件外,动态LED显示屏的显示效果还要 增加一些条件。 1.动态LED显示屏显示效果增加的基本条件【lo】[3911401 >整个LED显示屏共需要的扫描线条数为Bw×Sw,分别用Yo,Y1.…,Yaw-1表示。 >Lo为每次扫描行的第一行,即Y=0,16,...,112fV?'i'-?-.-r:7-1一-_fY?’V■‘r…一…一……(V?,X-m.I.….Dw?I Y―O.I.…dab-{Y●-?】 ―o_. fV?’ 一-―● (Yl,吾安聃屯?――‘。。。。。。“。―。¨’“_ ? ●,●●一一 ?一’■a■d'a■-I―-’’。。”。。。一,●f_?●l●●-?●B■一l一【YN'J?一■-rIl-’‘-?t■_―‘‘‘。。。。’一正示区域.Y-工7耋芦(Y-?’1㈧¨图4-9扫描线位置关系示意图 西南交通大学硕士研究生学位论文第30页囤 L――9-~I-(Bw-1)xS―w!!塑!塑 k――――――――――――――――――――――――――――――――――――一~一一―――――――――――――――――――――――――――――――――――――――――1DO(j=o叠n.◆ Dl(J=l趟H卜.’,Dw嘶1)w一.一一。M。胁。上”里+”一十-十十+_不内存 地 址―●i上占童上上{iil至{图4-10显示数据对应存储器中的格式 4.6X、Y坐标与存储单元字节地址i、位地址j的关系算法的思想:通过求出扫描行Yo(存储器单元的地址Lo),然后只要输出Sw个L0行就完成了一场完整的数据显示输出。4.6.1X、Y坐标与字节地址i、位地址j的关系基于上面的设计思想,由图4-9和4.10中第一行显示数据的排列可得到X、Yo与 i之间的关系如下【10】【41】:X=i%DwYo=i/Dw……………………………………………………………………………….(4-7)…………………………………………………………………………………(4-8)其中i=0,l,…,Dh-I 由图4-9和4.10很容易得到Yi与Sw之间的关系:Yj=(Yo+j×Sw)%Dh ………………………………………………………(4-9)其中j=0,l,...,Bw―l由图4-9和4.10和上面三个公式可以知道:①对于一个x对应这个B-个Y,也即i中B-位(O,1,…,13,-1)对应同一个X;②由(4-9)式可知:Y确定了B-个Y。X直接可以用(4―7)式确定,Y。直接可以用(4-8)式确定,最后由(4―9)式确定了Y,’Y明一1。4.6.2字节地址i、位地址j与X、Y坐标的关系由图4-9和4―10可知:X=0,1,…,D-一1,Y=0,1,…,DlI一1,i=0,1,…,DnD-一1,从而可以得出字节地址i、位地址j与X、Y坐标之间的关系如下【。oll421【43】:i=Yo:x D-+X………………………………………………………………………………(4一lo)(4-9)式两边同时加上(-j×Sw)%Dh,由模的运算规则得到下面式子: Y。=(YJ―j.×S.)%DII …………………………………………………..(4―11)为了保证Yo为正数,做下面处理: Y。=(D。+YJ―j×S.)%Dh…………………………………………………………。(4―1 2) 西南交通大学硕士研究生学位论文第31页联合(4―10)和(4―12)式,把(4―12)式代入(4―10)式得:字节地址i、位地址j与X、 Y坐标的关系如下:i=(D“+Yj一.j×S。)%Dh×D。+X ………………………………………………..(4―13)(4一13)式表明了当X、Y已知的时候,为了处理的方便,我们可以将Y看成是Y吣Y h...YB,--1,相应的3=0,1,…,B,-1,在具体求解的时候,可以定Y。=Y,…,Y叫一I=Y,代入(4―13)式可以求得字节地址i。4.7LED显示屏动态显示效果的算法研究为了方便描述动态数据的组织形式,给出一个比较通用的算法来表示LED显示屏的动态显示效果。图4-1 1(a)为LED显示动态显示效果的示意图,(b)为显示屏与显示区 域关系示意图。假设显示数据块的起始地址为Display―RAM―BEG。通过组织显示数据的 输出来现实,数据的组织可以通过下面4个步骤来完成。●~1际震纛蓊I箧鳖i一一嘶I动态显示酉匿誊薹誊誊蒌羞蒌薹嬖至萎引(b)显示屏与显示区域关系示意图0l:图4-11(a)LED显示屏动态显示效果示意图根据上面提到的LED显示屏动态显示效果算法的思想:先计算起始存储器的地址, 然后再计算起始地址所对应的扫描线的输出数据,其次再计算水平方向循环,最后输 出完整的一次扫描的显示数据。下面按这个思想进行数据组织: ①由图4-1 1(b)可知确定LED显示屏X。、Y。对应于L0(扫描线Y。起始存储单元地址) 由(4-9)式和(4―13)式和显示数据块的起始地址Display―RAM―BEG可的到n们HLo=Di splay―RAMBEG+YL%Dh×D-+XL………………………………………~(4―14)因为对于单元板B-为2,所以B-位分别对应于显示区域上的(X。,Y。),(X。,YL+1×S。),…,(X。,YL+(B-一1)×S.)共B-个点。通过Y。的改变,得到了了整个单元板的L0首地址。 ②输出L1个数据为了输出LED显示屏的实际长度,需要输出从X。,X…,…,X。+L.一1。所以显示区域上的X可以表示为: X=(XL+k)%D. ………………………………………………………………….(4―1 5)其中k=O,1,…,Lw-1③X水平方向的循环,联合.(4―14)式和(4-15)式得到字节地址i∽: 西南交通大学硕士研究生学位论文第32页iIJ0=Display―RAM―BEG+Y。.%Dh×Dw+(Xl,+k)%D-……………………(4―16) ④一场完整的数据显示输出输出S,个L0行就算是完成~场完整的数据显示输出,这就要求L。=YI.,Y。.+1…,YI+S,一1,其中X轴不变为X1.,一共S。个点,一次完成S。次才能完成一场宽度和高度分 别为L。和Lh的显示,此时L。为:Lh=S,×B。…………………………………………………………………………………….(4―1 7)因为相邻的两行显示数据的起始点在存储器中相差S。,只要在上面(4―16)式子可以 知道,只要添加一个变量就可以实现完整的数据输出,如下:i=Di splay RAM BEG+(YL+m)%Dh×D-+(XL+k)%D_……………(4一18)其中k=0,1,…,L.一1,m=0,1,…,S。一1为了突出循环显示,上面的公式可以稍加修改,条件和上面的一样,如下:i=Display―RAM―BEG+(Dh+YL+m)%Dh×D,+(XL+k)%D-……..(4―19)第1项第2项第3项其中,第1项为显示数据存储器的首地址,第2项为两个相邻行显示数据的起始 地址的差,第3项为输出一行显示数据在存储器中的连续排列的关系。 通过上面四步对数据的组织可以实现水平、垂直、上飞入、下飞入、等等一些效 果。图4.12和4.13均是通过上面的数据组织实现的显示效果示意图。¨iD Sw 。 二 1'■7I≯,,JI∽ Q U 一『1『l鏊溯夕mf.I¨)吣~二L|.,. 7 I!;=’ ■。。匿.;=!:矗珞:鹞盟^--!I◆H岸!¨2尔内容LED显示屏水平移动的显示效果图图4.1 2√77,■■(,弋卜㈧‘EA/t{j―叫■_?‰、||图4.13 LED显示屏飞入飞出的各种效果图▲■_ 西南交通大学硕士研究生学位论文第33页下面的程序是通过上面对LED显示屏的数据的组织,通过程序来实现上面部分的算法。通过下面的程序的测试,也说明了上面对LED显示屏数据组织的正确性,在一定程度上使算法得到了一定的优化。while(1){for(xo=o:XO<=Dw-Lw:X0++) for(k=O:k<Delay*20:k++)Di splay―Led―Screen(xo,O): for(k=O:k<Delay*10:k++) D i sp 1 ay―Led―Screen(Dw―Lw,O)://从左至右 ,/保持 //从上至下 ,,保持 //从右至左 ,,保持 //从下至上 ,,保持 ,/队上至右斜-F //保持 //从下至上 //保持 //从上至左斜-F //保持 //从下至上for(Y0=0:YO<=Dh-Lh:YO++) for(k=0:k<Delay*20:k++)Di sp l ay―Led―Screen(Dw―Lw,YO): for(k=O:k<Delay*20:k++) D i sp l ay―Led―Screen(Dw―Lw,Dh―Lh): for(X0=Dw―Lw:XO>=O:XO--)for(k=0:k<Delay*20:k++)D i sp lay_Led_Screen(xo,Dh-Lh):for(k=0:k<Delay*20:k++)splay―Led―Screen(O,Dh―Lh): for(YO=Dh―Lh:YO>=O:Y0一一)for(k=0:k<Delay*20:k++)Di splay―Led―Screen(0,Y0): for(k=O:k<Delay*20:k++) Di splay―Led―Screen(O,O):Difor(YO=O:Y0<Dh-Lh:Y0++) for(k=0:k<Delay*20:k++)Di splay_Led_Screen(4*YO,YO):for(k=0:k<Delay*20:k++)D i sp 1 ay―Led―Screen(Dw―Lw,Dh―Lh):for(YO=Dh―Lh:YO>=O:YO--)for(k=0:k<De lay*20:k++)Di sp l ay_Led..screen(Dw―Lw,YO): for(k=0:k<Delay*20:k++) Di splay―Led―Screen(Dw-Lw,O):for(YO=O:YO<Dh-Lh:YO++)for(k=0:k<De lay*20:k++)D i sp l ay_Led_Screen(Dw―I用一4*Y0,YO): for(k=0:k<De lay*20:k++) Di splay―Led―Screen(0,Dh―Lh): for(YO=Dh-Lh:YO>=O:YO--) for(k=0:k<Delay*20:k++) D i sp l ay―Led―Screen(O,YO): for(k=0:k<Delay*20:k++) Di splay―Led―Screen(0,O):,,保持)这个程序就是实现了LED显示屏从左至右、从上至下、从上至左斜下等一些显示效 果中。4.8本章小结本章首先对双色LED显示屏的数据进行组织,用同样的方法可以实现大屏幕的数 据组织;然后对其进行仿真和实物调试,证明了数据组织的正确性;最后在上面的基 础上对LED显示屏显示效果进行分析,同时研究其显示效果的算法,得出了一些比较 通用的显示效果算法。 西南交通大学硕士研究生学位论文第34页第5章系统软件设计整个系统的软件主要包括二个部分:微处理器控制软件和上位机应用软件。微处 理器控制软件主要完成系统初始化、下位机和上位机的通信和显示控制和处理器发送 的数据、刷新LED显示屏显示等;上位机程序用于人机交互,方便用户使用显示屏。 下面主要讲述汉字字库和ASCII码在LED显示中的处理及一些上位机软件。5.1微处理器程序总体框图微处理器是整个LED显示屏系统的核心,微处理器程序主要实现两大功能:一是更新LED显示屏显示内容,对FLASH存储器模块进行管理:二是实现上位机和下位 的通信。根据系统设计的需要,将微处理器程序划分为四个独立的模块:串口通信模 块、显示模块、FLASH管理模块和ASCII码和汉字字库的处理模块,如图5.1所示。 串口通信模块:实现串口的基本功能,接收上位机数据;显示模块:对需要显示的内 容进行数据的组织和处理:FLASH管理模块:主要实现外部FLASH的擦除、数据写 入等功能;汉字字库和ASCII码的处理模块:根据显示的内容对汉字和ASCII码进行显示或修改,可实现一次性全部显示,方便修改与编程。有些模块上面已经讨论过,下面主要程序算法的流程图、讨论LED显示对汉字及ASII码的处理和上位机软件。主程序I l串口通信I模块 显示模块IFLASH管理lASCII码和 汉字模块模块图5―1微处理器程序总体框图5.2微处理器程序总体软件设计图5.2是微处理的程序流程图,从图中可以看出在程序运行前,首先要对一些函 数进行初始化,Stm32ClockInit函数主要功能是初始化STM32的时钟,其中包括对向量表进行配置和一些相关的外设的复位进行配置,通过这些配置之后系统时钟可达 到72MHz;其次要对一些外设进行初始化,如串口、I/O口等进行初始化;为了可以 进行选择不同的模式,采用了按键来选择模式,通过按键可以选是时钟模式、温度模 式还是图文模式等;最后通过就是对各个模块函数进行调用显示,就可以实现不同的 显示模式。LED显示屏的显示的具体过程和流程图,可以参考第四章对64×16的LED 显示屏的处理,数据的组织原理的原理基本相同,因为大屏幕是由LED显示屏单元板 拼接而成的。 图5.2微处理器程序流程图下面主要给出4个程序,分别为:系统时钟初始化、I/O和串口初始化、SPI模块 初始化、串行Flash初始化,程序都经过visi02007编辑过。/捌喇嘲嘲材#系统时钟初始化函数树捌嘲喇脚陴_#/ /辩pll:if掸的倍频数.从2开始,最大值为16肄/void/树利喇喇中件抖{切始化10、串口L^RTl捌制喇脚件料捌嘲体料,(b)/#pclk2:PcLI(2时钟频率(硼z)Bound:波特宰#/voidSim32一Clock-Init(u8 PLL)//PLL参数用来倍频unsigned charUart―Init《u32 pclk2。u32 Bound)float temp; u16=antissa: u16 fraction:{ tmp--O; //复位并配置向量表 盯R伐一I)elnit 0:{Rcc一)CR=Ox00010000://外部Ij;li速时钟使能HSBON //RCC一>cR时钟配置寄存器.第17位为外部l铺速时钟就绪 while(!(Rcc一)CR)>17))://等待外部时钟就绪 //通过设置时钟配置寄存器8-10位来保证APBl时钟频率不超过36蛐2Rcc->CFGR=OX00000400://APBI=DIV2:APB2=DIVI;AHB=DIVI: PLL-=2;//抵ilj2个单位9―2 01ll PLL放大9倍 Rcc->ffGR=PLL<<18:Rcc?>CF6R:l<<16;temp=(float)(pclk2*1000000)/(Bound*16)://得蛩IUSAFrDIVmantissa=temp;ill,lea敢部分fraction=(temp-mntissa)*16;//得到小数部分lantissa<<:4: IlaDtissa+=fraction; RCC一>^PB2E诹:l((2: Rcc一>APB2刚R:l<<14:FLk涮->ACR=0x32;Rcc->CR=OxOl000000://设YPLL值2、16 //PLLSRC ON //FLASH 2个延时周期 //PLLON//使能PoRTA口时钟//使能串口时钟//通过时钟柠制寄存器的第24位.使能PLL while(!(RCC一>CR)>25))://通过判断寄存嚣的第25位.看一下PLL是否准备就绪GPIOA->CR眦=OXF阡FFOOF://清9。lO两位 GPl0^一>C洲:OX000008130;//10状态设置R(E一>APB2RSlll:l<<H://复位串口lRcc一>^PB2RsT雎:’(1<}

我要回帖

更多关于 led屏幕 的文章

更多推荐

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

点击添加站长微信