- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PIC单片机控制点阵LED显示技术的研究
PIC单片机控制点阵LED显示技术的研究
[摘要]LED显示技术在工业仪表中应用十分广泛,它能直观地显示运行系统的实时状态。同时PIC单片机由于功能强,成本低的优势在各种仪表中应用广泛。对PIC单片机控制点阵LED显示技术进行研究。
[关键词]PIC单片机 LED 控制
中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)1020060-01
一、点阵LED的结构
使用的LED为14*15点阵,由六片7*5点阵LED拼接而成,先分别用三片LED横向组成两个7*15点阵,再用两个7*15上下排列,组成需要的14*15点阵。当某一个LED所在的行驱动为低,列驱动为高时,这个发光管被点亮。
二、静态显示电路的构成
74LS164为TTL单向8位移位寄存器,可实现串行输入,并行输出。其中A、B(第1、2脚)为串行数据输入端,2个引脚按逻辑与运算规律输入信号,共一个输入信号时可并接。CLK(第8脚)为时钟输入端,可连接到串行口的同步时钟输出端。每一个时钟信号的上升沿加到CLK端时,移位寄存器移一位,8个时钟脉冲过后,8位二进制数全部移入74LS164中。在给出了8个脉冲后,最先进入74LS164的第一个数据到达了最高位,再来一个脉冲,第一个脉冲就会从最高位移出。4片74LS164首尾相串,而时钟端则接在一起。
只要我们对每片LED上7位行驱动中的一位输入低电平,这行中相应列驱动为高的点就会被点亮。如此反复向每一行送入低电平,同时在相应的行被选中时,在列送入相应的数据,并反复的扫描,由于人眼存在视觉暂留效应就可以看到预期的画面信息。
三、编码方式
编码方式是由硬件设计方式决定的。因为送入下排三个LED中最后一片最后一位的列驱动是最先进入74LS164的数据,所以字模的编码顺序和在LED显示顺序正好相反。而且PIC16F877做串行输出时,串行输出寄存器SSPBUF中的8位数据的最高位是最先送出的,所以每行8个点是右面为高位,左面为低进行编码。后面的类推,要显示一个完整的14*15点阵共需要28组的8位2进制字模数据。
四、PIC16F877与LED电路的连接
PIC16F877中提供了两个串行通信模块,分别是同步串行口和通用同步异步接收发送器。其中MSSP模块又提供了两种工作方式,一种是串行外围接口(SPI),另一个工作方式是芯片间通信总线(IIC)。SSP模块主要用于单片机和其他外围接口或微处理器芯片间的串行通信,像串行EEPROM、显示控制器、模拟数字转换器等,都属于电路板上众多器件间的串行通信接口。USART则属于和电路板外部设备串行通信的接口,简单地说就是RS232接口,可以与PC通信。所以,我们选择SPI同步串行通信方式送入行选编码。SPI工作方式提供8位数据的传输,SCK引脚上的时钟速度决定数据的传输速度。在连接的器件中,由主控器件来产生时钟,其他器件以此外界的时钟为标准。因此在使用SPI方式时,必须确定那个器件为主控器件,其它则为从控器件。本电路使用PIC16F877作为主控器件,SSP模块工作在主控方式下。SCK引脚的时钟由单片机自己产生,因此可以在任何时候数据的传送,传送在有写入SSPBUF缓冲器的动作时开始,我们用SCK引脚输出串行输出同步时钟。本电路中的SPI模块中用来输入出数据,那么SDI引脚可以关掉不用,这时SSBUF寄存器里的内容全根据设定的时钟一位的由SDO引脚移出。在设置使用MSSP模块的SPI工作方式前第一件事是初始化MSSP模块,SSPCON寄存器包含了要设置的相关位,在设置完成后,置MSSP模式使能位SSPEN,便可以开始SPI方式的工作。同时,要复位SSP模块,只要先将SSPEN位清除0,然后重新设置SSPCON,再将SSPEN设置为1就可以。设定好SSPCON就相当于设定了SDO,SCK,SDI,SS 为串行通信用的引脚,因此除了SSPCON寄存器的设置外,对SPI工作方式用到的引脚也要设置。SDO和SCK为输出引脚,因此TRISC和TRISC必须清零。
PORTD端口寄存器读出的是相应的I/O引脚上的电平状态,而写PORTD
端口寄存器则是写入其数据锁存器。另外,D端口还可以作为并行从动端口与单片机总线接口。这里,我们使用它的8 位并行数据输出功能,作为7位并行行选信号和一位使能信号的输出。
五、程序的编写
程序各模块功能说明:
INITIAL:初始化模块。设置串行口工作方式为SPI主动方式;RC3,RC5引脚为输出;SSPBUF寄存器在时钟上升沿送出数据;串行同步时钟为单片机内部时钟的四分
文档评论(0)