74hc595

周立功IMX287开发套件之数码管驱动(linux下74HC595多级串联驱动,数码管驱动)

怎甘沉沦 提交于 2020-02-09 14:19:49
疫情待在家里很无聊,发现吃土的开发板。好久好久没干linux相关开发了,还是在安美数字的时候干的linux网络应用和部分内核开发,现在忘得差不多了,试着捡起来吧。 硬件:如上图短接帽接法 软件:驱动下面直接贴出来(直接同时驱动四个断码比较水),应用层直接write就行 如果要四位显示不同数据需要改驱动和应用层,驱动增加数码管位使能,应用层需要一个单独进程一直跑显示,另一个传数据。我太懒了,就不写了! #include <linux/cdev.h> #include <linux/init.h> #include <linux/module.h> #include <mach/gpio.h> #include <asm/io.h> #include "mach/../../mx28_pins.h" #include <mach/pinctrl.h> #include "mach/mx28.h" #include <linux/fs.h> #include <linux/io.h> #include <asm/uaccess.h> #include <linux/miscdevice.h> #include <linux/irq.h> #include <linux/sched.h> #include <linux/interrupt.h> #include <linux/timer

74HC595 for STM32 源代码【worldsing笔记】

*爱你&永不变心* 提交于 2019-12-31 19:57:34
74HC595是硅结构的CMOS器件, 兼容低电压TTL电路,遵守 JEDEC 标准。 74HC595是具有8位 移位寄存器 和一个 存储器 ,三态输出功能。 移位寄存器和 存储器 是分别的时钟。 数据在SHcp(移位寄存器时钟输入)的上升沿输入到 移位寄存器 中,在STcp(存储器时钟输入)的上升沿输入到存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。 移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。 8位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。三态。 将串行输入的8位数字,转变为并行输出的8位数字,例如控制一个8位数码管,将不会有闪烁。 特点 8位串行输入 /8位串行或并行输出 存储状态寄存器,三种状态 输出寄存器(三态输出:就是具有高电平、低电平和高阻抗三种输出状态的门电路。)可以直接清除 100MHz的移位频率 输出能力 并行输出,总线驱动; 串行输出;标准中等规模集成电路 595移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。 参考数据

74HC595 8位移位寄存器的使用小结

最后都变了- 提交于 2019-12-06 05:37:05
上一篇文章已经讲到,电灯电路比较复杂,以少控多的方式,只能使用串行的方式,因此移位寄存器就发挥功能了。 学生时代,很少实际用过,只是理论学习,但是在项目中,真正用上了,的确要复习一番。 参考文章: https://blog.csdn.net/k1ang/article/details/80012686 此文有一个错误,数据搬运的地方,但值得参考。 http://www.51hei.com/bbs/dpj-152282-1.html 这个文章也不错 https://www.cnblogs.com/lulipro/p/5067835.html 这个也好 但是最后还是要根据自己的使用情况来分析。我使用的是ti的芯片,也可以参考Nexperia的文档,加深理解。 移位寄存器的基本原理是,串进并出,有锁存功能。 具体以芯片手册来分析。 左侧是ti的芯片封装,引脚排列; 右侧是Nexperia芯片封装,引脚排列的 下图是ti的芯片管脚说明: 0、QA-QH等同于Q1-Q7,8位并行输出端 1、SER数据输入端 2、SRCLK是移位用的时钟管脚,S代表shift,上升沿有效,和Nexperia的SHCP等同 3、RCLK是用的存储寄存器用的时钟管脚,上升沿有效,和Nexperia的STCP等同 4、Qh'(低9脚)用于串级,和下级的ser连接即可。和Nexperia的Q7S等同 5、OE输出是能

74HC595芯片使用及其驱动代码

妖精的绣舞 提交于 2019-12-02 23:32:59
功能:常用于拓展IO口,简单地说是一个串行输入并行输出的芯片,即数据从输入端每次串行输入(数据一位一位地从一个端口输出),等到8位时并行输出(数据从8个引脚同时输出)。 引脚功能: /* *--------------------------------------------------------------------------* *st_cp(12号引脚),上升沿时将数据移位 *sh_cp(11号引脚),上升沿时将数据输出 *OE(13号引脚),高电平时禁止输出,用一个引脚控制它可达到闪烁效果 *ds(14号引脚),数据串行输入口 *--------------------------------------------------------------------------* */ uchar send_byte(uchar n,uchar ds, bit st_cp, bit sh_cp) { uchar i=0; ds=n;//串行数据输入 st_cp=0;//输入存储器锁存时钟 sh_cp=0;//数据输入时钟 for(i=0;i<8;i++) { if(ds&0x01) ds=1; else ds=0; ds = ds >>1; st_cp=1;//上升沿,数据移位 st_cp=0;//拉低,等待下次上升沿使用 } sh_cp=1;//上升沿8位数据并行输出

LED显示行业之知识大全3

元气小坏坏 提交于 2019-11-27 14:58:21
最全的 LED 显示屏知识大全 你好,我叫毛华望, LED工程师。微信15889765314 。 六.显示板芯片简介 认识显示板元件工作原理也是对于组装和维修的基础 驱动芯片主要是74HC595 74HC245/244 74HC138 4953。 74HC245 的作用:信号功率放大 单元板/模组是由多块串接在一起的,而控制信号是比较弱的,在信号传递过程中需要将它的功率进行放大 第1脚DIR,为输入输出端口转换用,DIR=“1”高电平时信号由“A”端输入“B”端输出,DIR=“0”低电平时信号由“B”端输入“A”端输出。 第2~9脚“A”信号输入输出端,A1=B1、、、、、、A8=B8,A1与B1是一组,如果DIR=“1”G=“0”则A1输入B1输出,其它类同。如果DIR=“0”G=“0”则B1输入A1输出,其它类同。 第11~18脚“B”信号输入输出端,功能与“A”端一样,不再描述。 第19脚G,使能端,若该脚为“1”A/B端的信号将不导通,只有为“0”时A/B端才被启用,该脚也就是起到开关的作用。 第10脚GND,电源地。 第20脚VCC,电源正极。 74HC138 的作用:八位二进制译码器 74HC138的作用是用来选择显示行,一个74HC138可以选择8行中的一行,所以单元板/模块上有2块74HC138,这样就可以在16行中选择1行显示 第8脚GND,电源地。