一.知识点记
1.74HC595操作
15 和 1 到 7 脚 QA--QH:并行数据输出 9 脚 QH 非:串行数据输出 10 脚 SCLK 非( MR) : 低电平复位引脚 11 脚 SCK( SHCP) : 输入
移位寄存器时钟 12 脚 RCK( STCP) : 输入存储器时钟 13 脚 G 非( OE) : 输出有效 14 脚 SER( DS) : 串行数据输入
74HC595 在模块中使用 4 块 74HC595芯片采用级联法,即 RCLK 和 SRC 管脚并联。 74HC595 控制管脚需要使用 R CLK、SRCLK、SER(原理图上的横线表示低电平 or 下降沿有效 )
74HC595 采用级联法,即 RCLK 和 SRCLK 管脚并联在一起,并且 74HC595 (A)的连接到 74HC595(B)串行输入口 SER,而 74HC595(B)的 又连接到 74HC595(C)串行输入口 SER,依次类推。
当所有数据到位时,控制上升沿输出缓存,
2.位寻址
中断系统将涉及许多寄存器。此时,我们将遇到一些有点奇怪的术语,如可位搜索和不可位搜索,如下图所示: 位置搜索是指一些内部数据存储器RAM位置操作与特殊功能寄存器寻址。 简单地说,可位寻址是指寄存器中的一个(bit)操作。
例如,图中的两个寄存器相同B0位(EX0、ES2)赋值操作,因为IE是可位寻址,可以直接找到EX0拿出来操作。 EX0=1;
而IE2是无法找到的,所以如果我们想要正确的话ES赋值,必须正确IE整个寄存器赋值,不能拿出来。
IE2=0x01 //0000 0001
2.代码分析
/* SER( DS) : 串行数据 */ SER = Byte&(0x80>>i); //移位操作 /* SCK( SHCP) : 输入移位寄存器时钟 */ SCK =1 ///数据移位,放入移位寄存器,高电平有效 SCK =0 ; //清0 RCK = 1; ///移位寄存器输出IO口,发送 RCK = 0; //使用完清0
当相应的行置 1 电平,某列 0 电平时,相应的二极管会亮起;
3.注意事项
unsigned char code XX [32]={}; code它是一个关键字,从RAM 改为FLASH(但只能读不能写)