CN109960672B - 一种基于gpio接口的数字通讯方法 - Google Patents
一种基于gpio接口的数字通讯方法 Download PDFInfo
- Publication number
- CN109960672B CN109960672B CN201711409298.1A CN201711409298A CN109960672B CN 109960672 B CN109960672 B CN 109960672B CN 201711409298 A CN201711409298 A CN 201711409298A CN 109960672 B CN109960672 B CN 109960672B
- Authority
- CN
- China
- Prior art keywords
- module
- signal
- gpio interface
- bit
- level
- 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.)
- Active
Links
Images
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/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
-
- 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
- G06F13/4286—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Communication Control (AREA)
Abstract
本发明实施例提供一种基于GPIO接口的数字通讯方法,第一模块的第一GPIO接口和第二模块的第二GPIO接口连接以实现第一模块和第二模块之间的通讯;传输信号包括握手信号和数据信号,握手信号大于数据信号的一个Bit时间以区分Bit和握手信号,一个Bit由第一电平和第二电平组成,以第一电平占一个Bit时间的比例来区分Bit值。
Description
技术领域
本发明涉及GPIO接口通讯领域。
背景技术
通讯***的模块之间通讯通常使用UART、I2C等接口,并采用UART或I2C协议进行通讯,会出现主机或从机之一没有UART或I2C接口的情况,因此主机或从机需要模拟UART或I2C,并且通常从机端很难编程实现UART或I2C。
发明内容
本发明公开了一种基于GPIO接口的数字通讯方法,第一模块的第一GPIO接口和第二模块的第二GPIO接口连接以实现第一模块和第二模块之间的通讯;
数据空闲状态时,第一模块持续输出第一电平至所述第二GPIO接口;
数据传输状态时,第一模块输出的信号包括握手信号和数据信号,所述数据信号每个Bit时间为t0;
数据传输包括以下步骤:
1)握手信号传输:第一模块输出握手信号至第二模块,所述握手信号包括预定时间t的第二电平,所述t大于t0;
2)数据信号传输:第一模块输出数据信号至第二模块,所述数据信号的每个Bit由第一电平和第二电平组成,每个Bit夹在两个相邻上升沿之间或者每个Bit夹在两个相邻下降沿之间,一个Bit中第一电平时间t1与时间t0的比例值为a,设定预定值a0,a大于a0或a小于a0,根据该比较结果确定Bit值。
本发明的电子***的模块之间的通讯使用GPIO接口,GPIO接口相对较富余,解决接口紧张的问题,满足低速率通讯的要求。本发明还提供相应的通讯方法,该通讯方法中利用GPIO进行数字信号传输,握手信号和数据信号都通过GPIO接口传输,不需要额外的外部编程器件。
附图说明
图1是本发明实施例提供的通讯***的示意图。
图2是本发明实施例一的通讯信号示意图。
图3是本发明实施例二的通讯信号示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
如图1,本发明的通讯***包括第一模块和第二模块,第一模块和第二模块可以为mcu,两者可为主从关系,例如第一模块为主机,第二模块为从机,两者也可以不是主从关系。第一模块的第一GPIO接口和第二模块的第二GPIO接口连接以实现第一模块和第二模块之间的通讯。通讯信号由电平变化实现,电平包括第一电平和第二电平。第一模块和第二模块可以采用单线传输,也可以采用双线传输。
实施例一
如图2所示,数据空闲状态时,第一模块持续输出第一电平至所述第二GPIO接口,所述第一电平为高电平,第二电平为低电平,或所述第一电平为低电平,第二电平为高电平。第二模块一直处于可接收数据的接收在线状态或者处于可触发中断状态。
数据传输状态时,第一模块输出的信号包括握手信号和数据信号,所述数据信号每个Bit时间为t0;
数据传输包括以下步骤:
1)握手信号传输:第一模块输出握手信号至第二模块,所述握手信号包括预定时间t的第二电平,所述t大于t0,由于握手信号时间大于一个Bit的时间,利于将握手信号和数据信号的Bit区分。当方案中第二模块一直处于接收在线状态,直接进入步骤2),当方案中第二模块处于可触发中断状态,第二模块接收到握手信号从第一电平至第二电平的跳变,将转至接收在线状态,进入步骤2)。
2)数据信号传输:第一模块输出数据信号至第二模块,所述数据信号的每个Bit由第一电平和第二电平组成,每个Bit夹在两个相邻上升沿之间或者每个Bit夹在两个相邻下降沿之间,一个Bit中第一电平时间t1与时间t0的比例值为a,设定预定值a0,a大于a0或a小于a0,根据该比较结果确定Bit值。该a0优选为50%,可以理解地,本领域技术人员将a0调整为其他值,如40%,60%等,一种方案中,Bit1为a大于a0的Bit,Bit0为a小于a0的Bit;另一方案中,Bit1为a小于a0的Bit,Bit0为a大于a0的Bit。
实施例二
实施例二与实施例一的区别在于,第二模块并未一直处于接收在线状态或者可触发中断状态,例如第二模块在休眠状态或者在忙状态,暂时不能够接收第一模块发送的数据信号,因此第一模块开始发送握手信号后,需要等待第二模块确认可以接收信号,第一模块接收到第二模块发送的待接收信号后才能发送数据信号。
具体如下:
如图3所示,数据空闲状态时,第一模块持续输出第一电平至所述第二GPIO接口,第二模块持续输出第一电平至所述第一GPIO接口。
数据传输状态时,第一模块输出的信号包括握手信号和数据信号,所述数据信号每个Bit时间为t0;
数据传输包括以下步骤:
1)握手信号传输:第一模块输出握手信号至第二模块,所述握手信号包括预定时间t的第二电平,所述t大于t0;握手信号的第二电平持续t’时,如果第二模块处于可接收数据信号状态,第二模块输出待接收信号,所述t’大于等于t0,该待接收信号是第一电平至第二电平的跳变,或者该待接收信号是预定时间的第二电平,第一模块接收到该待接收信号,并且握手信号输出完毕后进入步骤2)。如果第二模块处于不可接收数据信号的状态,将不发送待接收信号至第二模块,第一模块可定期发送握手信号至第二模块以请求发送数据信号。
2)数据信号传输:第一模块输出数据信号至第二模块,所述数据信号的每个Bit由第一电平和第二电平组成,每个Bit夹在两个相邻上升沿之间或者每个Bit夹在两个相邻下降沿之间,一个Bit中第一电平时间t1与时间t0的比例值为a,设定预定值a0,a大于a0或a小于a0,根据该比较结果确定Bit值。该a0优选为50%,可以理解地,本领域技术人员将a0调整为其他值,如40%,60%等,一种方案中,Bit1为a大于a0的Bit,Bit0为a小于a0的Bit;另一种方案中,Bit1为a小于a0的Bit,Bit0为a大于a0的Bit。
实施例三
本实施例是实施例一和实施例二的具体应用。
本发明的实施例特别适用于带有身份认证模块的电子设备,例如U盘、U盾、电子锁等,身份认证模块可以为指纹认证模块、虹膜认证模块、人脸识别模块等,下面以带有指纹认证模块的U盘来具体说明该电子***的通讯方法,而本发明的保护范围不仅仅限于该方案,可应用于带有指纹认证模块的U盾、电子锁等。
指纹认证模块可包括指纹认证mcu以及指纹传感器,指纹认证mcu连接指纹传感器,指纹认证mcu可以控制指纹传感器,例如可以控制指纹传感器的工作模式,指纹认证mcu还可以处理指纹传感器探测的手指信息,并处理该信息以认证指纹等,指纹传感器可以为任意类型的指纹传感器,如电容式、光学式、超声波式指纹传感器。U盘中包括U盘mcu,U盘mcu可以控制U盘的读取、存储以及U盘的解锁。优选地,U盘mcu与指纹认证mcu连接通讯,指纹认证mcu对应于第二模块,以下简称从机,U盘mcu对应于第一模块,以下简称主机。
主机与从机通过各自的GPIO接口连接以实现通讯。
主机或从机接收到触发事件后,采用实施例一或实施例二的方式发送数据信号至对方,例如,主机接收到用户的注册指纹或指纹认证指令时,将发送数据信号至从机进行指纹注册;从机接收到手指接触指纹传感器的信号或者指纹信息匹配成功时,将数据信号至主机,触发事件不局限于以上几种,可以根据需求设定触发事件。
对于实施例一、二、三,举例来说,数据信号包括四位的头位段、四位的命令位段、四位的数据位段和四位的校验位段。以主机发送数据至从机为例,头位段表示发送方向为主机至从机,命令位段可以表示设置指纹工作模式、读取指纹ID索引表、指纹注册等命令指令;数据位段表示该命令的参数,如设置什么指纹工作模式;校验位用于校验数据的正确性,只有数据校验正确才算是一个正确的数据,优选地,采用BCC(异或校验),将前三个位段依次进行异或校验。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (7)
1.一种基于GPIO接口的数字通讯方法,其特征在于,第一模块的第一GPIO接口和第二模块的第二GPIO接口连接以实现第一模块和第二模块之间的通讯;数据空闲状态时,第一模块持续输出第一电平至所述第二GPIO接口;
数据传输状态时,第一模块输出的信号包括握手信号和数据信号,所述数据信号每个Bit时间为t0;
数据传输包括以下步骤:
1)握手信号传输:第一模块输出握手信号至第二模块,所述握手信号包括预定时间t的第二电平,所述t大于t0;
2)数据信号传输:第一模块输出数据信号至第二模块,所述数据信号的每个Bit由第一电平和第二电平组成,每个Bit夹在两个相邻上升沿之间或者每个Bit夹在两个相邻下降沿之间,一个Bit中第一电平时间t1与时间t0的比例值为a,设定预定值a0,a大于a0或a小于a0,根据该比较结果确定Bit值。
2.根据权利要求1所述的基于GPIO接口的数字通讯方法,其特征在于,所述a0为50%。
3.根据权利要求1或2所述的基于GPIO接口的数字通讯方法,所述第二模块一直处于接收在线状态,或者处于可触发中断状态。
4.根据权利要求1或2所述的基于GPIO接口的数字通讯方法,其特征在于,步骤1)中,握手信号的第二电平持续t’时,如果第二模块处于可接收数据信号状态,第二模块输出待接收信号,所述t’大于等于t0,该待接收信号是第一电平至第二电平的跳变,或者该待接收信号是预定时间的第二电平,当第一模块接收到该待接收信号并且握手信号输出完毕时,进入步骤2)。
5.根据权利要求4所述的基于GPIO接口的数字通讯方法,其特征在于,步骤1)中,如果第二模块处于不可接收数据信号的状态,第二模块不发送待接收信号至第二模块,第一模块定期发送握手信号至第二模块以请求发送数据信号。
6.根据权利要求1-2,5任一项所述的基于GPIO接口的数字通讯方法,其特征在于,所述第二模块是指纹认证模块的mcu。
7.根据权利要求1-2,5任一项所述的基于GPIO接口的数字通讯方法,其特征在于,所述第一模块是U盘、U盾、电动车或电子锁的mcu。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711409298.1A CN109960672B (zh) | 2017-12-22 | 2017-12-22 | 一种基于gpio接口的数字通讯方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711409298.1A CN109960672B (zh) | 2017-12-22 | 2017-12-22 | 一种基于gpio接口的数字通讯方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109960672A CN109960672A (zh) | 2019-07-02 |
CN109960672B true CN109960672B (zh) | 2022-12-30 |
Family
ID=67019802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711409298.1A Active CN109960672B (zh) | 2017-12-22 | 2017-12-22 | 一种基于gpio接口的数字通讯方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109960672B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112363962B (zh) * | 2020-10-30 | 2024-06-25 | 深圳市汇顶科技股份有限公司 | 数据通信方法、***、电子设备及计算机存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727370A (en) * | 1985-12-17 | 1988-02-23 | Ampex Corporation | Method and system for synchronous handshake generation |
CN102929830A (zh) * | 2012-11-08 | 2013-02-13 | 浙江绍兴苏泊尔生活电器有限公司 | 一种软件模拟快速通信协议 |
WO2017050234A1 (zh) * | 2015-09-21 | 2017-03-30 | 天地融科技股份有限公司 | 数据传输方法及数据处理设备 |
CN107220198A (zh) * | 2017-06-22 | 2017-09-29 | 深圳天珑无线科技有限公司 | 通信终端和单线双向通信*** |
-
2017
- 2017-12-22 CN CN201711409298.1A patent/CN109960672B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727370A (en) * | 1985-12-17 | 1988-02-23 | Ampex Corporation | Method and system for synchronous handshake generation |
CN102929830A (zh) * | 2012-11-08 | 2013-02-13 | 浙江绍兴苏泊尔生活电器有限公司 | 一种软件模拟快速通信协议 |
WO2017050234A1 (zh) * | 2015-09-21 | 2017-03-30 | 天地融科技股份有限公司 | 数据传输方法及数据处理设备 |
CN107220198A (zh) * | 2017-06-22 | 2017-09-29 | 深圳天珑无线科技有限公司 | 通信终端和单线双向通信*** |
Also Published As
Publication number | Publication date |
---|---|
CN109960672A (zh) | 2019-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100366029C (zh) | 通信控制器、主机端控制器、通信设备、通信***和方法 | |
US10484100B2 (en) | Optical module, optical module system and monitor method using the same | |
EP2587385A1 (en) | Usb key device and method for realizing intelligent card communication using usb interface | |
US20070162666A1 (en) | Data input terminal device | |
US8683085B1 (en) | USB interface configurable for host or device mode | |
KR20120086542A (ko) | 사타 인터페이스 및 그것의 전원 관리 방법 | |
US8654377B2 (en) | Data communication device, communication control method, and program | |
US20220137848A1 (en) | Storage device and operating method of storage device | |
CN204374963U (zh) | 一种基于tcm芯片的服务器加密模块 | |
CN112765082B (zh) | 多主机仲裁方法、装置和可读存储介质 | |
US9473273B2 (en) | Memory system capable of increasing data transfer efficiency | |
CN109960672B (zh) | 一种基于gpio接口的数字通讯方法 | |
US20180188853A1 (en) | Touch sensing system and data transmission method of a touch panel | |
CN101907683A (zh) | 数字基带芯片中i2c模块的自动测试电路结构及其方法 | |
CN107783793B (zh) | 自动辨识主机操作***的方法与usb装置 | |
US20090106472A1 (en) | Virtual SATA port multiplier, virtual SATA device, SATA system and data transfer method in a SATA system | |
KR102385541B1 (ko) | 버스 시스템 | |
TWI581104B (zh) | 主控元件以及資料傳輸方法 | |
CN113282532B (zh) | 一种通信装置、通信装置的通信方法和电子设备 | |
CN114095300A (zh) | 自适应速率的数据读写方法及设备 | |
KR102008996B1 (ko) | Spi 수신 버퍼의 스턱비트 에러발생 판별방법 | |
CN103744807B (zh) | 基于可编程逻辑器件的存储卡访问控制*** | |
CN109753461B (zh) | 一种dma设备及数据传输的方法 | |
CN108241586A (zh) | 控制器电路与估计延迟补偿方法 | |
CN1321382C (zh) | 串行/并行数据转换模块及相关计算机*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |