收藏 分享(赏)

MAX7219中文资料-附有程序.pdf

上传人:weiwoduzun 文档编号:3262290 上传时间:2018-10-09 格式:PDF 页数:5 大小:384.62KB
下载 相关 举报
MAX7219中文资料-附有程序.pdf_第1页
第1页 / 共5页
MAX7219中文资料-附有程序.pdf_第2页
第2页 / 共5页
MAX7219中文资料-附有程序.pdf_第3页
第3页 / 共5页
MAX7219中文资料-附有程序.pdf_第4页
第4页 / 共5页
MAX7219中文资料-附有程序.pdf_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、M A X 7 2 1 9 是 M A X IM 公司生产 的串行输入 /输出共阴极数码管显示驱动芯片 , 一片 M A X 7 2 1 9 可驱动 8 个 7 段 ( 包括小数 点共 8 段 )数字 L E D 、 L E D 条线图形显示 器 、 或 6 4 个分立 的 L E D 发光二级管 。 该芯片具有 1 0 M H z 传 输率的三线串行接口可与任何微处理器相连 ,只需一个外接电阻即可设置所有 L E D 的段电流 。 。 它的操作 很简单 , M CU 只需通过模拟 S P I 三线接口就可以将相关的指令写入 M A X 7 2 19 的内部指令和数据寄存器 , 同时它还允许用

2、户选择多种译码方式和译码位 。 此外它还支持多片 7 2 1 9 串联方式 , 这 样 M CU 就可以通过 3根线 ( 即串行数据线 、 串行时 钟线和芯片选通线 ) 控制更多的数码管显示 。 M A X 7 2 1 9 的外 部引脚分配如图 1 所示及内部 结构如图 2 所示 。 图 1 M A X 7219 的外部引脚分配 图 2 M A X 7219 的内部引脚分配 各引脚的功能为 : D IN : 串行数据输入端 D O U T : 串行数据输出端 , 用 于级连扩展 L O A D : 装载数据输入 CL K : 串行时钟输入 D IG 0 D I G 7 : 8 位 L E D

3、位选线 , 从共阴极 L E D 中吸入电流 S E G A S E G G D P 7 段驱 动和小数点驱动 IS E T : 通过一个 1 0 k 电阻和 V c c 相连 , 设置段电流 M A X 7 2 1 9 有下列几组寄存器 : ( 如图 3 ) M A X 7 2 1 9 内部的寄存器如图 3 , 主要有 : 译码控制寄存器 、 亮度控制寄存器 、 扫描界限寄存器 、 关断模式寄存器 、 测试控制寄存器 。编程时只有正确操作这些寄存器 , M A X 7 2 1 9 才可工作 。 图 3 M A X 7 2 1 9 内部的相关寄 存器 分别介绍如下 : ( ) 译码控制寄存器

4、( X 9 H ) 如图 4 所示 , M A X 7 2 1 9 有两种 译码方式 : B 译码方式和不译码方式 。 当选择不译码时 , 8 个数据为分别一一对应 7 个段和 小数点位 ; B 译码方式是 BCD 译码 , 直接送数据就可以显示 。 实际应用中可以按位设置选择 B 译码或是不译码方式 。图 4 MA X 7219 的译码控制寄存器 ( ) 扫描界限寄存器 ( X BH ) 如图 5 所示 , 此寄存器用于设 置显示的 L E D 的个数 ( 1 8 ) , 比如当设置为 0 x X 4 时 , L E D 0 5 显示 。 图 5 M A X 7219 的扫描界限控制寄存器

5、( ) 亮度控制寄存器 ( X A H ) 共有 1 6 级可选择 , 用于设 置 L E D 的显示亮度 , 从 0 x X 0 0 x X F ( ) 关断模式寄存器 ( X CH ) 共有两种模式选择 , 一是关断状态 ,( 最低位 D 0 = 0 ) 一是 正常工作状态 ( D 0 = 1 )。 ( ) 显示测试寄存器 ( X F H ) 用于设置 L E D 是测试状态还是正常工作状态 , 当测试状态时 ( 最低位 D 0 = 1 ) 各位显示全 亮 , 正常工作状态 (D 0 = 0 ) 。 各寄存器具体操作见驱动程序详解 。 2 读写时序说明 M A X 7 1 2 9 是 S

6、P I 总线驱动方式 。 它不仅要向寄存器写入控制字 , 还需要读取相应寄存器的数据 。 要想与 M A X 7 1 2 9 通信 , 首先要先了解 M A X 7 1 2 9 的控 制 字 。 M A X 7 1 2 9 的控制字格式 如图 6 。 图 6 控制字 ( 即地址及命令字节 ) 如图 , 工作时 , M A X 7 2 1 9 规定 一次接收 1 6 位数据 , 在接收 的 1 6 位数据中 : D 1 5 D 1 2 可 以与操作无关 , 可以任意写入 , D 1 1 D 8 决定所选通的内部寄存器地址 , D 7 D 0 为待显示数据或是初始化控 制字 。 在 CL K 脉

7、冲作用下 , D IN 的数据以串行方式依次移入内部 1 6 位寄存器 , 然后在一个 L O A D 上升沿 作用下 , 锁存到内部的寄存器中 。 注意在接收时 , 先接收最高位 D 1 6 , 最后是 D 0 , 因此 , 在程序发送时必须先送高位数据 , 在循环移位 。 工作时序图见图 7 。 由于 5 1 是 8 位单片机故需要分 两次来送数据 。 具体操作见驱动程序详解 。 图 7 数据读写时序 3 电路原理图 电路原理图 电路原理图如图 , M A X 7 2 1 9 与单片机的连接只需要 3 条线 : L O A D ( CS ) 片选引脚 、 CL K 串行时钟引脚 、 D I

8、N 串行数据引脚 。 其中 C1 为电源滤波电容 , R 1 用来设置段电流 。 M A X 7 2 1 9 的 P CB 布线有些难度 , 作者可以 提供画好的 P CB 给读者 。 有需要的读者请与作者联系 。 邮箱 : z h a o l i a n g _ 0 8 0 1 d l . c n 图 8 电路原理图 4 驱动程序 / /管脚定义 s b i t L O A D = P 1 2 ; / / M A X 7 2 1 9 片选 1 2 脚 s b i t D IN = P 1 1 ; / / M A X 7 2 1 9 串行数据 1 脚 s b i t CL K = P 1 0

9、; / / M A X 7 2 1 9 串行时钟 1 3 脚 / /寄存器宏定义 # d e f i n e D E CO D E _ M O D E 0 x 0 9 / /译码控制寄存器 # d e f i n e IN T E N S IT Y 0 x 0 A / /亮度控制寄存器 # d e f i n e S CA N _ L IM IT 0 x 0 B / /扫描界限寄存器 # d e f i n e S H U T _ D O W N 0 x 0 C / /关断模式寄存器 # d e f i n e D IS P L A Y _ T E S T 0 x 0 F / /测试控制寄存器

10、 / /函数声明 v o i d W ri t e 7 2 1 9 ( u n s i g n e d c h a r a d d re s s , u n s i g n e d c h a r d a t ); v o i d I n i t i a l (v o i d ); / /地址 、 数据发送子程序 v o i d W ri t e 7 2 1 9 ( u n s i g n e d c h a r a d d re s s , u n s i g n e d c h a r d a t ) u n s i g n e d c h a r i ; L O A D = 0 ; /

11、/拉低片选线 , 选中器件 / /发送地址 f o r (i = 0 ; i 8 ; i + + ) / /移位 循环 8 次 CL K = 0 ; / /清零时钟总 线 D IN = (b i t ) (a d d re s s / /每次取高字节 a d d re s s = 1 ; / /左 移一位 CL K = 1 ; / /时钟上升沿 , 发送地址 / /发送数据 f o r (i = 0 ; i 8 ; i + + ) CL K = 0 ; D IN = (b i t ) (d a t d a t = 1 ; CL K = 1 ; / /时钟上升沿 , 发送数据 L O A D =

12、 1 ; / /发送结束 , 上 升沿锁存数据 / / M A X 7 2 1 9 初始化 , 设置 M A X 7 2 1 9 内部的控制寄存器 v o i d I n i t i a l (v o i d ) W ri t e 7 2 1 9 (S H U T _ D O W N , 0 x 0 1 ); / /开启正常工作模 式 ( 0 x X 1 ) W ri t e 7 2 1 9 (D IS P L A Y _ T E S T , 0 x 0 0 ); / /选择工作模式 ( 0 x X 0 ) W ri t e 7 2 1 9 (D E CO D E _ M O D E , 0

13、x ff ); / /选用全译码模式 W ri t e 7 2 1 9 (S CA N _ L IM IT , 0 x 0 7 ); / / 8 只 L E D 全用 W ri t e 7 2 1 9 (IN T E N S IT Y , 0 x 0 4 ); / /设置初始亮度 测试程序 v o i d m a i n (v o i d ) u n s i g n e d c h a r i ; I n i t i a l (); / / M A X 7 2 1 9 初始化 w h i l e (1 ) f o r(i = 1 ; i 9 ; i + + ) W ri t e 7 2 1 9 (i , i ); / /数码 管显示 1 8 典型应用电路 :

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报