1、 MCU;LED Lattice Screen;Rf Wireless Transmission;RAM1 引言 12 总体设计方案 23 系统硬件电路设计 33.1 核心器件介绍 33.1.1 STC89C51系列单片机介绍 33.1.2 CC1100无线模块介绍 83.1.3 点阵显示屏芯片介绍 103.2 控制板电路设计 123.2.1 控制板原理 123.2.2 外部扩展板的设计 143.3点阵显示屏模块设计 153.3.1 控制板原理 153.3.2 行驱动电路设计 163.3.3 点阵显示屏原理图设计 183.4 电路板焊接 194 系统软件设计 204.1软件开发平台及开发语言介
2、绍 204.1.1 Visual Basic 6.0开发平台 204.1.2 Keil uVision4开发平台 214.2 上位机管理系统程序设计 224.2.1 系统概要设计 224.2.2 软件详细设计 224.3 下位机无线收发模块程序设计 244.3.1 无线发射模块程序设计 244.3.2 无线接收模块程序设计 275 PCB板的设计与实现 285.1 Protel 99SE介绍 285.2 PCB设计主要步骤 285.3 LED屏PCB设计与实现 305.4 PCB板设计注意事项 336 系统软硬件调试 346.1 STC-ISP程序下载器介绍 346.2上位机发射界面调试 35
3、6.3下位机接收部分调试 357 结论 378 谢辞 38参考文献 39附录 40附录1总电路图 40附录2 VB界面程序 41附录3发送端程序 48附录4接收端程序 65附录5 器件清单 89外文资料 901 引言LED点阵屏是由发光二极管按规律排列所组成的点阵显示屏幕,它可用来显示字符、图案等信息,具有可靠性高、使用寿命长、环境适应能力强、性能价格比高等特点,因此在信息显示领域得到了广泛应用。在大型商场、车站、码头、地铁站以及各类办事窗口等越来越多的场所需要用LED点阵显示图形和汉字。LED行业已成为一个快速发展的新兴产业,市场空间巨大,前景广阔。随着信息产业的高速发展,LED显示作为信息
4、传播的一种重要手段,已广泛应用于室内外需要进行服务内容和服务宗旨宣传的公众场所,例如户内外公共场所广告宣传、机场车站旅客引导信息、公交车辆报站系统、证券与银行信息显示、餐馆报价信息豆示、高速公路可变情报板、体育场馆比赛转播、楼宇灯饰、交通信号灯、景观照明等。显然,LED显示已成为城市亮化、现代化和信息化社会的一个重要标志。LED点阵显示根据应用领域和要求不同可以分为很多种。常见的是采用单片机为控制核心的LED点阵显示,显示的数据预先存储在ROM中,当程序运行时,单片机负责依序将ROM中存储的数据进行读取、传输和显示1。这种方式优点在于廉价、现实简单,适用于显示字符少或显示画面不大的场合,并且很
5、少更改显示内容。但是当显示画面大,显示内容多且较复杂,光靠单片机处理不过来,或者希望能随时改变显示内容或画面时不方便,局限性很大。并且目前多采用有线数据传输方式的LED点阵屏幕安装和更换位置不便,而采用公用无线收费网络的方式费用较高。目前,生活中常见的LED显示屏都是采用单片机为控制核心,显示的数据预先存储在ROM中,当程序运行时,单片机负责依序将ROM中存储的数据进行读取、传输和显示。这种方式优点在于廉价、现实简单,适用于显示字符较少并且很少更改显示内容的情况。当显示画面大,显示内容多且较复杂,光靠单片机处理不过来,或者希望能随时改变显示内容或画面时不方便,局限性很大。针对以上不足,本设计研
6、究了由PC来控制点阵屏显示信息,基于射频无线通信技术传输信息的点阵屏显示系统。本设计除了具有让LED显示终端进行文本显示的基本功能外,还区别于传统的有线方式传输显示信息,可以通过射频无线通信技术传输数据,解决了不能随时更改显示内容的问题,在成本增加不多的情况下解决了安装和更改位置不方便的问题,提高可移动性,也符合嵌入式系统应用的未来发展方向。2 系统总体设计方案通过对基于射频无线通信的点阵显示屏的分析,本设计所研究的无线LED点阵屏分为上位机和下位机两大部分。上位机PC端负责显示信息的输入,用VB语言编写软件界面,制作一个可以输入显示信息并一键发送的可视化界面。当输入文字信息后按确定发送键,V
7、B将显示信息通过串口和无线发射模块发送出去。下位机以STC89C51单片机为主控芯片,用于显示信息的接收和显示,CC1100模块接收上位机传输的显示信息,通过单片机在点阵屏上显示。整个设计根据功能分为上位PC机管理模块、无线发射模块、无线接收模块、LED点阵显示模块组成,工作流程如图2-1所示。上位机PC端用Visual Basic语言编写软件界面,用户可以直接输入显示信息,并确认发送显示。显示信息数据通过串口通信传送到单片机,并通过无线发射模块CC1100发射出去,上位机管理模块是用户和该系统进行交流的平台。下位机CC1100模块接收数据后通过单片机把数据存储到RAM中,并显示的点阵显示屏上
8、。无线发射模块和无线接收模块采用CC1100无线射频通信模块,这是一款集FSKASKOOKMSK支持实现信息包处理、数据缓冲、群发射、空闲信道评估、链接质量指示和无线唤醒等多种功能为一体的高性能模块,它可以采用曼彻斯特编码进行调制解调它的数据流,能降低误码率。LED点阵显示模块采用1664像素LED点阵屏,能清晰的呈现各种汉字和符号,它由1024个发光二极管排列组合而成,抗冲击和抗震性能好,可靠性高,寿命长的特点,广泛应用于各领域。3 系统硬件电路设计3.1核心器件介绍3.1.1 STC89C51系列单片机介绍单片机是指一个集成在一块芯片上的完整计算机系统,它集成了中央处理单元(MCU)、存储
9、器(RAMROM)和各种IO接口,具有一个完整计算机所需要的大部分部件。本程序用到的单片机是STC89C51,它是标准的40引脚双列直插式集成电路芯片,引脚如图3-1所示。1.单片机各引脚功能介绍:(1)电源引脚电源引脚接入单片机的工作电源Vcc(40引脚):接+5V电源。Vss(20引脚):接地。(2)时钟引脚XTAL1和XTAL2 外接晶振引脚。当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号2。(3)控制引脚RST(9引脚):复位信号输入端,当输入的信号连续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作,当复位后程序计数
10、器PC=0000H,即复位后将从程序存储器的0000H单元读取第一条指令码。在单片机正常工作时,此引脚应为0.5V的低电平。Vpp(31引脚)外部程序存储器访问允许控制端,当为高电平时,单片机读片内程序存储器(4KB Flash存储器),但在PC值超过0FFH时,将自动转向外部程序存储器中的程序。当Vpp引脚为低电平时,对程序存储器的读操作只限定在外部程序存储器,地址为0000H-FFFFH,片内的4KB Flash程序存储器不起作用。Vpp为该引脚的第二功能,为编程电压输入端。对于89C52系列单片机,在对片内Flash固化编程时,加在Vpp引脚的编程电压为+5V或+12V。PROG(30引
11、脚)为低8位地址锁存允许信号,在系统扩展时,的负跳沿用于控制把P0口的输出低8位地址送锁存器锁存起来,然后P0口再作为数据端口,以实现低位地址和数据的隔离,形成分时复用。是高电平时,允许地址锁存信号,当访问外部存储器时,信号负跳变(即由正变负)将P0口上低8位地址信号送入锁存器3。此外,单片机在运行时,端一直有正脉冲信号输出,此频率为时钟振荡器频率fosc的16,(即6分频)。该正脉冲信号可作为时钟源或定时信号使用。但是要注意,每当89C51访问外部RAM时,要丢失一个脉冲。此时严格意义来说,用户不宜用作为精确的时钟源或定时信号。PROG为该引脚的第二功能,在对片内Flash存储器编程时,此引
12、脚为编程脉冲的输入端(29引脚)为外部程序存储器读选通信号,在单片机读外部ROM时,此引脚输出脉冲的负跳沿作为读外部程序存储器的选通信号。此引脚接外部程序存储器的OE(输出允许)端,在访问外部RAM时,信号无效。归纳起来为可以分为以下几种情况:内部ROM读取时,PSEN不动作;外部ROM读取时,在每个机器周期会动作两次;外部RAM读取时,两个PSEN脉冲被跳过不会输出;外接ROM时,与ROM的OE脚相接。(4)P0口为单片机的引脚32引脚39,是漏极开路的双向IO口,有两个功能:当P0口用作地址数据复用口时,相当于一个真正的双向口,用作与外部存储器的连接,输出低八位地址和输入输出八位数据;当P
13、0口用作通用IO口时,由于需要片外接上拉电阻,端口不存在高阻抗状态,为一个准双向口,为保证引脚信号的正确读入,应首先向锁存器写入1。单片机复位后,锁存器被置1;当P0口由原来的输出状态转变为输入状态时,应首先置锁存器为1,方可执行输入操作。(5)P1口为单片机的引脚1引脚8,是专为用户使用的准双向IO口,其内部有上拉电阻,可作为普通的IO输入时,应先向端口的输出锁存器写入1。P1口可驱动4个LS型TTL负载。(6)P2口为单片机的引脚21引脚28,为一个内部上拉电阻的8位双向IO口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为
14、输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址”1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。(7)P3口为单片机的引脚10引脚17,是8个带内部上拉电阻的双向IO口,有两个功能,作为准双向IO使用,其内部有上拉电阻,还可以提供第二功能,由特殊寄存器来设置。P3口的第二功能如表3-1所示。表3-1 P3口的第二功能信道位第二功能说明P3.0RXD串行口的输出P3.
15、1TXD串行口的输入P3.2外部中断0的中断请求输入P3.3外部中断1的中断请求输入P3.4T0计数器0的计数输入P3.5T1计数器1的计数输入P3.6外部数据存储器的写选通信号P3.7外部数据存储器的读选通信号2.单片机最小系统电路介绍(1)时钟电路89C51单片机各功能部件的运行都以时钟控制信号为基准,有条不紊地一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响到单片机系统的稳定性。STC89C51内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路如图3-2 (a)
16、 所示,在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.212MHz之间选择,电容值在530pF之间选择,电容值的大小可对频率起微调的作用4。外部方式的时钟电路如图3-2(b)所示,RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。(a)内部方式时钟电路 (b)外部方式时钟电路图3-2时钟电路(2)复位及复位电路复位是单片机的初始化操作。其主要功能是把PC初始化为0000
17、H,使单片机从0000H单元开始执行程序。当由于程序运行出错或操作错误使系统处于死锁状态时,需按复位键重新启动。除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表3-2所示。表3-2 一些寄存器的复位状态寄存器复位状态PC0000HTCON00HACCTL0PSWTH0SP07HTL1DPTRTH1P0-P3FFHSCONIPXX000000BSBUF不定IE0X000000BPCON0XXX0000BTMODRST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。若使用颇率为6MHz的晶振,则复位信号持续时间应超过4us才能完成
18、复位操作。产生复位信号的电路逻辑如图3-3所示。图3-3复位信号的电路逻辑图复位操作有上电自动复位相按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图3-4(a)所示。这佯,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。这时时钟频率选用6MHz,电容取22uF,电阻R取1K。按键手动复位有电平方式和脉冲方式两种。电平复位是通过RST端经电阻与电源Vcc接通来实现。其中,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的,其电路如图3-4(b)所示;而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的,其电
19、路如图3-4(c)所示。(a)上电复位 (b)按键电平复位 (c)按键脉冲复位图3-4复位电路上述电路图中的电阻、电容参数适用于6MHz晶振,能保证复位信号高电平持续时间大于2个机器周期。本系统的复位电路采用图3-4(a)上电复位方式。89C51单片机功能如表3-3所示。表3-3 STC89C51主要功能主要功能特性性能介绍兼容MCS51指令系统8K可反复擦写Flash ROM32个双向IO口256x8bit内部RAM3个16位可编程定时计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功
20、能3.1.2 CC1100无线模块介绍这是一款由美国TI公司的CC1100无线收发设计的一款高性能433M无线收发模块,设计旨在用于极低功耗RF应用。其主要针对工业、科研和医疗以及470-510MHz和950-960MHz频带的短距离无线通信设备。它特别适用于那些针对日本ARIB STD-T96标准和中国470-510MHz短距离通信设备的无线应用。CC1100可支持固定数据包长度协议和可变数据包长度协议。可变或固定数据包长度模式可用于长达255字节的数据包。对更长的数据包而言,必须使用无长度限制的数据包模式。在可变数据包长度模式下,通过同步字后面的第一个字节来配置数据包长度。数据包长度被定义
21、为有效负载数据,但不包括长度字节和可选CRC。CC1100支持三种不同类型的数据包过滤:地址滤波,最大长度滤波和CRC滤波,最大限制的避免了错误代码的接收。CC1100无线模块采用GFSK调制,工作在433.05-434.79M的国际通用ISM频段,最高调制速率可达500KBPS。基于SPI接口方式,最少只需5个IO口即可,很方便于各种MCU连接5。管脚定义如表3-4所示。表3-4 CC1100模块引脚表管脚次序管脚定义功能描述13.3V电源输入(方形焊盘)2SISPI输入3SCKSPI时钟4SOSPI输出5GDO2通用数据输出26GND接地7GDO0通用数据输出08CSNSPI使能模块大小4
22、0mm19mm,2.0mm间距的双排插针接口(注意:万能版的孔间距为2.54mm,模块的引脚间距为2.00mm,需要使用2.54mm转2.00mm的杜邦线才能连接),使用外置弹簧天线设计,开阔地100K速率下,收发10个字节的数据量测试距离最远约300米左右。CC1100性能优势明显,归纳为以下几点:(1)工作频率 433M 符合国际通用ISM法规, 430-464M宽频工作,满足多点通信和跳频通信需要。(1)支持2FS, GFS 和MSK调制方式。(2)内置硬件CRC校验和点对多点通讯地址控制。(3)快速启动时间,从休眠到RX或TX状态 240uS。(4)内置硬件CRC校验和点对多点通讯地址
23、控制。(5)低功耗,休眠状态时,电流仅为0.1uA。(6)模块所有的IO口均加隔离电阻保护,静电防护和抗干扰能力更好。CC1100属于高精度器件,使用时要格外注意,具体注意事项可以归纳为以下几点:(1)静电:无线模块为静电敏感器件,使用时请注意静电防护,特别是在干燥的冬季 尽量不用收去触摸模块上的器件,以免造成不必要的损坏。(2)电源:无线模块推荐使用纹波小的直流电源,工作电压建议在3.3V工作。模块的接地要稳定可靠,地线尽量靠近电源总地。如使用开关电源的话,一定要加强退藕,以免开关电源的纹波和尖峰脉冲影响模块的工作特性。(3)单片机:如果模块工作在3.3V时,不考虑低功耗的话,可以直接和5V单片机系统连接,如果是连51系列的单片机P0口的话,请加10K的上拉电阻。另模块的SPI 速率最高能支持到10M,一般建议在1M或几百K的SPI速率即可。(4)测试:模块采用外置弹簧天线,此天线容易受外部线路影响,使用时,此天线底下和周围请不要走线路或摆放器件,可以的话最好完全悬空。对433M,各种材质均有一定的影响,一般的塑料影响不大,如有金属物体会产生比较明显的影响,此时建议使用SMA馈线来外接SMA天线。有关模块使用的芯片详细规格请参考TI公司的CC1101的DATASHEET。CC
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1