以下是P10单元板(单色,1/4扫描,户外半户外)的实物图。

P10屏幕是店铺常用的点阵屏幕,像素32*16(可以级联很多块)。内部电路是74hc595或者是74hc595的替代芯片编码驱动芯片组合而成的,电压5v,适合51单片机的控制,控制原理很简单。它解决了电信相关专业学生以及电子爱好者玩单片机没有点阵屏幕的尴尬局面。这个屏幕也比较便宜,30元左右。
p10单元板的接口是12接口,就是它的那个简易牛角座上的16个引脚,画pcb的话,直接两排16脚的排针就行了。

一、引脚介绍

其中几个引脚是有用的,剩下的都没用。
1.有用的引脚:

  • a、b:行选,屏幕总共有4行,相当于数码管的位选,接上单片机,可以是00,01,11,10,可以自己随便设置一个数去试试
  • oe:使能,高电平它的全部灯会亮,低电平灭。
  • s:74hc595的时钟(上升沿,数据移动 )
  • l: 数据锁存( 上升沿数据移动,其实:时钟和锁存这个东西,知道不知道上升沿和下降沿其实无所谓,程序中无论你写成先0后1或者先1后0,你这个写法它既有上升沿又有下降沿,就相当于按按键,有按下,有抬起)
  • r: 数据引脚
  • 供电的接线端子:电源5v,需要接电源。

2.无用的引脚(不用接线。直接露着就行了)

  • c和d同样是行选,高2和3位,这种1/4扫描屏幕上,他没有用,置空即可。
  • n为空脚,也不用接任何的线路。电源的5v上的gnd已经接地了,所以不用考虑接地的问题。

二、基本使用

  1. 这个屏幕从引脚上就基本知道如何使用了,无非就是:使能芯片,选好行选。剩下的就是写74hc595的数据了。(在此不介绍74hc595的写入,不懂的可以先学习移位寄存器,锁存器,再去学一下595)
  2. 单块屏幕上有16块74hc595的级联。理论上它可以控制16×8= 128的灯的关断。(多块屏幕级联就是16×n的74hc595的级联,n表示屏幕数,就可以控制16×n×8的灯的关断)
  3. 但是屏幕有512个灯,它是怎么控制的呢?其实一个74hc595的一个输出上接了4个灯。就是74hc595写0(这个是0亮,1灭的逻辑),如果灯一段接595,另一端直接接电源,四个灯都会亮。屏幕但是没有这么做,它使用了数码管的位选的概念。ab引脚的作用就是位选:选择四个灯中,哪个灯亮,一个灯亮了,那么剩下的都是灭的。
  4. 因为行选的原因,你只能每次控制128个灯亮,所以造成的问题是每次你只能是128灯亮,怎么全部显示数据,那就要扫描,就是比如:你可以显示行1的128点0.01秒,完了再显示行2的128点0.01秒。再就是行3行4,最后回来,再显示行1,行2等等,循环的去显示,显示切换的速度很快,人看到的就是全屏幕亮了。
  5. 屏幕扫描方式在此不做介绍了,因为我觉得它的扫描方式有点不同寻常,不太好描述。感兴趣自己试试就知道了,比如:ab选00,写入16*8位的数据,然后显示一下你就知道了。简单说一下就是:00位选的情况下:16字节数据在0,4,8,12行上,且是竖着排布的。01就是1,5,9,13行。

三、问题与解决

  • 消隐问题:当74hc595有数据且它显示在第一行时,第一行,就会有128点的亮灭情况,这时候你把ab换成2时,第二行就会显示,第一行就会灭了。但是此时第二行显示的就是第一行的数据,就会产生重影,这种下一行显示上一行的数据的情况如果处理不当,显示效果将会很差劲。
    解决方法: 显示部分的编程逻辑:先要往74hc595上写数据,但是不锁存,写完后,oe置0,全屏熄灭。但是这时候换ab行选,再锁存数据,步骤完成后,oe打开。这时候屏幕成功消隐了。
    建议:消隐问题一定要去解决的,因为可能遇到的无论怎么编程,显示就是不正确原因就是显示重隐没有消除

四、编程疑虑

  • 当今,P10屏幕用的芯片现在大多不是74hc595,它只是用更廉价的芯片给替代了,但是它控制逻辑和74hc595的逻辑是通用,可以这么想,不能因为换了芯片之后,市面上大多数的led控制卡都不能用了吧,造屏幕的也不傻。
  • 本人买的P10屏幕,也不是74hc595,而是74hc595的拓展版芯片,一个芯片16个输出,相当于两块595的级联。所以大家大可不必担心屏幕芯片的问题。

51单片机驱动P10单元板相关推荐

  1. 基于51单片机驱动HC-SR04超声波模块(LCD1602显示)

    基于51单片机驱动HC-SR04超声波模块(LCD1602显示) 一.基本参数 二.通信时序 三.部分代码展示 四.实际效果 总结 一.基本参数 点击图片购买 HC- SR04+是一款宽电压工作的超声 ...

  2. 51单片机驱动HMI串口屏,串口屏的下载方式

    51单片机驱动HMI串口屏,串口屏的下载方式 串口屏 串口屏的程序下载 51程序 总结 串口屏 串口屏是一个集成了单片机的屏幕模块,采用的是TTL串口协议,可以直接通过对应指令控制屏幕, 本文采用的串 ...

  3. 基于51单片机驱动ADXL346 (LCD1602显示)

    基于51单片机驱动ADXL346 (LCD1602显示) 一.ADXL346传感器介绍 1.实物图 2.产品说明 3.电气参数 4.通信协议 二.驱动代码 1.引脚定义 2.初始化函数 3.主函数 三 ...

  4. linux开发板 pc 通讯_从51单片机到Linux 开发板运行hello world(教程4)

    大家好,我是兔子. 是一个嵌入式软硬件工程师. 正在从单片机开发转岗Linux开发. 这次教大家如何在Linux开发板上运行可执行文件. 简单起见,不涉及到硬件.直接和教程2一样,能在PC虚拟机上运行 ...

  5. c语言编程TLC2543AD采集,51单片机驱动12位AD转换TLC2543电路图+程序

    51单片机驱动12位AD转换TLC2543电路图+程序 2015-06-18 16:51:15   来源:51hei void resultvolt() { volt=volt*5000.0/4334 ...

  6. 51单片机驱动——LCD1602

    51单片机驱动--LCD1602 1.描述 51单片机控制LCD1602屏幕显示测量数据.固定字符串等,大家复制过去可以直接使用,相关注释我已标明. 2.子文件 LCD1602.c #include ...

  7. 用51单片机驱动蜂鸣器

    用51单片机驱动蜂鸣器 #include<reg51.h>//头文件 sbit BEEP=P1^5;//位定义P1的第五个端口为蜂鸣器 void delay() //延时函数 {unsig ...

  8. 51单片机驱动DS18B20温度传感器测量温度

    51单片机驱动DS18B20温度传感器测量温度 1.DS18B20温度传感器介绍: 2.51单片机驱动DS18B20测量温度 1.DS18B20温度传感器介绍: ①引脚定义 引脚 符号 说明 1 GN ...

  9. 使用51单片机驱动YM12232B型液晶显示屏

    这是一个使用51单片机驱动YM12232B 液晶显示器的例子,本人水平有限,仅供参考. 本实例中将使用51单片机控制YM12232B LCD分别在主窗口和副窗口中显示"科"和&qu ...

最新文章

  1. 环形动画加载视图AnimatedCircleLoadingView​​​​​​​
  2. mfc c语言 编辑器,语法高亮编辑控件Scintilla在MFC中的简单使用
  3. Python:list 和 array的对比以及转换时的注意事项
  4. android res
  5. Hyper-V + CentOS7 网络设置(视频教程)
  6. C#中 ??、 ?、 ?: 、?.、?[ ]、:
  7. Java作业-多线程
  8. 056 日志的正则式方式加载
  9. 情人节--我们依旧单身(制作属于自己的QQ拼音皮肤)(带全部ps素材)
  10. LeetCode热题100使用摩尔投票法的题目整理(待更)
  11. C++入门——Day5_分支语句和逻辑运算符
  12. 一个简易的基于内容的新闻推荐系统
  13. 02-网络为什么要分层
  14. STM8L051 同时使用RTC和USART通信
  15. Redis 初解缓存
  16. Python turtle 绘制彩色蟒蛇(有注释)
  17. Steam游戏如何回滚到旧版本
  18. 《大话数据结构》1、2数据结构、算法
  19. 学籍信息管理系统 c语言,c语言学籍信息管理系统设计
  20. 富文本编辑器实现微信公众号内容自动上传

热门文章

  1. oracle语句怎么查工作日,SQL查询工作日 - Oracle开发 - ITPUB论坛-中国专业的IT技术社区...
  2. 计算机网络水晶头博客,两台电脑组成局域网(交叉线)的水晶头制作详解
  3. python 合并工作簿_Excel:快速合并多张表格或多个文件(工作簿)的数据(附Python代码)...
  4. flash制作游戏_如何使用Flash制作简单的装扮游戏
  5. 在线阅读-阿里Java开发手册最强版本【泰山版】
  6. CSDN-markdown语法之怎样使用LaTeX语法编写数学公式
  7. unity3D 下雨效果实现
  8. AutoCAD2018_编辑工具
  9. 微信小程序接入第三方插件腾讯位置服务地图选点
  10. java-net-php-python-jsp网上拍卖系统计算机毕业设计程序