一、I2S通信总线

之前我们讲过I2C通信总线,本篇博文将讲一讲I2C的变种:I2S总线。

I2C和I2S都是由Philips公司(2006年迁移到NXP)发布的串行总线,I2S是在I2C之后发布,I2S专为传输音频数据而设计。

I2S(Inter-IC Sound)总线,又称集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准。采用了独立的导线传输时钟与数据信号的设计,通过将数据和时钟信号分离,避免了因时差诱发的失真。

I2S总线特点如下:

  • 支持全双工和半双工模式;

  • 支持主、从模式。

物理特性

I2S总线一般由1根系统时钟线和3根信号线组成:

  • MCLK称为主时钟,也叫系统时钟(Sys Clock),一般为了使系统间能够更好地同步时增加MCLK信号,MCLK的频率 = 128或者256或者512 * 采样频率;

  • SCLK(BCLK):串行时钟SCLK,也叫位时钟(BCLK),即对应数字音频的每一位数据,SCLK都有1个脉冲。

    SCK的频率 = 声道数 * 采样频率 * 采样位数;

  • LRCK:帧时钟LRCK,(也称WS),用于切换左右声道的数据。

    LRCK为“1”表示正在传输的是右声道的数据,为“0”则表示正在传输的是左声道的数据。

    LRCK的频率等于采样频率;

  • SDATA(SD):就是用二进制补码表示的音频数据。最高位拥有固定的位置,而最低位的位置则是依赖于数据的有效位数。

常见的I2S数据格式

随着技术的发展,在统一的I2S硬件接口下,出现了多种不同的I2S数据格式,可分为:I2S Philips标准、左对齐(MSB)标准和右对齐(LSB,也叫日本格式、普通格式)标准。

发送端和接收端必须使用相同的数据格式,确保发送和接收的数据一致。

2.1、I2S Philips标准

I2S Philips标准时序图如下图所示:

使用LRCLK信号表示当前正在发送数据所属的声道,LRCLK为“1”表示正在传输的是右声道的数据,为“0”则表示正在传输的是左声道的数据。LRCLK信号从当前声道数据的第一个位(MSB)之前的一个时钟开始有效。

LRCLK信号在BCLK的下降沿变化,发送方在时钟信号BCLK的下降沿改变数据,接收方在时钟信号BCLK的上升沿读取数据。正如上文所说,LRCLK频率等于采样频率Fs,一个LRCLK周期(1/Fs)包括发送左声道和右声道数据。

对于这种标准I2S格式的信号,无论有多少位有效数据,数据的最高位总是出现在LRCLK变化(也就是一帧开始)后的第2个BCLK脉冲处。这就使得接收端与发送端的有效位数可以不同。如果接收端能处理的有效位数少于发送端,可以放弃数据帧中多余的低位数据;如果接收端能处理的有效位数多于发送端,可以自行补足剩余的位。

这种同步机制使得数字音频设备的互连更加方便,而且不会造成数据错位。

2.2、左对齐(MSB)标准

左对齐(MSB)标准时序图如下图所示:


该标准较少使用,在LRCLK发生翻转的同时开始传输数据,注意LRCLK为1时,传输的是左声道数据,LRCLK为0时,传输的是右声道数据,这刚好与I2S Philips标准相反。

2.3、右对齐(LSB)标准

右对齐(LSB)标准时序图如下图所示:

声音数据LSB传输完成的同时,LRCLK完成第二次翻转(刚好是LSB和LRCLK是右对齐的,所以称为右对齐标准)。注意LRCLK为1时,传输的是左声道数据,LRCLK为0时,传输的是右声道数据,这刚好与I2S Philips标准相反。

二、射频前端大揭秘

无线通信系统中,一般包含有天线、射频前端、射频收发模块以及基带信号处理器四个部分。

随着5G时代的,天线以及射频前端的需求量及价值均快速上升,射频前端是将数字信号向无线射频信号转化的基础部件,也是无线通信系统的核心组件。

按照功能,可将射频前端分为发射端Tx以及接收端Rx。

按照器件不同,射频前端可分为功率放大器PA(发射端射频信号放大)、滤波器filter(发射、接受端信号滤波)、低噪声放大器LNA(接收端信号放大,降低噪声)、开关switch(不同通道切换)、双工器duplexer(信号选择,实现滤波匹配)、调谐器tuner(天线信号通道阻抗匹配)等。

● 滤波器Filter:选通特定频率,过滤干扰信号

滤波器(Filter),是射频前端中最重要的分立器件,使信号中特定频率成分通过而极大衰减其他频率成分,从而提高信号的抗干扰性及信噪比。

目前在手机射频市场中主要采用声学滤波技术。

根据制造工艺的不同,市面上的声学滤波器可分为声表面波滤波器(Surface Acoustic Wave,SAW)和体声波滤波器(Bulk Acoustic Wave,BAW)两大类。

其中SAW滤波器制作工艺简单,性价比高,主要应用于GHz以下的低频滤波,而BAW滤波器插损低,性能优秀,可以适用于高频滤波,但工艺复杂,价格较高。


● 滤波器:SAW/BAW对比

● 滤波器Filter:5G时代,BAW将成为主流

由于工艺复杂度、技术以及成本的限制,目前通信标准下更多射频前端采用SAW滤波器。

但随着5G渗透率的提升,BAW滤波器优异的性能和对高频的支持将使其成为手机射频前端的主流器件。

● 双工器/多工器:发射/接收信号的隔离

双工器(Diplexer),又称天线共用器,由两组不同频率的带阻滤波器组成。

利用高通、低通或带通滤波器的分频功能,使得同一天线或传输线可对两条信号路径进行使用,从而实现同一天线对两种多种不同频率信号的接收和发送。


● 功率放大器PA:放大射频信号进行发射

功率放大器(PA,Power Amplifier)是射频前端的核心部件,利用三极管的电流控制作用或场效应管的电压控制作用将电源的功率转换为按照输入信号变化的电流。

PA主要用于发射链路,通过把发射通道的微弱射频信号放大,使信号成功获得足够高的功率,从而实现更高通信质量、更强电池续航能力、更远通信距离。

PA的性能可以直接决定通信信号的稳定性和强弱。

随着半导体材料的不断发展,功率放大器也经历了CMOS、GaAs、GaN三大技术路线。

第一代半导体材料是CMOS,技术成熟且产能稳定。第二代半导体材料主要使用GaAs或SiGe,有较高的击穿电压,可用于高功率、高频器件应用。

第三代半导体材料GaN在性能上显著强亍GaAs,但成本较高。

目前移动端民用市场主要采用GaAs 作为功放,而GaN在部分基站端应用率先实现替代。未来GaN将成为高射频、大功耗应用的主要方案。

● 低噪声放大器LNA:放大接收信号,减少噪声引入

低噪声放大器(LNA,Low Noise Amplifier)是噪声系数很小的放大器,功能是把天线接收到的微弱射频信号放大,并尽量减少噪声的引入,LNA能够能有效提高接收机的接收灵敏度, 进而提高收发机的传输距离。

因此低噪声放大器的设计是否良好, 关系到整个通信系统的通信质量。

● 射频开关Switch:控制电路通断,实现信号切换

射频开关(Switch)的通过将多路射频信号中的任一路或几路控制逻辑连通,实现不同信号路径的切换,包括接收与发射的切换、不同频段间的切换等,以达到共用天线、共用通道,节省终端产品成本的目的。

射频开关主要包括移动通信传导开关、WiFi开关、天线调谐开关等。

● 调谐器Tuner:天线的阻抗匹配

天线调谐器(Tuner)是位于连接发射系统与天线的一种阻抗匹配网络,用以实现信号的接收、滤波、放大、增益控制等功能,使得天线在所有应用频率上辐射功率最大。

5G/Sub-6通信标准下,手机端中4x4下行链路MIMO要求每根天线能够高效地支持更宽的频率范围,相应对射频天线tuner的需求数量也会增加,以提高相应频段的辐射效率。

● 其他射频前端器件

Envelop Tracker (ET),即包络追踪器,用于提高承载高峰均功率比信号的功放效率,实现自适应功率放大输出。

与平均功率跟踪技术相比,包络追踪技术能够让功放的供电电压随输入信号的包络变化,改善射频功率放大器的能效。RF Reveiver,即射频接收机。

射频接收机中,射频信号经天线接收后,通过滤波器、LNA、模数转换器ADC等对信号进行变频解调,最后形成进入基带的基带信号。

射频接收机主要分超外差接收机、零中频接收机和近零中频接收机三种。

● 射频前端材料及工艺的发展

三、PLC转换指令

PLC的主要数据类型有字节型、整数型、双整数型和实数型,数据的编码类型主要有二进制、十进制、十六进制、BCD码和ASCII码等。在编程时,指令对操作数类型有一定的要求,如字节型与字型数据不能直接进行相加运算。为了让指令能对不同类型数据进行处理,要先对数据的类型进行转换。

转换指令是一种转换不同类型数据的指令。转换指令可分为标准转换指令、ASCII码转换指令、字符串转换指令和编码与解码指令。

标准转换指令

标准转换指令可分为数字转换指令、四舍五入取整指令和段译码指令。

1.数字转换指令

数字转换指令有字节与整数间的转换指令、整数与双整数间的转换指令、BCD码与整数间的转换指令和双整数转实数指令。

BCD码是一种用4位二进制数组合来表示十进制数的编码。BCD码的0000~1001分别对应十进制数的0~9。一位十进制数的二进制编码和BCD码是相同的,例如6的二进制编码为0110,BCD码也为0110;但多位十进制数两种编码是不同的,例如64的8位二进制编码为0100 0000,BCD码则为0110 0100。由于BCD码采用4位二进制数来表示1位十进制数,故16位BCD码能表示十进制数的范围是0000~9999。

1)指令说明

数字转换指令说明如表6-29所示。

表6-29 数字转换指令说明

2)指令使用举例

数字转换指令的使用如图6-14所示,当I0.0触点闭合时,执行I_DI指令,将C10中的整数转换成双整数,然后存入AC1中。当I0.1触点闭合时,执行BCD_I指令,将AC0中的BCD码转换成整数。例如,指令执行前AC0中的BCD码为0000 0001 0010 0110(即126),执行BCD_I指令后,AC0中的BCD码被转换成整数0000000001111110。

2.四舍五入取整指令

1)指令说明

四舍五入取整指令说明如表6-30所示。

表6-30 四舍五入取整指令说明

2)指令使用举例
     四舍五入取整指令的使用如图6-15所示,当I0.0触点闭合时,执行ROUND指令,将VD8中的实数采用四舍五入取整的方式转换成双整数,然后存入VD12中。

图6-15 四舍五入取整指令的使用
3.段译码指令
     段译码指令的功能是将IN端指定单元中的低4位数转换成能驱动七段数码显示器显示相应字符的七段码。
1)七段数码显示器与七段码
      七段数码显示器是一种采用七段发光体来显示十进制数0~9的显示装置,其结构和外形如图6-16所示。当某段加有高电平“1”时,该段发光。例如,要显示十进制数“5”,可让gfedcba=1101101,这里的1101101为七段码,七段码只有七位,通常在最高位补0组成8位(一个字节)。段译码指令IN端指定单元中的低4位实际上是十进制数的二进制编码值,经指令转换后变成七段码存入OUT端指定的单元中。十进制数、二进制数、七段码及显示字符的对应关系见表6-31。

2)指令说明
段译码指令说明如表6-32所示。
表6-32 段译码指令说明

图6-17 段译码指令的使用
段译码指令的使用如图6-17所示,当I0.0触点闭合时,执行SEG指令,将VB40中的低4位数转换成七段码,然后存入AC0中。例如,VB40中的数据为00000110,执行SEG指令后,低4位0110转换成七段码01111101,存入AC0中。

ASCII码转换指令

ASCII码转换指令包括整数、双整数、实数转ASCII码指令和十六进制数与ASCII码转换指令。
1.关于ASCII码知识

ASCII码意为美国标准信息交换码,是一种使用7位或8位二进制数编码的方案,最多可以对256个字符(包括字母、数字、标点符号、控制字符及其他符号)进行编码。ASCII编码表见表6-33。计算机等很多数字设备的字符采用ASCII编码方式,例如,当按下键盘上的“8”键时,键盘盘内的编码电路就将该键编码成011 1000,再送入计算机处理。如果在7位ASCII码最高位加0就是8位ASCII码。

表6-33 ASCII编码表

2.整数转ASCII码指令

1)指令说明

整数转ASCII码指令说明如表6-34所示。

表6-34 整数转ASCII码指令说明

在ITA指令中,IN端为整数型操作数,FMT端指定字节单元中的数据用来定义ASCII码字符串在OUT存储区的存放格式,OUT存储区是指OUT端指定首地址的8个连续字节单元,又称输出存储区。FMT端单元中的数据定义如下。

2)指令使用举例

整数转ASCII码指令的使用如图6-18所示,当I0.0触点闭合时,执行ITA指令,将IN端VW10中的整数转换成ASCII码字符串,保存在OUT端指定首地址的8个连续单元(VB12~VB19)构成的存储区中,ASCII码字符串在存储区的存放形式由FMT端VB0单元中的数据低4位规定。

例如,VW10中整数为12,VB0中的数据为3(即00000011),执行ITA指令后,VB12~VB19单元中存储的ASCII码字符串为“0.012”,各单元具体存储的ASCII码见表6-35,其中VB19单元存储“2”的ASCII码“00110010”。

输出存储区的ASCII码字符串格式有以下规律:

①正数值写入输出存储区时没有符号位。

②负数值写入输出存储区时以负号(-)开头。

③除小数点左侧最靠近的0外,其他左侧0去掉。

④输出存储区中的数值是右对齐的。

表6-35 FMT单元取不同值时存储区中ASCII码的存储形式

3.双整数转ASCII码指令

1)指令说明

双整数转ASCII码指令说明如表6-36所示。

表6-36 双整数转ASCII码指令说明

在DTA指令中,IN端为双整数型操作数,FMT端字节单元中的数据用来指定ASCII码字符串在OUT存储区的存放格式,OUT存储区是指OUT端指定首地址的12个连续字节单元。FMT端单元中的数据定义与整数转ASCII码指令相同。

2)指令使用举例

双整数转ASCII码指令的使用如图6-19所示,当I0.0触点闭合时,执行DTA指令,将IN端VD10中的双整数转换成ASCII码字符串,保存在OUT端指定首地址的8个连续单元(VB14~VB21)构成的存储区中,ASCII码字符串在存储区的存放形式由VB0单元(FMT端指定)中的低4位数据规定。

图6-19 双整数转ASCII码指令的使用

例如,VD10中双整数为3456789,VB0中的数据为3(即00000011),执行DTA指令后,VB14~VB21中存储的ASCII码字符串为“3456.789”。

输出存储区的ASCII码字符串格式有以下规律。

①正数值写入输出存储区时没有符号位。

②负数值写入输出存储区时以负号(-)开头。

③除小数点左侧最靠近的0外,其他左侧0去掉。

④输出存储区中的数值是右对齐的。

4.实数转ASCII码指令

1)指令说明

实数转ASCII码指令说明如表6-37所示。

表6-37 实数转ASCII码指令说明

在RTA指令中,IN端为实数型操作数,FMT端指定单元中的数据用来定义OUT存储区的长度和ASCII码字符串在OUT存储区的存放形式。FMT端单元中的数据定义如下。

2)指令使用举例

实数转ASCII码指令的使用如图6-20所示,当I0.0触点闭合时,执行RTA指令,将IN端VD10中的实数转换成ASCII码字符串,保存在OUT端指定首地址的存储区中,存储区的长度由FMT端VB0单元中的数据高4位规定,ASCII码字符串在存储区的存放形式由FMT端VB0单元中的低4位数据规定。

例如,VD10中实数为1234.5,VB0中的数据为97(即01100001),执行RTA指指令后,VB14~VB19中存储的ASCII码字符串为“1234.5”。FMT单元取不同值时存储区中ASCII码的存储格式见表6-38。

表6-38 FMT单元取不同值时存储区中ASCII码的存储格式

输出存储区的ASCII码字符串格式有以下规律。正数值写入输出存储区时没有符号位。负数值写入输出存储区时以负号(-)开头。除小数点左侧最靠近的0外,其他左侧0去掉。若小数点右侧数据超过规定位数,会按四舍五入去掉低位以满足位数要求。输出存储区的大小应至少比小数点右侧的数字位数多3字节。输出存储区中的数值是右对齐的。

5.ASCII码转十六进制数指令

1)指令说明

ASCII码转十六进制数指令说明如表6-39所示。

表6-39 ASCII码转十六进制数指令说明

2)指令使用举例

ASCII码转十六进制数指令的使用如图6-21所示,当I1.0触点闭合时,执行ATH指令,将IN端VB30为首地址的连续3个(LEN端指定)字节单元(VB30~VB32)中的ASCII码字符串转换成十六进制数,保存在OUT端VB40为首地址的连续字节单元中。

图6-21 ASCII码转十六进制数指令的使用

例如,VB30、VB31、VB32单元中的ASCII码字符分别是3(00110011)、E(01000101)、A(01000001),执行ATH指令后,VB30~VB32中的ASCII码转换成十六进制数,并存入VB40、VB41单元,其中VB40存放十六进制数3E(即00111110),VB41存放Ax(即1010xxxx),x表示VB41原先的数值不变。

6.十六进制数转ASCII码指令

1)指令说明

十六进制数转ASCII码指令说明如表6-40所示。

表6-40 十六进制数转ASCII码指令说明

2)指令使用举例
      十六进制数转ASCII码指令的使用如图6-22所示,当I1.0触点闭合时,执行HTA指令,将IN端VB30为首地址的连续2个(LEN端指定)字节单元(VB30、VB31)中的十六进制数转换成ASCII码字符,保存在OUT端VB40为首地址的连续字节单元中。
      例如,VB30、VB31单元中的十六进制数分别是3E(0011 1110)、1A(00011010),执行HTA指令后,VB30、VB31中的十六进制数转换成ASCII码,并存入VB40~VB43单元中,其中VB40存放3的ASCII码(00110011),VB41存放E的ASCII码,VB42存放1的ASCII码,VB43存放A的ASCII码。
      在ATH、HTA指令中,有效的ASCII码字符为0~9、A~F,用二进制数表示为00110011~00111001、01000001~01000110,用十六进制数表示为33~39、41~46。另外,ATH、HTA指令可转换的ASCII码和十六进制数的最大个数为255个。

图6-22 十六进制数转ASCII码指令的使用

字符串转换指令

       字符串转换指令包括整数、双整数、实数转字符串指令和字符串转整数、双整数、实数指令。
1. 整数、双整数、实数转字符串指令
1)指令说明
整数、双整数、实数转字符串指令说明如表6-41所示。

表6-41 整数、双整数、实数转字符串指令说明

整数、双整数、实数转字符串指令中FMT的定义与整数、双整数、实数转ASCII码指令基本相同,两者的区别在于:字符串转换指令中OUT端指定的首地址单元用来存放字符串的长度,其后单元才存入转换后的字符串。对于整数、双整数转字符串指令,OUT首地址单元的字符串长度值分别固定为8、12;对于实数转字符串指令,OUT首地址单元的字符串长度值由FMT的高4位来决定。
2)指令使用举例
     图6-23为实数转字符串指令的使用,当I0.0触点闭合时,执行R_S指令,将IN端VD10中的实数转换成ASCII码字符串,保存在OUT端指定首地址的存储区中,存储区的长度由FMT端VB0单元中的数据高4位规定,ASCII码字符串在存储区的存放形式由FMT端VB0单元中的低4位数据规定。

图6-23 实数转字符串指令的使用
       例如,VD10中实数为1234.5,VB0中的数据为97(即01100001),执行R_S指令后,VB14~VB20中存储的ASCII码字符串为“61234.5”。FMT单元取不同值时存储区中ASCII码字符串的存储形式见表6-42。
表6-42 FMT单元取不同值时存储区中ASCII码字符串的存储形式

整数、双整数、实数转字符串指令中的输出存储区存放ASCII码字符串格式与整数、双整数、实数转ASCII码指令基本相同,主要区别在于前者的输出存储区首地址单元存放字符串长度,其后才存入字符串。

2. 字符串转整数、双整数、实数指令

1)指令说明

字符串转整数、双整数、实数指令说明如表6-43所示。

在字符串转整数、双整数、实数指令中,INDX端用于设置开始转换单元相对首地址的偏移量,通常设置为1,即从首地址单元中的字符串开始转换。INDX也可以被设置为其他值,可以用于避开转换非法字符(非0~9的字符)。例如,IN端指定首地址为VB10,VB10~VB17单元存储的字符串为“Key:1236”,如果将INDX设为5,则转换从VB14单元开始,VB10~VB13单元中的字符串“Key”不会被转换。

表6-43 字符串转整数、双整数、实数指令说明

字符串转实数指令不能用于转换以科学计数法或者指数形式表示实数的字符串,强行转换时,指令不会产生溢出错误(SM1.1=1),但会转换指数之前的字符串,然后停止转换。例如,转换字符串“1.234E6”时,转换后的实数值为1.234,并且没有错误提示。

指令在转换时,当到达字符串的结尾或者遇到第一个非法字符时,转换指令结束。当转换产生的整数值过大以致输出值无法表示时,溢出标志(SM1.1)会置位。

2)指令使用举例

字符串转整数、双整数、实数指令的使用如图6-24所示,当I0.0触点闭合时,依次执行S_I、S_DI、S_R指令。S_I指令将相对VB0偏移量为7的VB6及后续单元中的字符串转换成整数,并保存在VW100单元中;S_DI指令将相对VB0偏移量为7的VB7及后续单元中的字符串转换成双整数,并保存在VD200单元中;S_R指令将相对VB0偏移量为7的VB7及后续单元中的字符串转换成实数,并保存在VD300单元中。

图6-24 字符串转整数、双整数、实数指令的使用

如果VB0~VB11单元中存储的ASCII码字符串为 “11、T、e、m、p、空格、空格、9、8、.、6、F”,执行S_I、S_DI、S_R指令后,则在VW100单元中得到整数98,在VD200单元中得到双整数98,在VD300单元中得到实数98.6。

编码与解码指令

1.指令说明

编码与解码指令说明如表6-44所示。

表6-44 编码与解码指令说明

2.指令使用举例

编码与解码指令的使用如图6-25所示,当I0.0触点闭合时,执行ENCO和DECO指令,在执行ENCO(编码)指令时,将AC3中最低有效位1的位号“9”写入VB50单元的低4位;在执行DECO指令时,根据AC2中低半字节表示的位号“3”将VW40中的第3位置1,其他位全部清0。

图6-25 编码与解码指令的使用 whaosoft aiot http://143ai.com

四、电子时钟电路图汇总

数字钟是一种用数字电路技术实现时、分、秒计时的钟表。与机械钟相比具有更高的准确性和直观性,具有更长的使用寿命,已得到广泛的使用。

本文介绍了七款数字时钟设计电路图。  ​​​​​​​

本设计主要采用中断的方式,采用INT0,INT1中断,分别由按键s1,s2触发。按键s1作为功能选择键,当按键s1按下时,可以在不同的功能之间进行切换。

按下s1,由时钟状态进入秒表状态,再按一下,秒表开始计时,再按s1,秒表停下,再按s1,进入调整时钟的状态,每按一次,可以用按键s2对相应的位进行调整。其中复位电路具有上电自动复位,和手动复位功能。由P2控制三极管驱动数码管,P0口做数据输出口。

校“时”和校“分”的校准电路是相同的,现以校“分”电路来说明时间的校准。在正常计时时,与非门U2D的一个输入端为1,将它开通,使秒计数器输出的分脉冲加到U2D的另一输入端,并经U1D进入分计数器。而此时U3D由于一个输入端为0,因此被关断,校准用的秒脉冲进不去。

在校“分”时,按下开关J1,情况与上述情况适反。U2D被封闭,U3D打开,标准秒脉冲直接进入分计数器进行快速校“分”。同理,在校“时”时,按下开关,标准秒脉冲直接进入时计数器进行快速校“时”。可见U1D、U2D、U3D构成的是一个二选一电路。

由图可以看出,当“时”个位U8计数输入端到第10个触发信号时,U8计数器复零,进位端QD向U7“时”十位计数器输出进位信号,当第24个“时”(来自“分”计数器输出的进位信号)脉冲到达时,U8计数器的状态为“0100”,U7计数器的状态为“0010”,此时“时”个位计数器的QC和“时”十位计数器的QB输出为“1”。把他们分别送入U7、U8计数器的清零端R01和R02,通过74LS290内部的R01和R02与非 13

数字钟的计数电路是用两个六十进制计数电路和一个十二进制计数电路实现的,但是考虑到对74LS90比较熟悉,觉得用两个74LS90来分别控制秒和分的十位和个位。个位采用十进制,十位采用六进制就能完美解决六十进制的秒计数。然后再用74ls191和74ls74来分别控制时的个位和十位。

作原理:6个数码管的字型段输入端(a、b、c、d、e、f,g)全部并接到译码器相应的输出端。电源控制开关管分别接到3~6译码器的六个输出端。时钟六个计数器输出端均采用四位,分别为xl、xt£、mx⋯X2nx2z、x2hx2‘,⋯,x、xx、x相应的每一位都接到4个6选1的选择器上,选择器输出共4位接到译码器的输入端(y、y、y、Y上。数码管及与之对应要显示的计数器,由Q]、、的编码(BCD码)进行循环选择例如,当Q、、均为⋯0时,则3~6译码器的输出端1为高电平,第一个数码管加上电源,与此同时,六选一选择器对应的输出分别为Yy—yXs—xX—x。这时译码器的输出a,b,⋯⋯,g虽然接到所有数码管上,但由于只有第一个数码管加上电源,故只有该管点亮,显示第一个计数器的状态(x、x。、xX)。同理,当Q、QQ为001”时,第二个数码管点亮,显示第二个计数器的状态。依此类推,到第六个数码管断后,接着第一个又开始点亮。如此循环显示,循环周期为6ms,给人的感觉,就相当所有数码管都一直在同时加电,实际上每次只有一个,消耗的功率只有静态显示的六分之一。由于数码管电流很大,一般小型管各段全亮时,大约要150mA~200mA采用静电显示,此例中就要大于1A的电流。这对长期工作的时钟很不经济,对于大型数码管会更加严重。此外,采用动态显示,数码管的寿命与静态相比也相应延长Ⅳ倍(本例为6倍)。

闹钟由可调时、分显示器,4个74290芯片,3个4077芯片和两个7421芯片的电路构出时钟的多功能部分。其中,四个74290和四个显示器构成定时闹钟的显示部分(调时部分可以由开关3、4直接控制电路与振荡器的连接来实现);4077芯片的作用是比较实际时钟部分与闹钟部分的输出数据是否一致,再由两个7421芯片校验作最后校验,当全部输出对比为真时,则发光二极管亮起来,实现定时闹钟功能。具体电路如下图:

位到达9时,接着下一个脉冲来时,将进行秒到分的进位,分实行六十进制后,再进位到时。

嵌入式分享合集126相关推荐

  1. 嵌入式分享合集115

    一.数字万用表电压.电流.电阻.电容.频率.电池.二极管等测量方法 数字万用表可用来测量直流和交流电压.直流和交流电流.电阻.电容.频率.电池.二极管等等.整机电路设计以大规模集成电路双积分A/D转换 ...

  2. 嵌入式分享合集137

    一.5大电气制图软件 一个电气人的基本从业准则就是要识图.绘图.首先要了解什么是电气图?电气图常用于建筑行业,是建筑内的线路.照明.空调及相关电气设备的平面展示.同时也是建筑工人施工的依据,因此,准确 ...

  3. 嵌入式分享合集105

    一.智能灯光控制系统(基于stm32) 带你走进物联网的世界说一个整天方案哦 这次是基于stm32的 当然你可以用esp "智能光照灯"使用STM32作为系统的MCU,由于单片机I ...

  4. 嵌入式分享合集112

    一.常用电路基础公式 1.欧姆定律计算 计算电阻电路中电流.电压.电阻和功率之间的关系. 欧姆定律解释了电压.电流和电阻之间的关系,即通过导体两点间的电流与这两点间的电势差成正比.说明两点间的电压差. ...

  5. 嵌入式分享合集109

    一.八大基础电路,模拟电路分析 在电子电路中,电源.放大.振荡和调制电路被称为模拟电子电路,因为它们加工和处理的是连续变化的模拟信号. 1 反馈 反馈是指把输出的变化通过某种方式送到输入端,作为输入的 ...

  6. 嵌入式分享合集125

    一.多层板PCB设计中电源平面相对地平面要进行内缩? 有一些人绘制的PCB,在GND层和电源层会进行一定程度的内缩设计,那么大家有没有想过为什么要内缩呢. 需要搞清楚这个问题,我们需要来先了解一个知识 ...

  7. 嵌入式分享合集108

    一.PLC串口通讯的基本知识 这几天弄plc都要神经了  尤其西门子的 太烦了 s7200cn s7200smart s1200 编程软件都不一样~~服 , 然后接线也很烦 好了 正题 电气作业人员在 ...

  8. 嵌入式分享合集122

    一.分析电容降压电路工作原理 电容降压电路,因其成本低廉.体积小而被广泛地使用,此一优点足以掩盖其它所有缺点:输出电流小(一般控制在100mA以内),与市电直通非隔离而存在安全隐患,输出电压波动大等: ...

  9. 嵌入式分享合集139

    一.视频监控系统入门专业术语 视频监控系统是弱电系统中最常见的子系统,很多监控行业的朋友,特别是刚入行,遇到一些监控问题搞不清楚而感到头疼,下面本文分享监控基本知识一问一答解读! 1.CCTV的含义是 ...

  10. 嵌入式分享合集102

    一.嵌入式开发Bug定位解决 一.问题复现 稳定复现问题才能正确的对问题进行定位.解决以及验证.一般来说,越容易复现的问题越容易解决. 1.1 模拟复现条件 有的问题存在于特定的条件下,只需要模拟出现 ...

最新文章

  1. SAP MM 初阶循环盘点的ABCD 标识符
  2. jenkins+gradle/maven+sonar+pipline
  3. 程序异常是python语言基本控制结构_计算机二级python 知识点篇(程序的控制结构)...
  4. Oracle 监听(Listener) 中 services 说明
  5. 机器学习——人工神经网络之多层神经网络(多层与三层)
  6. 【Python】提升Python程序性能的好习惯2
  7. Github | 深度学习研究大咖有哪些?
  8. 【BZOJ】1969: [Ahoi2005]LANE 航线规划
  9. 流行歌曲演唱的风格与技巧
  10. 1月Web服务器份额之争:仅Microsoft份额下降
  11. 实战 | F1060防火墙透明模式典型组网配置案例(trunk)
  12. python语言中print函数的作用_[转载]python中的@符号的作用
  13. 【离散数学】代数系统 第六章 格与布尔代数(4) 布尔代数
  14. Samtools说明文档网址变更
  15. 小米路由作二级路由,挂在上级路由之下,samba能被上级访问
  16. 存储过程 debug
  17. java程序计算圆周率
  18. 画质提升了! LR增强细节_Lightroom 开启 AI 照片细节强化:画面清晰度提升 30%
  19. 广东省21个地级市GDP一二三产业增加值数据
  20. react icons库介绍及使用

热门文章

  1. Python自学(三)
  2. 饿了么Redis Cluster集群化演进
  3. 面试时被问有没有别家offer,回答没有,面试总是挂!回答有,就说我是面试选手,欺骗公司!...
  4. php文本框代码_php怎么用代码给文本框输入值
  5. 5990. 找出数组中的所有孤独数字
  6. ActiveMQ 默认用户名和密码
  7. 提高iOS开发效率的第三方框架(更新中)
  8. as3.0点击获取TLF文本的实例名
  9. java图形编程正三角形_java实现正三角形和到正三角形
  10. PCL教程-点云配准之正态分布变换算法(NDT)