威尼斯人官网

张飞软硬开源基于STM32 BLDC直流无刷电机驱动器开发视频套件,👉戳此立抢👈

io端口和io内存的知识,你都忘了没?来温习一遍

传感器技术 2017-12-30 07:27 次阅读

(一)地址的概念

1)物理地址:CPU地址总线传来的地址,由硬件电路控制其具体含义。物理地址中很大一部分是留给内存条中的内存的,但也常被映射到其他存储器上(如显存、BIOS等)。在程序指令中的虚拟地址经过段映射和页面映射后,就生成了物理地址,这个物理地址被放到CPU的地址线上。


 

物理地址空间,一部分给物理RAM(内存)用,一部分给总线用,这是由硬件设计来决定的,因此在32bits地址线的x86处理器中,物理地址空间是2的32次方,即4GB,但物理RAM一般不能上到4GB,因为还有一部分要给总线用(总线上还挂着别的许多设备)。在PC机中,一般是把低端物理地址给RAM用,高端物理地址给总线用。

2)总线地址:总线的地址线或在地址周期上产生的信号。外设使用的是总线地址,CPU使用的是物理地址。

物理地址与总线地址之间的关系由系统的设计决定的。在x86平台上,物理地址就是总线地址,这是因为它们共享相同的地址空间——这句话有点难理解,详见下面的“独立编址”。在其他平台上,可能需要转换/映射。比如:CPU需要访问物理地址是0xfa000的单元,那么在x86平台上,会产生一个PCI总线上对0xfa000地址的访问。因为物理地址和总线地址相同。

3)虚拟地址:现代操作系统普遍采用虚拟内存管理(VirtualMemory Management)机制,这需要MMU(MemoryManagement Unit)的支持。MMU通常是CPU的一部分,如果处理器没有MMU,或者有MMU但没有启用,CPU执行单元发出的内存地址将直接传到芯片引脚上,被内存芯片(物理内存)接收,这称为物理地址(Physical Address),如果处理器启用了MMU,CPU执行单元发出的内存地址将被MMU截获,从CPU到MMU的地址称为虚拟地址(Virtual Address),而MMU将这个地址翻译成另一个地址发到CPU芯片的外部地址引脚上,也就是将虚拟地址映射成物理地址。        

Linux中,进程的4GB(虚拟)内存分为用户空间、内核空间。用户空间分布为0~3GB(即PAGE_OFFSET,在0X86中它等于0xC0000000),剩下的1G为内核空间。程序员只能使用虚拟地址。系统中每个进程有各自的私有用户空间(0~3G),这个空间对系统中的其他进程是不可见的。

CPU发出取指令请求时的地址是当前上下文的虚拟地址,MMU再从页表中找到这个虚拟地址的物理地址,完成取指。同样读取数据的也是虚拟地址,比如mov ax, var. 编译时var就是一个虚拟地址,也是通过MMU从也表中来找到物理地址,再产生总线时序,完成取数据的。

(二)编址方式

1)对外设的编址

统一编址:外设接口中的IO寄存器(即IO端口)与主存单元一样看待,每个端口占用一个存储单元的地址,将主存的一部分划出来用作IO地址空间,如,在 PDP-11中,把最高的4K主存作为IO设备寄存器地址。端口占用了存储器的地址空间,使存储量容量减小。        

统一编址也称为“I/O内存”方式,外设寄存器位于“内存空间”(很多外设有自己的内存、缓冲区,外设的寄存器和内存统称“I/O空间”)。       

如,Samsung的S3C2440,是32位ARM处理器,它的4GB地址空间被外设、RAM等瓜分:0x8000 1000    LED 8*8点阵的地址0x4800 0000 ~ 0x6000 0000  SFR(特殊暂存器)地址空间0x3800 1002   键盘地址0x3000 0000 ~ 0x3400 0000  SDRAM空间 0x2000 0020 ~ 0x2000 002e  IDE0x1900 0300   CS8900

独立编址(单独编址):IO地址与存储地址分开独立编址,I/0端口地址不占用存储空间的地址范围,这样,在系统中就存在了另一种与存储地址无关的IO地址,CPU也必须具有专用与输入输出操作的IO指令(IN、OUT等)和控制逻辑。独立编址下,地址总线上过来一个地址,设备不知道是给IO端口的、还是给存储器的,于是处理器通过MEMR/MEMW和IOR/IOW两组控制信号来实现对I/O端口和存储器的不同寻址。如,intel80x86就采用单独编址,CPU内存和I/O是一起编址的,就是说内存一部分的地址和I/O地址是重叠的。       

独立编址也称为“I/O端口”方式,外设寄存器位于“I/O(地址)空间”。        

对于x86架构来说,通过IN/OUT指令访问。PC架构一共有65536个8bit的I/O端口,组成64K个I/O地址空间,编号从0~0xFFFF,有16位,80x86用低16位地址线A0-A15来寻址。连续两个8bit的端口可以组成一个16bit的端口,连续4个组成一个 32bit的端口。I/O地址空间和CPU的物理地址空间是两个不同的概念,例如I/O地址空间为64K,一个32bit的CPU物理地址空间是4G。如,在Intel 8086+Redhat9.0 下用“more/proc/ioports”可看到:0000-001f : dma10020-003f : pic10040-005f : timer0060-006f : keyboard0070-007f : rtc0080-008f : dma page reg00a0-00bf : pic200c0-00df : dma200f0-00ff : fpu0170-0177 : ide1……

不过Intelx86平台普通使用了名为内存映射(MMIO)的技术,该技术是PCI规范的一部分,IO设备端口被映射到内存空间,映射后,CPU访问IO端口就如同访问内存一样。看IntelTA 719文档给出的x86/x64系统典型内存地址分配表:

系统资源                                                                  占用

BIOS                                                                         1M

本地APIC                                                                   4K

芯片组保留                                                                2M

IO APIC                                                                     4K

PCI设备                                                                     256M

PCI Express设备                                                       256M

PCI设备(可选)                                                       256M

显示帧缓存                                                                16M

TSEG                                                                        1M      

对于某一既定的系统,它要么是独立编址、要么是统一编址,具体采用哪一种则取决于CPU的体系结构。如,PowerPC、m68k等采用统一编址,而X86等则采用独立编址,存在IO空间的概念。目前,大多数嵌入式微控制器如ARM、PowerPC等并不提供I/O空间,仅有内存空间,可直接用地址、指针访问。但对于Linux内核而言,它可能用于不同的CPU,所以它必须都要考虑这两种方式,于是它采用一种新的方法,将基于I/O映射方式的或内存映射方式的I/O端口通称为“I/O区域”(I/O region),不论你采用哪种方式,都要先申请IO区域:request_resource(),结束时释放它:release_resource()。

(三)不同体系结构编址方式总结

几乎每一种外设都是通过读写设备上的寄存器来进行的。外设寄存器也称为“I/O端口”,通常包括:控制寄存器、状态寄存器和数据寄存器三大类,而且一个外设的寄存器通常被连续地编址。CPU对外设IO端口物理地址的编址方式有两种:一种是I/O映射方式(I/O-mapped),另一种是内存映射方式(Memory-mapped)。而具体采用哪一种则取决于CPU的体系结构。

有些体系结构的CPU(如,PowerPC、m68k等)通常只实现一个物理地址空间(RAM)。在这种情况下,外设I/O端口的物理地址就被映射到CPU的单一物理地址空间中,而成为内存的一部分。此时,CPU可以象访问一个内存单元那样访问外设I/O端口,而不需要设立专门的外设I/O指令。这就是所谓的“内存映射方式”(Memory-mapped)。

而另外一些体系结构的CPU(典型地如X86)则为外设专门实现了一个单独地地址空间,称为“I/O地址空间”或者“I/O端口空间”。这是一个与CPU地RAM物理地址空间不同的地址空间,所有外设的I/O端口均在这一空间中进行编址。CPU通过设立专门的I/O指令(如X86的IN和OUT指令)来访问这一空间中的地址单元(也即I/O端口)。这就是所谓的“I/O映射方式”(I/O-mapped)。与RAM物理地址空间相比,I/O地址空间通常都比较小,如x86 CPU的I/O空间就只有64KB(0-0xffff)。这是“I/O映射方式”的一个主要缺点。

Linux将基于I/O映射方式的或内存映射方式的I/O端口通称为“I/O区域”(I/Oregion)。在讨论对I/O区域的管理之前,我们首先来分析一下Linux是如何实现“I/O资源”这一抽象概念的.

(四)IO端口与IO内存区别

在驱动程序编写过程中,很少会注意到IO Port和IO Mem的区别。虽然使用一些不符合规范的代码可以达到最终目的,这是极其不推荐使用的。

结合下图,我们彻底讲述IO端口和IO内存以及内存之间的关系。主存16M字节的SDRAM,外设是个视频采集卡,上面有16M字节的SDRAM作为缓冲区。

1. CPU是i386架构的情况

在i386系列的处理中,内存和外部IO是独立编址,也是独立寻址的。MEM的内存空间是32位可以寻址到4G,IO空间是16位可以寻址到64K。

在Linux内核中,访问外设上的IO Port必须通过IO Port的寻址方式。而访问IO Mem就比较罗嗦,外部MEM不能和主存一样访问,虽然大小上不相上下,可是外部MEM是没有在系统中注册的。访问外部IO MEM必须通过remap映射到内核的MEM空间后才能访问。

为了达到接口的同一性,内核提供了IO Port到IO Mem的映射函数。映射后IO Port就可以看作是IO Mem,按照IO Mem的访问方式即可。

2. CPU是ARM 或PPC架构的情况

在这一类的嵌入式处理器中,IO Port的寻址方式是采用内存映射,也就是IO bus就是Mem bus。系统的寻址能力如果是32位,IO Port+Mem(包括IO Mem)可以达到4G。

访问这类IO Port时,我们也可以用IO Port专用寻址方式。至于在对IO Port寻址时,内核是具体如何完成的,这个在内核移植时就已经完成。在这种架构的处理器中,仍然保持对IO Port的支持,完全是i386架构遗留下来的问题,在此不多讨论。而访问IO Mem的方式和i386一致。

3、IO端口和IO内存的区分及联系

这两者如何区分就涉及到硬件知识,X86体系中,具有两个地址空间:IO空间和内存空间,而RISC指令系统的CPU(如ARM、PowerPC等)通常只实现一个物理地址空间,即内存空间。内存空间:内存地址寻址范围,32位操作系统内存空间为2的32次幂,即4G。IO空间:X86特有的一个空间,与内存空间彼此独立的地址空间,32位X86有64K的IO空间。

IO端口:当寄存器或内存位于IO空间时,称为IO端口。一般寄存器也俗称I/O端口,或者说I/Oports,这个I/O端口可以被映射在MemorySpace,也可以被映射在I/OSpace。

IO内存当寄存器或内存位于内存空间时,称为IO内存

(五)在Linux下对IO端口与IO内存访问方式总结

1)在Linux下访问IO端口

对于某一既定的系统,它要么是独立编址、要么是统一编址,具体采用哪一种则取决于CPU的体系结构。如,PowerPC、m68k等采用统一编址,而X86等则采用独立编址,存在IO空间的概念。目前,大多数嵌入式微控制器如ARM、PowerPC等并不提供I/O空间,仅有内存空间,可直接用地址、指针访问。但对于Linux内核而言,它可能用于不同的CPU,所以它必须都要考虑这两种方式,于是它采用一种新的方法,将基于I/O映射方式的或内存映射方式的I/O端口通称为“I/O区域”(I/O region),不论你采用哪种方式,都要先申请IO区域:request_resource(),结束时释放它:release_resource()。

IO region是一种IO资源,因此它可以用resource结构类型来描述。

访问IO端口有2种途径:I/O映射方式(I/O-mapped)、内存映射方式(Memory-mapped)。前一种途径不映射到内存空间,直接使用 intb()/outb()之类的函数来读写IO端口;后一种MMIO是先把IO端口映射到IO内存(“内存空间”),再使用访问IO内存的函数来访问 IO端口。

1、I/O映射方式

直接使用IO端口操作函数:在设备打开或驱动模块被加载时申请IO端口区域,之后使用inb(),outb()等进行端口访问,最后在设备关闭或驱动被卸载时释放IO端口范围。

in、out、ins和outs汇编语言指令都可以访问I/O端口。内核中包含了以下辅助函数来简化这种访问:

inb( )、inw( )、inl( )分别从I/O端口读取1、2或4个连续字节。后缀“b”、“w”、“l”分别代表一个字节(8位)、一个字(16位)以及一个长整型(32位)。

inb_p( )、inw_p( )、inl_p( )分别从I/O端口读取1、2或4个连续字节,然后执行一条“哑元(dummy,即空指令)”指令使CPU暂停。

outb( )、outw( )、outl( )分别向一个I/O端口写入1、2或4个连续字节。

outb_p( )、outw_p( )、outl_p( )分别向一个I/O端口写入1、2或4个连续字节,然后执行一条“哑元”指令使CPU暂停。

insb( )、insw( )、insl( )分别从I/O端口读入以1、2或4个字节为一组的连续字节序列。字节序列的长度由该函数的参数给出。

outsb( )、outsw( )、outsl( )分别向I/O端口写入以1、2或4个字节为一组的连续字节序列。

流程如下:

虽然访问I/O端口非常简单,但是检测哪些I/O端口已经分配给I/O设备可能就不这么简单了,对基于ISA总线的系统来说更是如此。通常,I/O设备驱动程序为了探测硬件设备,需要盲目地向某一I/O端口写入数据;但是,如果其他硬件设备已经使用这个端口,那么系统就会崩溃。为了防止这种情况的发生,内核必须使用“资源”来记录分配给每个硬件设备的I/O端口。资源表示某个实体的一部分,这部分被互斥地分配给设备驱动程序。在这里,资源表示I/O端口地址的一个范围。每个资源对应的信息存放在resource数据结构中:

struct resource {  

resource_size_t start;// 资源范围的开始  

resource_size_t end;// 资源范围的结束  

const char *name; //资源拥有者的名字  

unsigned long flags;// 各种标志  

struct resource *parent, *sibling, *child;// 指向资源树中父亲,兄弟和孩子的指针  

};  

所有的同种资源都插入到一个树型数据结构(父亲、兄弟和孩子)中;例如,表示I/O端口地址范围的所有资源都包括在一个根节点为ioport_resource的树中。节点的孩子被收集在一个链表中,其第一个元素由child指向。sibling字段指向链表中的下一个节点。

为什么使用树?例如,考虑一下IDE硬盘接口所使用的I/O端口地址-比如说从0xf000到 0xf00f。那么,start字段为0xf000且end 字段为0xf00f的这样一个资源包含在树中,控制器的常规名字存放在name字段中。但是,IDE设备驱动程序需要记住另外的信息,也就是IDE链主盘使用0xf000到0xf007的子范围,从盘使用0xf008到0xf00f的子范围。为了做到这点,设备驱动程序把两个子范围对应的孩子插入到从0xf000到0xf00f的整个范围对应的资源下。一般来说,树中的每个节点肯定相当于父节点对应范围的一个子范围。I/O端口资源树(ioport_resource)的根节点跨越了整个I/O地址空间(从端口0到65535)。

任何设备驱动程序都可以使用下面三个函数,传递给它们的参数为资源树的根节点和要插入的新资源数据结构的地址:

request_resource()        //把一个给定范围分配给一个I/O设备。

allocate_resource()        //在资源树中寻找一个给定大小和排列方式的可用范围;若存在,将这个范围分配给一个I/O设备(主要由PCI设备驱动程序使用,可以使用任意的端口号和主板上的内存地址对其进行配置)。

release_resource()      //释放以前分配给I/O设备的给定范围。

内核也为以上函数定义了一些应用于I/O端口的快捷函数:request_region( )分配I/O端口的给定范围,release_region( )释放以前分配给I/O端口的范围。当前分配给I/O设备的所有I/O地址的树都可以从/proc/ioports文件中获得。

2、内存映射方式

  

将IO端口映射为内存进行访问,在设备打开或驱动模块被加载时,申请IO端口区域并使用ioport_map()映射到内存,之后使用IO内存的函数进行端口访问,最后,在设备关闭或驱动模块被卸载时释放IO端口并释放映射

映射函数的原型为:void *ioport_map(unsigned long port, unsigned int count);

通过这个函数,可以把port开始的count个连续的I/O端口重映射为一段“内存空间”。然后就可以在其返回的地址上像访问I/O内存一样访问这些I/O端口。但请注意,在进行映射前,还必须通过request_region()分配I/O端口。

当不再需要这种映射时,需要调用下面的函数来撤消:

void ioport_unmap(void *addr);

在设备的物理地址被映射到虚拟地址之后,尽管可以直接通过指针访问这些地址,但是宜使用Linux内核的如下一组函数来完成访问I/O内存:读I/O内存unsigned int ioread8(void *addr);unsigned int ioread16(void *addr);unsigned int ioread32(void *addr);与上述函数对应的较早版本的函数为(这些函数在Linux 2.6中仍然被支持):unsigned readb(address);unsigned readw(address);unsigned readl(address);·写I/O内存void iowrite8(u8 value, void *addr);void iowrite16(u16 value, void *addr);void iowrite32(u32 value, void *addr);与上述函数对应的较早版本的函数为(这些函数在Linux 2.6中仍然被支持):void writeb(unsigned value, address);void writew(unsigned value, address);void writel(unsigned value, address);

流程如下:

2)Linux下访问IO内存

IO内存的访问方法是:首先调用request_mem_region()申请资源,接着将寄存器地址通过ioremap()映射到内核空间的虚拟地址,之后就可以Linux设备访问编程接口访问这些寄存器了,访问完成后,使用ioremap()对申请的虚拟地址进行释放,并释放release_mem_region()申请的IO内存资源。

struct resource*requset_mem_region(unsigned long start, unsigned long len,char *name);   

这个函数从内核申请len个内存地址(在3G~4G之间的虚地址),而这里的start为I/O物理地址,name为设备的名称。注意,如果分配成功,则返回非NULL,否则,返回NULL。另外,可以通过/proc/iomem查看系统给各种设备的内存范围。

要释放所申请的I/O内存,应当使用release_mem_region()函数:

void release_mem_region(unsigned longstart, unsigned long len)

申请一组I/O内存后,调用ioremap()函数

void* ioremap(unsigned long phys_addr, unsigned long size, unsigned long flags);

其中三个参数的含义为:phys_addr:与requset_mem_region函数中参数start相同的I/O物理地址;size:要映射的空间的大小;flags:要映射的IO空间的和权限有关的标志;

功能:将一个I/O地址空间映射到内核的虚拟地址空间上(通过requset _mem_region()申请到的)

流程如下:

3)ioremap和ioport_map

下面具体看一下ioport_map和ioport_umap的源码:

void __iomem *ioport_map(unsigned long port, unsigned int nr)  

{  

if (port > PIO_MASK)  

return NULL;  

return (void __iomem *) (unsigned long) (port + PIO_OFFSET);  

}  

void ioport_unmap(void __iomem *addr)  

{  

/* Nothing to do */  

}  

ioport_map仅仅是将port加上PIO_OFFSET(64k),而ioport_unmap则什么都不做。这样portio的64k空间就被映射到虚拟地址的64k~128k之间,而ioremap返回的虚拟地址则肯定在3G之上。ioport_map函数的目的是试图提供与ioremap一致的虚拟地址空间。分析ioport_map()的源代码可发现,所谓的映射到内存空间行为实际上是给开发人员制造的一个“假象”,并没有映射到内核虚拟地址,仅仅是为了让工程师可使用统一的I/O内存访问接口ioread8/iowrite8(......)访问I/O端口。          

最后来看一下ioread8的源码,其实现也就是对虚拟地址进行了判断,以区分IO端口和IO内存,然后分别使用inb/outb和readb/writeb来读写。

unsigned int fastcall ioread8(void __iomem *addr)  

{  

IO_COND(addr, return inb(port), return readb(addr));  

}  

#define VERIFY_PIO(port) BUG_ON((port & ~PIO_MASK) != PIO_OFFSET)  

#define IO_COND(addr, is_pio, is_mmio) do { \  

unsigned long port = (unsigned long __force)addr; \  

if (port < PIO_RESERVED) { \  

VERIFY_PIO(port); \  

port &= PIO_MASK; \  

is_pio; \  

} else { \  

is_mmio; \  

} \  

} while (0)  

展开:  

unsigned int fastcall ioread8(void __iomem *addr)  

{  

unsigned long port = (unsigned long __force)addr;  

if( port < 0x40000UL ) {  

BUG_ON( (port & ~PIO_MASK) != PIO_OFFSET );  

port &= PIO_MASK;  

return inb(port);  

}else{  

return readb(addr);  

}  

原文标题:详解io端口与io内存

文章出处:【微信号:WW_CGQJS,微信公众号:传感器技术】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

SDRAM和重定位relocate-1.5.ARM裸机第五部分视频课程

本期课程的主要目标是掌握汇编调用C语言、指令cache、关闭看门狗等,重点知识是代码重定位与链接脚本、DDR的初始化,并
发表于 04-04 00:00 9576次 阅读
SDRAM和重定位relocate-1.5.ARM裸机第五部分视频课程

请问F4开发板里LWIP扩展例程里有寄存器版本的吗?

F4开发板里LWIP扩展例程里都是库函数版本的,有寄存器版本的吗?...
发表于 07-16 04:35 1次 阅读
请问F4开发板里LWIP扩展例程里有寄存器版本的吗?

关于C51和ARM读写寄存器方式区别?

请教各位关于C51和ARM读写寄存器方式区别的疑惑 C51里访问寄存器的方式是:例如sfr P0 = 0x80;  然后对P0的赋...
发表于 07-15 10:14 233次 阅读
关于C51和ARM读写寄存器方式区别?

为什么要开关中断这两个函数?

ucos-ii系统自带的一些函数,都会用某个变量来保存cpu的状态寄存器,为了好识别,一般是用cpu_sr; 譬如: INT8U &nb...
发表于 07-15 04:36 17次 阅读
为什么要开关中断这两个函数?

基于URAM原语创建容量更大的RAM

UltraRAM 原语(也称为 URAM)可在 Xilinx UltraScale +™ 架构中使用....
发表于 07-13 11:08 68次 阅读
基于URAM原语创建容量更大的RAM

请问我已经正确设置了我的AdCON/安塞尔寄存器吗?

嗨,黑帮,有人能看看我的简短代码,并告诉我是否我已经设置了我的AdCON/安塞尔寄存器正确。我已经有一段时间了,似乎不太清...
发表于 07-12 15:52 29次 阅读
请问我已经正确设置了我的AdCON/安塞尔寄存器吗?

如何解决Spartan 6中异常长的路由延迟导致的时序错误?

我有几个时序错误,我无法在我的Spartan 6设计中删除。 我使用100 MHz时钟在外部地址/数据总线接口上注册信号。 我从IOB...
发表于 07-12 11:31 31次 阅读
如何解决Spartan 6中异常长的路由延迟导致的时序错误?

如何使DMAPI启用寄存器保持活跃?

我想利用短转接(部分转接)而不终止转移。 FIY:我想使用一个PKStand SunNar通过SavaveFio实现一个缓冲区,使DMA...
发表于 07-12 10:04 150次 阅读
如何使DMAPI启用寄存器保持活跃?

D触发器基本原理

负跳沿触发的主从触发器工作时,必须在正跳沿前加入输入信号。如果在CP 高电平期间输入端出现干扰信号,....
发表于 07-12 08:50 56次 阅读
D触发器基本原理

MCU中部分函数运行于RAM中的方法

MCU(如: 基于Cortex V6M 的Cortex M0+ 等) Code 通常运行在内嵌Flash 中。 在某些特定应用场合,需要将部分函数运行于...
发表于 07-12 08:34 298次 阅读
MCU中部分函数运行于RAM中的方法

80x86指令系统的指令大全详细资料说明

80x86指令系统 80x86的指令系统可以分为以下6组:数据传送类指令 算术指令 逻辑指令 串处理....
发表于 07-12 08:00 25次 阅读
80x86指令系统的指令大全详细资料说明

基于FPGA的原型可视性怎么提高

采用基于现场可编程门阵列(FPGA)的原型的验证团队面临的最大挑战之一在于当原型系统未能发挥期望的性能时了解原型系统的内部...
发表于 07-12 06:38 66次 阅读
基于FPGA的原型可视性怎么提高

ET2046低电压IO触摸屏控制电路芯片的数据手册免费下载

ET2046 是4 线触摸屏控制器,支持1.5V~5.5V 的低压I/O 接口。ET2046 具有内....
发表于 07-11 17:15 40次 阅读
ET2046低电压IO触摸屏控制电路芯片的数据手册免费下载

浅析段寄存器

1-段寄存器由来和策略
发表于 07-11 14:50 22次 阅读
浅析段寄存器

如何才能读取条件代码寄存器?

我怎样才能读取条件代码寄存器? 以上来自于谷歌翻译 以下为原文 How can i read the condition code register?...
发表于 07-11 08:55 175次 阅读
如何才能读取条件代码寄存器?

STM32F2XX标准外设库的使用手册免费下载

使用C中声明的所有位、位域和寄存器进行完整的寄存器地址映射。这避免了繁琐的任务,更重要的是,它带来了....
发表于 07-11 08:00 14次 阅读
STM32F2XX标准外设库的使用手册免费下载

使用MSP430F1611中的大RAM需要注意那些事项

TI推出了拥有10K内置SRAM的单片机MSP430F16l1,许多用户在使用中发现在IAR环境中不....
发表于 07-10 17:03 27次 阅读
使用MSP430F1611中的大RAM需要注意那些事项

CANopen轻松入门教程资料免费下载

本教程适用于 CIA CANopen 协议 DS301 又名 CIA301 标准。用户须已经掌握 C....
发表于 07-09 08:00 37次 阅读
CANopen轻松入门教程资料免费下载

西门子S7-1200组态控制的详细资料说明

组态控制的优势和应用组态控制功能可以用来创建一个要在多种不同安装中使用的自动化解决方案(机器),各种....
发表于 07-08 08:00 39次 阅读
西门子S7-1200组态控制的详细资料说明

如何在Vivado中实现逻辑锁定和增量编译工程实例说明

本文针对Vivado中实现的逻辑锁定和增量编译进行的工程实例介绍,文中有对应工程的下载地址。友情提示....
的头像 FPGA之家 发表于 07-06 10:32 348次 阅读
如何在Vivado中实现逻辑锁定和增量编译工程实例说明

JDY-40无线串口模块的用户手册免费下载

 JDY-40 采用 2.4G 技术开发,视距 120 米,采用串口通信接口,使用简单快捷,只需要了....
发表于 07-05 08:00 31次 阅读
JDY-40无线串口模块的用户手册免费下载

74HC595移位寄存器芯片的中文资料免费下载

本文档的主要内容详细介绍的是74HC595移位寄存器芯片的中文资料免费下载 8位串行输入/输出或者并....
发表于 07-04 14:52 40次 阅读
74HC595移位寄存器芯片的中文资料免费下载

单片机的一些复习资料合集免费下载

1. P2口通常用作(高8位地址线),也可以作通用的I/O口使用 2. 若由程序设定RS1、RS0....
发表于 07-04 08:00 73次 阅读
单片机的一些复习资料合集免费下载

IP67现场总线IO的详细资料介绍

本文档的主要内容详细介绍的是IP67现场总线IO的详细资料免费下载。
发表于 07-04 08:00 29次 阅读
IP67现场总线IO的详细资料介绍

Verilog HDL的基础知识详细说明

硬件描述语言基本语法和实践 (1)VHDL 和Verilog HDL的各自特点和应用范围 (2)....
发表于 07-03 17:36 50次 阅读
Verilog HDL的基础知识详细说明

MM54HC595和MM74HC595带输出锁存的8位移位寄存器的数据手册免费下载

这种高速移位寄存器采用了先进的硅栅CMOS技术。该器件具有标准CMOS集成电路的高抗噪性和低功耗,并....
发表于 07-02 16:33 41次 阅读
MM54HC595和MM74HC595带输出锁存的8位移位寄存器的数据手册免费下载

MPU-6050基本寄存器大全的说明

MPU-6000可以使用SPI和I2C接口,而MPU-6050只能使用I2C,其中I2C的地址由AD....
发表于 07-01 08:00 68次 阅读
MPU-6050基本寄存器大全的说明

如何使用8位单片机对16位INT型数据进行操作

在8位单片机中没有16位数的操作指令,所有的int型数据都要通过两个字节分开操作,使用的方法不用,生....
的头像 单片机精讲吴鉴鹰 发表于 06-30 10:29 282次 阅读
如何使用8位单片机对16位INT型数据进行操作

74HC165 8位移位寄存器的中文手册免费下载

本文档的主要内容详细介绍的是74HC165 8位移位寄存器的中文手册免费下载。
发表于 06-28 16:57 104次 阅读
74HC165 8位移位寄存器的中文手册免费下载

MM54HC165和MM74HC165并行输入串行输出8位移位寄存器的数据手册

MM54HC165/MM74HC165高速并行输入/串行输出移位寄存器采用先进的硅金属陶瓷工艺。它具....
发表于 06-27 17:34 54次 阅读
MM54HC165和MM74HC165并行输入串行输出8位移位寄存器的数据手册

不同移位寄存器基本数据输入/输出摘要

移位寄存器用于数据存储或数据移动,因此通常用于计算器内部或计算机在将数据添加到一起之前存储数据,例如....
的头像 模拟对话 发表于 06-26 15:21 162次 阅读
不同移位寄存器基本数据输入/输出摘要

UNIX环境高级编程第3版PDF电子书免费下载

 所有操作系统都为它们所运行的程序提供服务。典型的服务包括:执行新程序、打开文件、读文件、分配存储区....
发表于 06-25 08:00 52次 阅读
UNIX环境高级编程第3版PDF电子书免费下载

技术 | FANUC数据寄存器和位置寄存器的运用介绍

寄存器指令 Registers① 寄存器指令R[i] i=1~200② 位置寄存器指令PR[i] i....
的头像 工控云学堂 发表于 06-24 17:15 314次 阅读
技术 | FANUC数据寄存器和位置寄存器的运用介绍

树莓派的功能详细资料讲解

树莓派是一个神奇的小电脑• 树莓派GPIO编号方式• 功能物理引脚: 从左到右,从上到下:左边基数,....
发表于 06-24 08:00 148次 阅读
树莓派的功能详细资料讲解

树莓派的IO口详细资料简介

wiringPi GPIO• linux系统学习一段时间后发现它非常有魅力,一个简单的IO口输出操作....
发表于 06-24 08:00 106次 阅读
树莓派的IO口详细资料简介

STM32F1寄存器版本开发指南资料免费下载

本手册为 ALIENTEK 精英 STM32F103 V1 开发板的配套教程,在开发板配套的光盘里面....
发表于 06-24 08:00 54次 阅读
STM32F1寄存器版本开发指南资料免费下载

工业机器人FANUC数据位置寄存器和位置寄存器的运用小知识分享

工业机器人FANUC数据位置寄存器和位置寄存器的运用 一、寄存器指令 Registers① 寄存器....
的头像 柔智机器人 发表于 06-22 10:08 524次 阅读
工业机器人FANUC数据位置寄存器和位置寄存器的运用小知识分享

ATMEL SAMC21的UART驱动寄存器操作和程序免费下载

本文档的主要内容详细介绍的是ATMEL SAMC21的UART驱动寄存器操作和程序免费下载。
发表于 06-20 08:00 47次 阅读
ATMEL SAMC21的UART驱动寄存器操作和程序免费下载

ATMEL SAMC21的SPI驱动寄存器操作和程序免费下载

本文档的主要内容详细介绍的是ATMEL SAMC21的SPI驱动寄存器操作和程序免费下载。
发表于 06-20 08:00 45次 阅读
ATMEL SAMC21的SPI驱动寄存器操作和程序免费下载

ATMEL SAMC21的EEPROM驱动寄存器操作和程序免费下载

本文档的主要内容详细介绍的是ATMEL SAMC21的EEPROM驱动寄存器操作和程序免费下载。
发表于 06-20 08:00 45次 阅读
ATMEL SAMC21的EEPROM驱动寄存器操作和程序免费下载

ATMEL SAMC21的ADC驱动寄存器操作和寄存器程序合集免费下载

本文档的主要内容详细介绍的是ATMEL SAMC21的ADC驱动寄存器操作和寄存器程序合集免费下载。
发表于 06-20 08:00 40次 阅读
ATMEL SAMC21的ADC驱动寄存器操作和寄存器程序合集免费下载

ATMEL SAMC21的DAC驱动寄存器操作和寄存器代码免费下载

本文档的主要内容详细介绍的是ATMEL SAMC21的DAC驱动寄存器操作和寄存器代码免费下载。
发表于 06-20 08:00 44次 阅读
ATMEL SAMC21的DAC驱动寄存器操作和寄存器代码免费下载

Atmel SAMC21的I2C驱动寄存器操作和寄存器代码免费下载

本文档的主要内容详细介绍的是Atmel SAMC21的I2C驱动寄存器操作和寄存器代码免费下载。
发表于 06-20 08:00 49次 阅读
Atmel SAMC21的I2C驱动寄存器操作和寄存器代码免费下载

Atmega16寄存器的详细表格资料免费下载

本文档的主要内容详细介绍的是Atmega16寄存器的详细表格资料免费下载。1.PB5:8 位双向I/....
发表于 06-18 17:20 37次 阅读
Atmega16寄存器的详细表格资料免费下载

LabVIEW教程之循环结构的详细资料说明

LabVIEW中的循环结构有 for 循环和 while 循环。其功能与文本语言的循环结构的功能类似....
发表于 06-17 16:42 38次 阅读
LabVIEW教程之循环结构的详细资料说明

LabVIEW教程之缓存重用结构的资料说明

这其实是利用了移位寄存器两端接线端指向的是同一块内存这一特性,主动的告诉 LabVIEW 这段代码上....
发表于 06-17 16:42 42次 阅读
LabVIEW教程之缓存重用结构的资料说明

51单片机的定时器

从上面定时器/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:T....
发表于 06-17 15:02 210次 阅读
51单片机的定时器

单片机定时器/计数器的结构

 每来一个脉冲计数器加1,当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零,且计数....
发表于 06-17 09:57 166次 阅读
单片机定时器/计数器的结构

STM32定时器原理与使用

定时器的定时时间等于计数器的中断周期乘以中断的次数。计数器在 CK_CNT 的驱动下,计一个数的时间....
发表于 06-17 09:40 130次 阅读
STM32定时器原理与使用

单片机定时器/计数器基本原理

AT89S52单片机内部的定时/计数器的结构如图2所示。定时器T0由特殊功能寄存器TL0(低8位)和....
发表于 06-17 09:19 94次 阅读
单片机定时器/计数器基本原理

LabVIEW教程之结构与属性控制的详细资料说明

本文档的主要内容详细介绍的是LabVIEW教程之结构与属性控制的详细资料说明。
发表于 06-14 17:15 197次 阅读
LabVIEW教程之结构与属性控制的详细资料说明

嵌入式系统教程之嵌入式系统的IO模块详细资料说明

本文档的主要内容详细介绍的是嵌入式系统教程之嵌入式系统的IO模块详细资料说明包括了:1 复位电....
发表于 06-14 17:14 50次 阅读
嵌入式系统教程之嵌入式系统的IO模块详细资料说明

8051单片机中的寄存器是算CPU还是RAM

综合理解:有以下几种可能: 1、CPU是一个抽象的概念,如同操作系统这个概念一样没有明确的界线....
发表于 06-14 15:42 115次 阅读
8051单片机中的寄存器是算CPU还是RAM

DAC7641电压输出数模转换器的数据手册免费下载

DAC7641是一个16位的电压输出数字模拟转换器(DAC),在规定的温度范围内保证15位的单调性能....
发表于 06-14 08:00 48次 阅读
DAC7641电压输出数模转换器的数据手册免费下载

DAC7641数字模拟转换器的数据手册免费下载

DAC7641是一个16位的电压输出数字模拟转换器(DAC),在规定的温度范围内保证15位的单调性能....
发表于 06-14 08:00 57次 阅读
DAC7641数字模拟转换器的数据手册免费下载

LPDDR5和UFS 3.0 下一代存储技术简析

如今的存储技术不像显示器那样更迭的十分快,但是这些存储技术对于智能手机的流畅体验至关重要,在这里我们....
发表于 06-13 10:35 388次 阅读
LPDDR5和UFS 3.0 下一代存储技术简析

四个单片机原理与应用的实验指导书资料免费下载

本文档的主要内容详细介绍的是四个单片机原理与应用的实验指导书资料免费下载实验项目包括了:实验一 I/....
发表于 06-13 08:00 44次 阅读
四个单片机原理与应用的实验指导书资料免费下载

STM32F1单片机的IO位带操作头文件免费下载

本文档的主要内容详细介绍的是STM32F1单片机的IO位带操作头文件免费下载。
发表于 06-12 16:31 63次 阅读
STM32F1单片机的IO位带操作头文件免费下载

如何使用CPLD实现Watchdog功能

  CPLD实现Watchdog 功能,通过对寄存器的操作,实现Watchdog各项功能。CPLD ....
发表于 06-12 15:59 47次 阅读
如何使用CPLD实现Watchdog功能

使用FPGA实现读取按键信号的实验资料说明

 FPGA 的所有 I/O 控制块允许每个 I/O 引脚单独配置为输入口,不过这种配置是系统自动完成....
发表于 06-06 17:52 93次 阅读
使用FPGA实现读取按键信号的实验资料说明

SMV512K32-SP 16MB 防辐射 SRAM

SMV512K32是一款高性能异步CMOS SRAM,由32位524,288个字组成。可在两种模式:主控或受控间进行引脚选择。主设件为用户提供了定义的自主EDAC擦除选项。从器件选择采用按要求擦除特性,此特性可由一个主器件启动。根据用户需要,可提供3个读周期和4个写周期(描述如下)。 特性 20ns读取,13.8ns写入(最大存取时间) 与商用 512K x 32 SRAM器件功能兼容 内置EDAC(错误侦测和校正)以减轻软错误 用于自主校正的内置引擎 CMOS兼容输入和输出电平,3态双向数据总线 3.3±0.3VI /O,1.8±0.15V内核 辐射性能放射耐受性是一个基于最初器件标准的典型值。辐射数据和批量验收测试可用 - 细节请与厂家联系。 设计使用基底工程和抗辐射(HBD)与硅空间技术公司(SST)许可协议下的< sup> TM 技术和存储器设计。 TID抗扰度&gt; 3e5rad(Si) SER&lt; 5e-17翻转/位 - 天使用(CRPLE96来计算用于与地同步轨道,太阳安静期的SER。 LET = 110 MeV (T = 398K) 采用76引线陶瓷方形扁平封装 可提供工程评估(/EM)样品这些部件只用于工程评估。它们的加工工艺为非兼容流程(例如,无预烧过程等),...
发表于 01-08 17:47 142次 阅读
SMV512K32-SP 16MB 防辐射 SRAM

SN74HCT273A 具有清零功能的八路 D 类触发器

与其它产品相比 D 类触发器   Technology Family VCC (Min) (V) VCC (Max) (V) Rating Operating temperature range (C)   SN74HCT273A HCT     2     6     Catalog     -40 to 85    
发表于 01-08 17:46 96次 阅读
SN74HCT273A 具有清零功能的八路 D 类触发器

SN74HC273A 具有清零功能的八路 D 类触发器

与其它产品相比 D 类触发器   Technology Family VCC (Min) (V) VCC (Max) (V) Bits (#) Rating Operating temperature range (C)   SN74HC273A HC     2     6     8     Catalog     -40 to 85    
发表于 01-08 17:46 102次 阅读
SN74HC273A 具有清零功能的八路 D 类触发器

SN74ABT16373A 具有三态输出的 16 位透明 D 类锁存器

'ABT16373A是16位透明D型锁存器,具有3态输出,专为驱动高电容或相对低阻抗负载而设计。它们特别适用于实现缓冲寄存器,I /O端口,双向总线驱动器和工作寄存器。 这些器件可用作两个8位锁存器或一个16位锁存器。当锁存使能(LE)输入为高电平时,Q输出跟随数据(D)输入。当LE变为低电平时,Q输出锁存在D输入端设置的电平。 缓冲输出使能(OE \)输入可用于将8个输出置于正常逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 OE \不会影响锁存器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 当VCC介于0和2.1 V之间时,器件在上电或断电期间处于高阻态。但是,为了确保2.1 V以上的高阻态,OE \应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 SN54ABT16373A的特点是可在-55°C至125°C的整个军用温度范围内工作。 SN74ABT16373A的特点是在-40°C至85°C的温度范围内工作。 ...
发表于 10-11 15:07 68次 阅读
SN74ABT16373A 具有三态输出的 16 位透明 D 类锁存器

SN74ALVCH16820 具有双路输出和三态输出的 3.3V 10 位触发器

这个10位触发器设计用于1.65 V至3.6 VVCC操作。 < p> SN74ALVCH16820的触发器是边沿触发的D型触发器。在时钟(CLK)输入的正跳变时,器件在Q输出端提供真实数据。 缓冲输出使能(OE)输入可用于将10个输出放入正常逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 OE \输入不会影响触发器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 为确保上电或断电期间的高阻态,OE \应连接到VCC通过上拉电阻;电阻的最小值由驱动器的电流吸收能力决定。 提供有源总线保持电路,用于将未使用或未驱动的输入保持在有效的逻辑电平。不建议在上拉电路中使用上拉或下拉电阻。 特性 德州仪器广播公司的成员?系列 数据输入端的总线保持消除了对外部上拉/下拉电阻的需求 每个JESD的闩锁性能超过250 mA 17 ESD保护超过JESD 22 2000-V人体模型(...
发表于 10-11 14:49 20次 阅读
SN74ALVCH16820 具有双路输出和三态输出的 3.3V 10 位触发器

SN74ABT16374A 具有三态输出的 16 位边沿 D 类触发器

'ABT16374A是16位边沿触发D型触发器,具有3态输出,专为驱动高电容或相对低阻抗而设计负载。它们特别适用于实现缓冲寄存器,I /O端口,双向总线驱动器和工作寄存器。 这些器件可用作两个8位触发器或一个16位触发器。在时钟(CLK)输入的正跳变时,触发器的Q输出采用在数据(D)输入处设置的逻辑电平。 缓冲输出使能(OE \)输入可用于将8个输出置于正常逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 OE \不会影响触发器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 当VCC介于0和2.1 V之间时,器件在上电或断电期间处于高阻态。但是,为了确保2.1 V以上的高阻态,OE \应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 SN54ABT16374A的特点是可在-55°C至125°C的整个军用温度范围内工作。 SN74ABT16374A的特点是在-40°C至85°C的温度范围内工作。 特性 ...
发表于 10-11 11:46 36次 阅读
SN74ABT16374A 具有三态输出的 16 位边沿 D 类触发器

SN74AHCT16374 具有三态输出的 16 位边沿 D 类触发器

'AHCT16374器件是16位边沿触发D型触发器,具有3态输出,专为驱动高电容或相对较低的电容而设计阻抗负载。它们特别适用于实现缓冲寄存器,I /O端口,双向总线驱动器和工作寄存器。 这些器件可用作两个8位触发器或一个16位触发器。在时钟(CLK)输入的正跳变时,触发器的Q输出取数据(D)输入的逻辑电平。 缓冲输出使能(OE \)输入可用于将8个输出置于正常逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 为了确保上电或断电期间的高阻态,OE \应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 OE \不会影响触发器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 SN54AHCT16374的特点是可在-55°C至125°C的整个军用温度范围内工作。 SN74AHCT16374的工作温度范围为-40°C至85°C。   特性 德州仪器WidebusTM家庭成员 EPICTM(...
发表于 10-11 11:32 38次 阅读
SN74AHCT16374 具有三态输出的 16 位边沿 D 类触发器

CY74FCT162374T 具有三态输出的 16 位边沿触发 D 类触发器

CY74FCT16374T和CY74FCT162374T是16位D型寄存器,设计用作高速,低功耗总线应用中的缓冲寄存器。通过连接输出使能(OE)和时钟(CLK)输入,这些器件可用作两个独立的8位寄存器或单个16位寄存器。流通式引脚排列和小型收缩包装有助于简化电路板布局。 使用Ioff为部分断电应用完全指定此设备。 Ioff电路禁用输出,防止在断电时损坏通过器件的电流回流。 CY74FCT16374T非常适合驱动高电容负载和低阻抗背板。 CY74FCT162374T具有24 mA平衡输出驱动器,输出端带有限流电阻。这减少了对外部终端电阻的需求,并提供最小的下冲和减少的接地反弹。 CY74FCT162374T非常适合驱动传输线。 特性 Ioff支持部分省电模式操作 边沿速率控制电路用于显着改善的噪声特性 典型的输出偏斜< 250 ps ESD&gt; 2000V TSSOP(19.6密耳间距)和SSOP(25密耳间距)封装 工业温度范围-40°C至+ 85°C VCC= 5V±10% CY74FCT16374T特点: ...
发表于 10-11 11:28 43次 阅读
CY74FCT162374T 具有三态输出的 16 位边沿触发 D 类触发器

SN74ALVCH16260 具有三态输出的 12 位至 24 位多路复用 D 类锁存器

这个12位至24位多路复用D型锁存器设计用于1.65 V至3.6 VVCC操作。 SN74ALVCH16260用于必须将两个独立数据路径复用到单个数据路径或从单个数据路径解复用的应用中。典型应用包括在微处理器或总线接口应用中复用和/或解复用地址和数据信息。该器件在存储器交错应用中也很有用。 三个12位I /O端口(A1-A12,1B1-1B12和2B1-2B12)可用于地址和/或数据传输。输出使能(OE1B \,OE2B \和OEA \)输入控制总线收发器功能。 OE1B \和OE2B \控制信号还允许在A到B方向上进行存储体控制。 可以使用内部存储锁存器存储地址和/或数据信息。锁存使能(LE1B,LE2B,LEA1B和LEA2B)输入用于控制数据存储。当锁存使能输入为高电平时,锁存器是透明的。当锁存使能输入变为低电平时,输入端的数据被锁存并保持锁存,直到锁存使能输入返回高电平为止。 确保上电或断电期间的高阻态,OE \应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 提供有源总线保持电路,用于保持有效逻辑电平的未使用或浮动数据输入。 < p> SN74ALVCH16260的工...
发表于 10-11 11:08 25次 阅读
SN74ALVCH16260 具有三态输出的 12 位至 24 位多路复用 D 类锁存器

SN74ALVCH16374 具有三态输出的 16 位边沿 D 类触发器

这个16位边沿触发D型触发器设计用于1.65 V至3.6 VVCC操作。 SN74ALVCH16374特别适用于实现缓冲寄存器,I /O端口,双向总线驱动器和工作寄存器。它可以用作两个8位触发器或一个16位触发器。在时钟(CLK)输入的正跳变时,触发器的Q输出取数据(D)输入的逻辑电平。 OE \可用于将8个输出置于正常逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 OE \不会影响触发器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 为确保上电或断电期间的高阻态,OE \应连接到VCC通过上拉电阻;电阻的最小值由驱动器的电流吸收能力决定。 有源总线保持电路将未使用或未驱动的输入保持在有效的逻辑状态。不建议在上拉电路中使用上拉或下拉电阻。 特性 德州仪器广播公司的成员?系列 工作电压范围为1.65至3.6 V 最大tpd为4.2 ns,3.3 V ±24-mA输出驱动在3.3 V 数据输入...
发表于 10-11 11:06 29次 阅读
SN74ALVCH16374 具有三态输出的 16 位边沿 D 类触发器

SN74ALVCH16373 具有三态输出的 16 位透明 D 类锁存器

这个16位透明D型锁存器设计用于1.65 V至3.6 VVCC操作。 SN74ALVCH16373特别适用于实现缓冲寄存器,I /O端口,双向总线驱动器和工作寄存器。该器件可用作两个8位锁存器或一个16位锁存器。当锁存使能(LE)输入为高电平时,Q输出跟随数据(D)输入。当LE变为低电平时,Q输出锁存在D输入设置的电平。 缓冲输出使能(OE)输入可用于将8个输出置于正常状态逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 OE \不会影响锁存器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 为确保上电或断电期间的高阻态,OE \应连接到VCC通过上拉电阻;电阻的最小值由驱动器的电流吸收能力决定。 有源总线保持电路将未使用或未驱动的输入保持在有效的逻辑状态。不建议在上拉电路中使用上拉或下拉电阻。 特性 德州仪器广播公司的成员?系列 工作电压范围为1.65 V至3.6 V 最大tpd3.6 ns,3.3 V ...
发表于 10-11 11:02 38次 阅读
SN74ALVCH16373 具有三态输出的 16 位透明 D 类锁存器

SN74LVCH16373A 具有三态输出的 16 位透明 D 类锁存器

这个16位透明D型锁存器设计用于1.65 V至3.6 VVCC操作。 特性 德州仪器宽带总线系列成员 典型VOLP(输出接地反弹) &lt; 0.8 V,VCC= 3.3 V,TA= 25°C 典型VOHV(输出V < sub> OH Undershoot) &gt; 2 V在VCC= 3.3 V,TA= 25°C Ioff支持实时插入,部分 - 电源关闭模式和后驱动保护 支持混合模式信号操作(具有3.3VVCC的5V输入和输出电压) < li>数据输入端的总线保持消除了对外部上拉或下拉电阻的需求 每个JESD的闩锁性能超过250 mA 17 ESD保护超过JESD 22 < ul> 2000-V人体模型(A114-A) 200-V机型(A115-A) 参数 与其它产品相比 D 类锁存器   Technology Family VCC (Min) (V) VCC (Max) (V) Bits (#) ...
发表于 10-11 11:00 107次 阅读
SN74LVCH16373A 具有三态输出的 16 位透明 D 类锁存器

SN74ABTH16260 具有三态输出的 12 位至 24 位多路复用 D 类锁存器

SN54ABT16260和SN74ABTH16260是12位至24位多路复用D型锁存器,用于必须复用两条独立数据路径的应用中,或者从单个数据路径中解复用。典型应用包括在微处理器或总线接口应用中复用和/或解复用地址和数据信息。该器件在存储器交错应用中也很有用。 三个12位I /O端口(A1-A12,1B1-1B12和2B1-2B12)可用于地址和/或数据传输。输出使能(OE1B \,OE2B \和OEA \)输入控制总线收发器功能。 OE1B \和OE2B \控制信号还允许A-to-B方向的存储体控制。 可以使用内部存储锁存器存储地址和/或数据信息。锁存使能(LE1B,LE2B,LEA1B和LEA2B)输入用于控制数据存储。当锁存使能输入为高电平时,锁存器是透明的。当锁存使能输入变为低电平时,输入端的数据被锁存并保持锁存状态,直到锁存使能输入返回高电平为止。 当VCC介于0和2.1 V之间时,器件在上电或断电期间处于高阻态。但是,为了确保2.1 V以上的高阻态,OE \应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 提供有源总线保持电路,用于保持有效逻辑电平的未使用或浮动数据输入。 ...
发表于 10-11 10:51 28次 阅读
SN74ABTH16260 具有三态输出的 12 位至 24 位多路复用 D 类锁存器

SN74ABT162823A 具有三态输出的 18 位总线接口触发器

这些18位总线接口触发器具有3态输出,专为驱动高电容或相对低阻抗负载而设计。它们特别适用于实现更宽的缓冲寄存器,I /O端口,带奇偶校验的双向总线驱动器和工作寄存器。 ?? ABT162823A器件可用作两个9位触发器或一个18位触发器。当时钟使能(CLKEN)\输入为低电平时,D型触发器在时钟的低到高转换时输入数据。将CLKEN \置为高电平会禁用时钟缓冲器,从而锁存输出。将清零(CLR)\输入设为低电平会使Q输出变为低电平而与时钟无关。 缓冲输出使能(OE)\输入将9个输出置于正常逻辑状态(高电平)或低电平)或高阻抗状态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动器提供了驱动总线线路的能力,无需接口或上拉组件。 OE \不会影响触发器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 输出设计为源电流或吸收电流高达12 mA,包括等效的25- 串联电阻,用于减少过冲和下冲。 这些器件完全符合热插拔规定使用Ioff和上电3状态的应用程序。 Ioff电路禁用输出,防止在断电时损坏通过器件的电流回流。上电和断电期间,上电三态电路将输出置...
发表于 10-11 10:48 40次 阅读
SN74ABT162823A 具有三态输出的 18 位总线接口触发器

SN74ABTH162260 具有串联阻尼电阻和三态输出的 12 位到 24 位多路复用 D 类锁存器

'ABTH162260是12位至24位多路复用D型锁存器,用于两个独立数据路径必须复用或复用的应用中。 ,单一数据路径。典型应用包括在微处理器或总线接口应用中复用和/或解复用地址和数据信息。这些器件在存储器交错应用中也很有用。 三个12位I /O端口(A1-A12,1B1-1B12和2B1-2B12)可用于地址和/或数据传输。输出使能(OE1B \,OE2B \和OEA \)输入控制总线收发器功能。 OE1B \和OE2B \控制信号还允许A-to-B方向的存储体控制。 可以使用内部存储锁存器存储地址和/或数据信息。锁存使能(LE1B,LE2B,LEA1B和LEA2B)输入用于控制数据存储。当锁存使能输入为高电平时,锁存器是透明的。当锁存使能输入变为低电平时,输入端的数据被锁存并保持锁存状态,直到锁存使能输入返回高电平为止。 B端口输出设计为吸收高达12 mA的电流,包括等效的25系列电阻,以减少过冲和下冲。 提供有源总线保持电路,用于保持有效逻辑电平的未使用或浮动数据输入。 当VCC介于0和2.1 V之间时,器件在上电或断电期间处于高阻态。但是,为了确保2.1 V以上的高阻态,OE \应通过...
发表于 10-11 10:45 18次 阅读
SN74ABTH162260 具有串联阻尼电阻和三态输出的 12 位到 24 位多路复用 D 类锁存器

SN74ABT162841 具有三态输出的 20 位总线接口 D 类锁存器

这些20位透明D型锁存器具有同相三态输出,专为驱动高电容或相对低阻抗负载而设计。它们特别适用于实现缓冲寄存器,I /O端口,双向总线驱动器和工作寄存器。 ?? ABT162841器件可用作两个10位锁存器或一个20位锁存器。锁存使能(1LE或2LE)输入为高电平时,相应的10位锁存器的Q输出跟随数据(D)输入。当LE变为低电平时,Q输出锁存在D输入设置的电平。 缓冲输出使能(10E或2OE)输入可用于放置输出。相应的10位锁存器处于正常逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。 输出设计为吸收高达12 mA的电流,包括等效的25- 用于减少过冲和下冲的串联电阻。 这些器件完全适用于使用I的热插入应用关闭并启动3状态。 Ioff电路禁用输出,防止在断电时损坏通过器件的电流回流。上电和断电期间,上电三态电路将输出置于高阻态,从而防止驱动器冲突。 为确保上电或断电期间的高阻态, OE \应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 OE \不影响锁存器的内部操作。当输出处于高阻态时,可以保留旧数据...
发表于 10-11 10:43 42次 阅读
SN74ABT162841 具有三态输出的 20 位总线接口 D 类锁存器

SN74ALVTH16821 具有三态输出的 2.5V/3.3V 20 位总线接口触发器

'ALVTH16821器件是20位总线接口触发器,具有3态输出,设计用于2.5 V或3.3 VVCC操作,但能够为5 V系统环境提供TTL接口。 这些器件可用作两个10位触发器或一个20位触发器。 20位触发器是边沿触发的D型触发器。在时钟(CLK)的正跳变时,触发器存储在D输入端设置的逻辑电平。 缓冲输出使能(OE \)输入可用于将10个输出置于正常逻辑状态(高电平或低电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 OE \不会影响触发器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 当VCC介于0和1.2 V之间时,器件在上电或断电期间处于高阻态。但是,为了确保1.2 V以上的高阻态,OE \应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 提供有源总线保持电路,用于保持有效逻辑电平的未使用或浮动数据输入。 SN54ALVTH16821的特点是可在-55°C至125°C的整个军用温度范围内工作。 SN74ALVTH16821的工作温度范围为-40&de...
发表于 10-11 10:35 20次 阅读
SN74ALVTH16821 具有三态输出的 2.5V/3.3V 20 位总线接口触发器

SN74ALVTH16374 具有三态输出的 2.5V/3.3V 16 位边沿 D 类触发器

'ALVTH16374器件是16位边沿触发D型触发器,具有3态输出,设计用于2.5V或3.3VV < sub> CC 操作,但能够为5 V系统环境提供TTL接口。这些器件特别适用于实现缓冲寄存器,I /O端口,双向总线驱动器和工作寄存器。 这些器件可用作两个8位触发器或一个16位翻转器。翻牌。在时钟(CLK)的正跳变时,触发器存储在数据(D)输入处设置的逻辑电平。 缓冲输出使能(OE)输入可用于将8个输出置于正常逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 OE不影响触发器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 提供有源总线保持电路,用于保持有效逻辑电平的未使用或浮动数据输入。 /p> 当VCC介于0和1.2 V之间时,器件在上电或断电期间处于高阻态。但是,为了确保1.2 V以上的高阻态,OE应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 SN54ALVTH16374的特点是在-55°C至125°C的整个军用温度...
发表于 10-11 10:31 25次 阅读
SN74ALVTH16374 具有三态输出的 2.5V/3.3V 16 位边沿 D 类触发器

SN74ABTH16823 具有三态输出的 18 位总线接口触发器

这些18位触发器具有3态输出,专为驱动高电容或相对低阻抗负载而设计。它们特别适用于实现更宽的缓冲寄存器,I /O端口,带奇偶校验的双向总线驱动器和工作寄存器。 'ABTH16823可用作两个9位触发器或一个18位触发器。当时钟使能(CLKEN \)输入为低电平时,D型触发器在时钟的低到高转换时输入数据。将CLKEN \置为高电平会禁用时钟缓冲器,锁存输出。将清零(CLR \)输入置为低电平会使Q输出变为低电平,与时钟无关。 缓冲输出使能(OE \)输入可用于将9个输出置于正常逻辑状态(高或低逻辑电平)或高阻态。在高阻抗状态下,输出既不会加载也不会显着驱动总线。高阻抗状态和增加的驱动提供了驱动总线的能力,而无需接口或上拉组件。 OE \不会影响触发器的内部操作。当输出处于高阻态时,可以保留旧数据或输入新数据。 当VCC介于0和2.1 V之间时,器件在上电或断电期间处于高阻态。但是,为了确保2.1 V以上的高阻态,OE \应通过上拉电阻连接到VCC;电阻的最小值由驱动器的电流吸收能力决定。 提供有源总线保持电路,用于保持有效逻辑电平的未使用或浮动数据输入。 ...
发表于 10-10 17:15 37次 阅读
SN74ABTH16823 具有三态输出的 18 位总线接口触发器

SN74AHCT16373 具有三态输出的 16 位透明 D 类锁存器

SNxAHCT16373器件是16位透明D型锁存器,具有3态输出,专为驱动高电容或相对低阻抗负载而设计。它们特别适用于实现缓冲寄存器,I /O端口,双向总线驱动器和工作寄存器。 特性 德州仪器Widebus™系列的成员 EPIC™(增强型高性能注入CMOS)工艺 输入兼容TTL电压 分布式VCC和GND引脚最大限度地提高高速 开关噪声 流通式架构优化PCB布局 每个JESD的闩锁性能超过250 mA 17 ESD保护每个MIL-STD超过2000 V- 883, 方法3015;使用机器型号超过200 V(C = 200 pF,R = 0) 封装选项包括: 塑料收缩小外形(DL)封装 < li>薄收缩小外形(DGG)封装 薄超小外形(DGV)封装 80-mil精细间距陶瓷扁平(WD)封装 25密耳的中心间距 参数 与其它产品相比 D 类锁存器   ...
发表于 10-10 16:23 54次 阅读
SN74AHCT16373 具有三态输出的 16 位透明 D 类锁存器
网站地图