CN105446929A - 一种支持spi、i2c、i2cl、uart协议的端口复用电路 - Google Patents
一种支持spi、i2c、i2cl、uart协议的端口复用电路 Download PDFInfo
- Publication number
- CN105446929A CN105446929A CN201510921629.4A CN201510921629A CN105446929A CN 105446929 A CN105446929 A CN 105446929A CN 201510921629 A CN201510921629 A CN 201510921629A CN 105446929 A CN105446929 A CN 105446929A
- Authority
- CN
- China
- Prior art keywords
- door
- port
- host
- protocol control
- data transmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种支持SPI、I2C、I2CL、UART协议的端口复用电路,将多种传输协议端口集成在四个端口上进行选择复用,总体结构包括MCU处理器、传输协议端口选择电路、各传输协议数据控制电路等。其中,传输协议端口选择电路与MCU连接,通过MCU输入IFSEL0、IFSEL1的值来确定所选用的传输协议。同时也确定了四个专用端口的状态,然后就可实现具体传输协议的数据流通传输。本发明解决了端口专用集成复用的问题,实现集成化,易控化使用。
Description
技术领域
本发明涉及一种支持SPI、I2C、I2CL、UART协议的端口复用电路,属于电子技术领域。
背景技术
在电子技术领域中,随着芯片的封装体积越来越小,输入输出(IO)资源也非常宝贵,在很多功能实现中需要占用大量的通用输入输出(GeneralPurposeInputOutput,GPIO)端口,如何做到利用有限GPIO端口资源实现更多的功能变得越来越重要。随着电子技术的不断发展,集成化、专用化的端口使用也越来越得到学者、专家们的认可。在现有的需进行数据传输的芯片中,比如复旦微芯片系列,虽然兼容I2C、SPI、UART等数据传输协议,但数据传输接口却没有集成化非常零散,占用端口资源多,这样就使得芯片控制使用不方便,又增加成本。
发明内容
为解决如何实现多传输协议传输端口集成复用问题,本发明提供一种支持SPI、I2C、I2CL、UART协议的端口复用电路,将多种传输协议端口集成在四个端口上进行选择复用,通过端口IFSEL0、IFSEL1来进行选择。本发明中数据传输协议接口选择电路与MCU连接,通过MCU输入IFSEL0、IFSEL1的值来确定所选用的传输协议。当确定传输协议后,也就确定了端口使用状态,传输协议控制流控制着地址信息,数据信息分别进入地址总线与数据总线。这样就简单、高效、方便的实现了数据的写入与读出。
本发明为解决上述技术问题采用以下技术方案:
本发明提供一种支持SPI、I2C、I2CL、UART协议的端口复用电路,包括第一至第六数据传输接口、MCU处理器、传输协议端口选择电路、SPI协议控制电路、I2C协议控制电路、I2CL协议控制电路、UART协议控制电路,其中,
所述MCU处理器通过第一和第二数据传输接口与传输协议端口选择电路连接,用于将两路控制指令发送至传输协议端口选择电路;
所述第二至第四数据传输接口均分别与MCU处理器和传输协议端口选择电路连接;
所述传输协议端口选择电路的四个输出端分别与SPI协议控制电路、I2C协议控制电路、I2CL协议控制电路、UART协议控制电路连接,用于根据接收到的两路控制指令确定选用的传输协议。
作为本发明的进一步优化方案,所述两路控制指令均为0或1。
作为本发明的进一步优化方案,所述传输协议端口选择电路包括2-4译码器、第一至第十二与门、三输入或门、二输入或门、二输入或门,其中,
2-4译码器的两个输入端分别与第一、第二数据传输接口连接,用于接收的两路控制指令;2-4译码器的第一输出端口分别与第一与门、第九与门的使能输入端连接,第一与门、第九与门的数据输入端分别与第三数据传输接口、UART协议控制电路的输出端连接,第一与门的输出端与UART协议控制电路的输入端连接;第二输出端口分别与第二与门、第三与门、第四与门、第十与门的使能输入端连接,第二与门、第三与门、第四与门、第十与门的数据输入端分别与第三数据传输接口、第四数据传输接口、第六数据传输接口、SPI协议控制电路的输出端连接,第二与门、第三与门、第四与门的输出端分别与SPI协议控制电路的输入端连接;第三输出端口分别与第五与门、第六与门、第十一与门的使能输入端连接,第五与门、第六与门、第十一与门的数据输入端分别与第四数据传输接口、第五数据传输接口、I2C协议控制电路的输出端连接,第五与门、第六与门输出端分别与I2C协议控制电路的输入端连接;第四输出端口分别与第七与门、第八与门、第十二与门的使能输入端连接,第七与门、第八与门、第十二与门的数据输入端分别与第四数据传输接口、第五数据传输接口、I2CL协议控制电路的输出端链接,第七与门、第八与门的输出端分别与I2CL协议控制电路的输入端连接;
第九与门、第十与门、第十一与门的输出端分别与三输入或门的三个输入端连接,三输入或门的输出端、第十二与门的输出端分别与二输入或门的两个输入端连接,二输入或门的输出端与第五数据传输接口连接。
作为本发明的进一步优化方案,所述2-4译码器的型号是74LS139。
作为本发明的进一步优化方案,所述三输入与门的型号为74LS11。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:采用了本发明的技术方案实现多传输协议端口集成复用,硬件电路设计的成本比传输协议单独使用接口连接线的成本低很多,降低产品连接线的制作成本,同时减少芯片的引脚资源,减少了芯片面积,降低芯片制作成本。多个传输协议复用四个端口进行数据写入读出,实现集成化,易控化使用。
附图说明
图1是本发明的结构示意图。
图2是传输协议端口选择电路的原理图。
其中,201-206是第一至第六数据传输接口;207是2-4译码器;208-219是第一-第十二与门;220是三输入或门;221是二输入或门。
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明:
如图1所示,本发明提供一种支持SPI、I2C、I2CL、UART协议的端口复用电路,本发明的传输协议端口集成复用设计方案的总体结构包括MCU处理器、传输协议端口选择电路、各协议控制电路等。其中,所述的传输协议包括SPI、I2C、I2CL和UART传输协议。传输协议端口选择电路与MCU连接,MCU将通过第一和第二数据传输接口输入的两路控制指令(即IFSEL0、IFSEL1的值)传输至传输协议端口选择电路,传输协议端口选择电路根据控制指令来确定所选用的传输协议。当确定传输协议后,也就确定了端口使用状态。端口在各传输协议中使用状态表如表1所示,然后就可实现具体传输协议的数据流通传输。
表1端口在各传输协议中使用状态表
端口符号 | UART | SPI | I2C | I2C_L2 --> |
IF0 | RX | MOSI | _ | _ |
IF1 | _ | SCK | SCL | SCL |
IF2 | TX | MISO | SDA | SDA |
IF3 | _ | NSS | _ | _ |
IFSEL0 | 0 | 1 | 0 | 1 |
IFSEL1 | 0 | 0 | 1 | 1 |
传输协议接口复用选择电路主要由输入输出端口、2-4译码器、与门、或门等逻辑器件组成。其中,2-4译码器的输入端分别接收IFSEL0、IFSEL1,2-4译码器的第一至第四输出端口的输出分别为UART_EN、SPI_EN、I2C_EN和I2CL_EN。UART_EN分别与第一与门、第九与门的使能输入端相连,第一与门、第九与门的的数据输入端分别与第三数据传输接口(即端口IF0)、UART协议控制电路的输出UART_TX相连,第一与门的输出端与UART协议控制电路的输入端UART_RX相连;SPI_EN分别与第二与门、第三与门、第四与门和第十与门的使能输入端相连,第二与门、第三与门、第四与门、第十与门的数据输入端分别与第三数据传输接口(即端口IF0)、第四数据传输接口(即端口IF1)、第六数据传输接口(即端口IF3)、SPI协议控制电路输出端SPI_MISO相连,第二与门、第三与门、第四与门的输出端分别与SPI协议控制电路输入端SPI_MOSI、SPI_SCK和SPI_NSS相连;I2C_EN分别与第五与门、第六与门、第十一与门的使能输入端相连,第五与门、第六与门、第十一与门的数据输入端分别与第四数据传输接口(即端口IF1)、第五数据传输接口(即端口IF2)和I2C协议控制电路输出端I2C_SDA_OUT相连,第五与门、第六与门的输出端分别与I2C协议控制电路输入端I2C_SCL和I2C_SDA_IN相连;I2CL_EN分别与第七与门、第八与门、第十二与门的使能输入端相连,第七与门、第八与门、第十二与门的数据输入端分别与端口IF1、端口IF2、I2CL协议控制电路输出端I2CL_SDA_OUT相连,第七与门、第八与门的输出端分别与UART协议控制电路输入端I2C_SCL和I2C_SDA_IN相连。第九与门、第十与门和第十一与门的输出端分别与三输入或门的三个输入端相连,三输入或门、第十二与门的输出端与二输入或门的输入端相连,二输入或门的输出端与端口IF2相连。
MCU输出的IFSEL0、IFSEL1值为00时,经2-4译码器译码后,确定2-4译码器输出端UART_EN为真,其余输出端为假,则第一与门和第九与门导通,相当于端口IF0、IF3与UART协议控制电路的输入端UART_RX、UART_1相连接,UART协议控制电路的输出端UART_TX经三输入或门、二输入或门与端口IF2相连接。这样,就确定端口的状态:IF0被定义为主机到从机的接收数据通道RX;IF1没有被定义;IF2被定义为从机到主机的发送数据通道TX;IF3没有被定义。
MCU输出的IFSEL0、IFSEL1值为01时,经2-4译码器译码后,确定2-4译码器输出端SPI_EN为真,其余输出端为假,第二与门、第三与门、第四与门和第十与门导通,相当于端口IF0、IF1、IF3与SPI协议控制电路的输入端SPI_MOSI、SPI_SCK、SPI_NSS相连接,SPI协议控制电路的输出端SPIO_MISO经三输入或门、二输入或门与端口IF2相连接。这样,就确定端口的状态:IF0被定义为主机到从机的数据通道MOSI;IF1被定义为传输数据时所用的时钟信号SCK;IF2被定义为从机到主机的数据通道MIOS;IF3被定义为数据发送使能信号NSS。
MCU输出的IFSEL0、IFSEL1值为10时,经2-4译码器译码后,确定2-4译码器输出端I2C_EN为真,其余输出端为假,第五与门、第六与门和第十一与门导通,相当于端口IF1、IF2与I2C协议控制电路的输入端I2C_SCL、I2C_SDA_IN相连接,I2C协议控制电路的输出端I2C_SDA_OUT经三输入或门、二输入或门与端口IF2相连接。这样,就确定端口的状态:IF0没有被定义;IF1被定义为数据传输的时钟通道SCK;IF2被定义为双向传输数据通道SDA;IF3没有被定义。
MCU输出的IFSEL0、IFSEL1值为11时,经2-4译码器译码后,确定2-4译码器输出端I2CL_EN为真,其余输出端为假,第七与门、第八与门和第十二与门导通,相当于端口IF1、IF2与I2CL协议控制电路的输入端I2CL_SCL、I2CL_SDA_IN相连接,I2CL协议控制电路的输出端I2CL_SDA_OUT经三输入或门、二输入或门与端口IF2相连接。这样,就确定端口的状态:IF0没有被定义;IF1被定义为数据传输的时钟通道SCK;IF2被定义为双向传输数据通道SDA;IF3没有被定义。
以上所述,仅为本发明中的具体实施方式之一,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (5)
1.一种支持SPI、I2C、I2CL、UART协议的端口复用电路,其特征在于,包括第一至第六数据传输接口、MCU处理器、传输协议端口选择电路、SPI协议控制电路、I2C协议控制电路、I2CL协议控制电路、UART协议控制电路,其中,
所述MCU处理器通过第一和第二数据传输接口与传输协议端口选择电路连接,用于将两路控制指令发送至传输协议端口选择电路;
所述第二至第四数据传输接口均分别与MCU处理器和传输协议端口选择电路连接;
所述传输协议端口选择电路的四个输出端分别与SPI协议控制电路、I2C协议控制电路、I2CL协议控制电路、UART协议控制电路连接,用于根据接收到的两路控制指令确定选用的传输协议。
2.根据权利要求1所述的一种支持SPI、I2C、I2CL、UART协议的端口复用电路,其特征在于,所述两路控制指令均为0或1。
3.根据权利要求1或2所述的一种支持SPI、I2C、I2CL、UART协议的端口复用电路,其特征在于,所述传输协议端口选择电路包括2-4译码器、第一至第十二与门、三输入或门、二输入或门、二输入或门,其中,
2-4译码器的两个输入端分别与第一、第二数据传输接口连接,用于接收的两路控制指令;2-4译码器的第一输出端口分别与第一与门、第九与门的使能输入端连接,第一与门、第九与门的数据输入端分别与第三数据传输接口、UART协议控制电路的输出端连接,第一与门的输出端与UART协议控制电路的输入端连接;第二输出端口分别与第二与门、第三与门、第四与门、第十与门的使能输入端连接,第二与门、第三与门、第四与门、第十与门的数据输入端分别与第三数据传输接口、第四数据传输接口、第六数据传输接口、SPI协议控制电路的输出端连接,第二与门、第三与门、第四与门的输出端分别与SPI协议控制电路的输入端连接;第三输出端口分别与第五与门、第六与门、第十一与门的使能输入端连接,第五与门、第六与门、第十一与门的数据输入端分别与第四数据传输接口、第五数据传输接口、I2C协议控制电路的输出端连接,第五与门、第六与门输出端分别与I2C协议控制电路的输入端连接;第四输出端口分别与第七与门、第八与门、第十二与门的使能输入端连接,第七与门、第八与门、第十二与门的数据输入端分别与第四数据传输接口、第五数据传输接口、I2CL协议控制电路的输出端链接,第七与门、第八与门的输出端分别与I2CL协议控制电路的输入端连接;
第九与门、第十与门、第十一与门的输出端分别与三输入或门的三个输入端连接,三输入或门的输出端、第十二与门的输出端分别与二输入或门的两个输入端连接,二输入或门的输出端与第五数据传输接口连接。
4.根据权利要求3所述的一种支持SPI、I2C、I2CL、UART协议的端口复用电路,其特征在于,所述2-4译码器的型号是74LS139。
5.根据权利要求3所述的一种支持SPI、I2C、I2CL、UART协议的端口复用电路,其特征在于,所述三输入与门的型号为74LS11。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510921629.4A CN105446929A (zh) | 2015-12-14 | 2015-12-14 | 一种支持spi、i2c、i2cl、uart协议的端口复用电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510921629.4A CN105446929A (zh) | 2015-12-14 | 2015-12-14 | 一种支持spi、i2c、i2cl、uart协议的端口复用电路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105446929A true CN105446929A (zh) | 2016-03-30 |
Family
ID=55557149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510921629.4A Pending CN105446929A (zh) | 2015-12-14 | 2015-12-14 | 一种支持spi、i2c、i2cl、uart协议的端口复用电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105446929A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107704417A (zh) * | 2017-09-13 | 2018-02-16 | 成都锐成芯微科技股份有限公司 | 与被测设备通信的方法及其通信*** |
CN109783416A (zh) * | 2019-01-03 | 2019-05-21 | 深圳市度申科技有限公司 | Spi从设备和i2c从设备共用gpio的方法、电路和电子设备 |
CN112653445A (zh) * | 2020-12-03 | 2021-04-13 | 北京博雅慧视智能技术研究院有限公司 | 一种数字逻辑电路及电子设备 |
CN112804128A (zh) * | 2021-03-25 | 2021-05-14 | 广州智慧城市发展研究院 | 一种支持多协议的总线控制***及方法 |
CN114003540A (zh) * | 2021-10-29 | 2022-02-01 | 深圳市信锐网科技术有限公司 | 一种数据采集装置、方法、设备及计算机可读存储介质 |
CN114519027A (zh) * | 2022-02-21 | 2022-05-20 | 上海矽翊微电子有限公司 | 一种自适应通讯接口、通讯协议自动识别方法及电子器件 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127023A (zh) * | 2006-08-17 | 2008-02-20 | 四川维肯电子有限公司 | 一种多总线接口的通用异步串口扩展芯片 |
CN202632165U (zh) * | 2012-04-06 | 2012-12-26 | 东莞宇龙通信科技有限公司 | 移动终端 |
CN102981996A (zh) * | 2012-11-26 | 2013-03-20 | 福州瑞芯微电子有限公司 | 一种外设接口的扩展装置和方法 |
CN103902488A (zh) * | 2012-12-30 | 2014-07-02 | 航天信息股份有限公司 | 基于Android***的利用USB-OTG扩展其他接口的方法和*** |
CN205318379U (zh) * | 2015-12-14 | 2016-06-15 | 武汉芯昌科技有限公司 | 一种支持spi、i2c、i2cl、uart协议的端口复用电路 |
-
2015
- 2015-12-14 CN CN201510921629.4A patent/CN105446929A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127023A (zh) * | 2006-08-17 | 2008-02-20 | 四川维肯电子有限公司 | 一种多总线接口的通用异步串口扩展芯片 |
CN202632165U (zh) * | 2012-04-06 | 2012-12-26 | 东莞宇龙通信科技有限公司 | 移动终端 |
CN102981996A (zh) * | 2012-11-26 | 2013-03-20 | 福州瑞芯微电子有限公司 | 一种外设接口的扩展装置和方法 |
CN103902488A (zh) * | 2012-12-30 | 2014-07-02 | 航天信息股份有限公司 | 基于Android***的利用USB-OTG扩展其他接口的方法和*** |
CN205318379U (zh) * | 2015-12-14 | 2016-06-15 | 武汉芯昌科技有限公司 | 一种支持spi、i2c、i2cl、uart协议的端口复用电路 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107704417A (zh) * | 2017-09-13 | 2018-02-16 | 成都锐成芯微科技股份有限公司 | 与被测设备通信的方法及其通信*** |
CN109783416A (zh) * | 2019-01-03 | 2019-05-21 | 深圳市度申科技有限公司 | Spi从设备和i2c从设备共用gpio的方法、电路和电子设备 |
CN112653445A (zh) * | 2020-12-03 | 2021-04-13 | 北京博雅慧视智能技术研究院有限公司 | 一种数字逻辑电路及电子设备 |
CN112804128A (zh) * | 2021-03-25 | 2021-05-14 | 广州智慧城市发展研究院 | 一种支持多协议的总线控制***及方法 |
CN114003540A (zh) * | 2021-10-29 | 2022-02-01 | 深圳市信锐网科技术有限公司 | 一种数据采集装置、方法、设备及计算机可读存储介质 |
CN114519027A (zh) * | 2022-02-21 | 2022-05-20 | 上海矽翊微电子有限公司 | 一种自适应通讯接口、通讯协议自动识别方法及电子器件 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105446929A (zh) | 一种支持spi、i2c、i2cl、uart协议的端口复用电路 | |
CN101329663B (zh) | 一种实现片上***管脚分时复用的装置及方法 | |
CN205193795U (zh) | 一种可扩展的多功能接口*** | |
CN205318379U (zh) | 一种支持spi、i2c、i2cl、uart协议的端口复用电路 | |
CN105051706A (zh) | 用于具有pcie协议栈的低功率phy的操作的设备、方法和*** | |
CN202564744U (zh) | 高速外设组件互连接口与usb3.0装置之间的桥接器 | |
CN210222744U (zh) | 一种基于usb_otg模式下的主从设备切换装置及终端设备 | |
CN107908589A (zh) | I3c验证从设备、主从设备的通信验证***及方法 | |
CN104484301A (zh) | 一种基于fpga具有自识别功能的io总线装置 | |
CN103942171A (zh) | 一种带有通信功能的tf卡 | |
CN101820460A (zh) | 实现spi接口的模块 | |
CN108255754A (zh) | 一种兼容i2c的i3c主设备、i3c主从设备通信***及方法 | |
CN204256732U (zh) | 基于PCI-Express接口的高速数据传输装置 | |
CN203324975U (zh) | 串口通讯调试工具 | |
CN203786774U (zh) | 一种用于公共自行车租赁***的中控机 | |
CN104657297A (zh) | 计算设备扩展***及扩展方法 | |
CN103869883B (zh) | 一种扩展主板及扩展*** | |
CN201378316Y (zh) | 通用输入/输出接口扩展电路和具有该电路的移动终端 | |
CN204406395U (zh) | 一种cpci架构的高速通讯互联*** | |
JP2024508592A (ja) | Usbインタフェースの多重化方法、回路、電子機器及び記憶媒体 | |
CN104536328A (zh) | 一种总线操作器件串口资源的扩展模块 | |
CN104021108A (zh) | 一种基于profibus-dp协议的通信设备 | |
CN107102961A (zh) | 加速arm处理器并行工作的方法及*** | |
CN208190652U (zh) | 一种全双工通用同步异步串行收发器的主板 | |
CN102495554A (zh) | 一种程控矩阵开关及其制造方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160330 |
|
RJ01 | Rejection of invention patent application after publication |