msp430驱动74hc595程序电路I2C串行通信.docx

上传人:scccc 文档编号:14768599 上传时间:2022-02-19 格式:DOCX 页数:18 大小:105.63KB
返回 下载 相关 举报
msp430驱动74hc595程序电路I2C串行通信.docx_第1页
第1页 / 共18页
msp430驱动74hc595程序电路I2C串行通信.docx_第2页
第2页 / 共18页
msp430驱动74hc595程序电路I2C串行通信.docx_第3页
第3页 / 共18页
msp430驱动74hc595程序电路I2C串行通信.docx_第4页
第4页 / 共18页
msp430驱动74hc595程序电路I2C串行通信.docx_第5页
第5页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《msp430驱动74hc595程序电路I2C串行通信.docx》由会员分享,可在线阅读,更多相关《msp430驱动74hc595程序电路I2C串行通信.docx(18页珍藏版)》请在三一文库上搜索。

1、msp430驱动74hc595(程序+电路)I2C串行#include "msp430G2553.h"inttab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;int temp;/ 毫秒延迟函数void delay(int ms)int i;while(ms-)for(i=0;i;=0;k-)temp1=1;15) time -=30;P2OUT |=BIT3;delay(time);P2OUT &=BIT3;delay(20);C13OpFC23opfC3U

2、1CRYSTAL TF19XTAL2RST10k iKP3.7WTggcsij11 TDS14 5712 vTJjVacIQa1严11;网4丄.I12807D3S:i:jASH CPDS如Q1Gt2T_CPQ33G508MR何OEQ7111174HC595ST12*亠 Vat Ob-.心飓Be#include&qu ot;reg51.h &qu ot;sbit DS_595= P1A0;sbit CT_595= PM1;sbit CH_595= PM2;inttab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39

3、,0x5e,0x79,0x71;int temp;void delay(int ms)int i;while(ms-)for(i=0;i;=0;k-)temp1=1串行通信时钟程序#include"reg51.h"sbit DS_595= P1A0;sbit CT_595= PM1;sbit CH_595= P1A2;sbit POT =P1A3;inttab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;int temp;void delay(int ms)

4、int i; while(ms-)for(i=0;i;=0;k-)temp1=1;QB-;QC-;.-;QH;下降沿移位寄存器数据不变。(脉冲宽度: 5V 时,大于几十纳秒就行了。 我通常都选微秒级)RCK(12脚):上升沿时移位寄存器的数据进入数据存储 寄存器,下降沿时存储寄存器数据不变。 ( 通常我将 RCK 置为低电平,)当移位结束后,在 RCK端产生一个正脉 冲(5V时,大于几十纳秒就行了。我通常都选微秒级),更新显示数据。/G(13 脚): 高电平时禁止输出(高阻态)。如果单片机 的引脚不紧张,用一个引脚控制它,可以方便地产生闪 烁和熄灭效果。比通过数据端移位控制要省时省力。注:1)

5、74164 和 74595 功能相仿,都是 8 位串行输入转并行输 出移位寄存器。74164的驱动电流(25mA)比74595(35mA) 的要小 ,14 脚封装,体积也小一些。2)74595 的主要优点是具有数据存储寄存器,在移位的 过程中,输出端的数据可以保持不变。这在串行速度慢 的场合很有用处,数码管没有闪烁感。与 164只有数据清零端相比, 595还多有输出端时能 /禁 止控制端,可以使输出为高阻态。3)595 是串入并出带有锁存功能移位寄存器,它的使用方法很简单,在正常使用时 SCLF为高电平,G为低电平。 从SEF每输入一位数据,串行输 595是串入并出带有锁存 功能移位寄存器,它

6、的使用方法很简单,如下面的真值 表,在正常使用时 SCLR为高电平,G为低电平。从 SER 每输入一位数据,串行输入时钟SCK上升沿有效一次,直到八位数据输入完毕,输出时钟上升沿有效一次,此 时,输入的数据就被送到了输出端。入时钟SCK上升沿有效一次,直到八位数据输入完毕,输出时钟上升沿有 效一次,此时,输入的数据就被送到了输出端。其实,看了这么多 595的资料,觉得没什么难的 ,关键 是看懂其时序图 ,说到底,就是下面三步 (引用):第一步:目的:将要准备输入的位数据移入74HC595数据输入端上。方法:送位数据到 P1.0 。第二步:目的:将位数据逐位移入74HC595即数据串入方法: P

7、1.2 产生一上升沿,将 P1.0 上的数据移入74HC595中.从低到高。第三步:目的:并行输出数据。即数据并出方法: P1.1 产生一上升沿,将由 P1.0 上已移入数据 寄存器中的数据送入到输出锁存器。说明: 从上可分析:从 P1.2 产生一上升沿 (移入数 据)和 P1.1 产生一上升沿(输出数据) 是二个独立过程,实际应用时互不干扰。 即可输出数据的同时移入数据。 而具体编程方法为女口: RO中存放3FH,LED数码管显示“0”* 接口定义:DS_595 EQU P1.O串行数据输入( 595-14 )CH_595 EQU P1.2; 移位时钟脉冲( 595-

8、11 )CT_595 EQU P1.1; 输出锁存器控制脉冲( 595-12 );* 将移位寄存器内的数据锁存到输出寄存器并 显示OUT_595:CALL WR_595; 调用移位寄存器接收一个字节数据子程序CLR CT_595; 拉低锁存器控制脉冲NOPNOPSETB CT_595; 上升沿将数据送到输出锁存器, LED 数码管显示 “0”NOPNOPCLR CT_595RET;* 移位寄存器接收一个字节(如3FH)数据子程序WR_595:MOV R4,#08H; 一个字节数据( 8 位)MOV A,R0;R0 中存放要送入的数据 3FHLOOP:;第一步:准备移入7

9、4HC595数据RLC A; 数据移位MOV DS_595,C; 送数据到串行数据输入端上( P1.0 ); 第二步:产生一上升沿将数据移入 74HC595CLR CH_595; 拉低移位时钟NOPNOPsetb CH_595DJNZ R4,LOOP; 一个字节数据没移完继续RET而其级联的应用74HC595 主要应用于点阵屏,以 16*16 点阵为例:传 送一行共二个字节( 16 位)女口:发送的是 06H和3FH。其方法是:1. 先送数据3FH,后送06H。2. 通过级联串行输入后,3FH在IC2内,06H在IC1内。应用如图二3. 接着送锁存时钟,数据被锁存并出现在 IC1 和 IC2

10、的并行输出口上显示。编程方法:数据在 30H 和 31H 中;MOV 30H,#3FH;MOV 31H,#06H;* 接口定义:DS_595 EQU P1.0; 串行数据输入( 595-14 )CH_595 EQU P1.2; 移位时钟脉冲( 595-11 )CT_595 EQU P1.1; 输出锁存器控制脉冲( 595-12 ) *串行输入 16 位数据MOV R0,30HCALL WR_595; 串行输入 3FHnopNOPMOV R0,31HCALL WR_595; 串行输入 06HNOPNOPSETB CT_595; 上升沿将数据送到输出锁存器,显示NOPNOPCLR CT_595RE

11、TMC74HC595包括一个8位移位寄存器和一个 8位D型锁 存器和三态并行输出。移位寄存器接受串行数据并提供 串行输出。移位寄存器也提供并行数据输出和 8 位锁存 器。移位寄存器和锁存器都有独立的时钟输入。这个 IC 还具有异步复位的功能。HC595A可以直接和CM03MPU勺和MCU勺SPI接口进行连 接。C11 P0.2/AC-2PO.37ADS PO ,4/A4 PO.5/AD5PO.aAbBF-O.7/A&7P2,0/A8P2.1/AJ9P2.2/A10P2.3/A11P2.4/A12 陆恥13 P2.S/A14P2.T/A16P3.0/RXDF3.3rihJT1P3 用 TQP3

12、5/T1 pg.gjwT P3.7/RAlX4SH 丄JR2A*-k -SI快Iaj#include&qu ot;reg51.h &qu ot;sbit DS_595= P1A0;sbit CT_595= PM1;sbit CH_595= PM2;inttab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;int temp;void delay(int ms)int i;while(ms-) for(i=0;i;=0;k-) temp1=1#include"reg51.h"sbit DS_595= P1A0;sbit CT_595= PM1;sbit CH_595= P1A2;sbit AA=P1A3;sbit BB=P1A4;int yu=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;int temp,court,gg,ss,m,n,j;void delay(int ms)int i;while(ms-)for(i=0;i;=0;k-)temp1=1

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1