CN108628793B - Spi通信电路及方法 - Google Patents

Spi通信电路及方法 Download PDF

Info

Publication number
CN108628793B
CN108628793B CN201710164669.8A CN201710164669A CN108628793B CN 108628793 B CN108628793 B CN 108628793B CN 201710164669 A CN201710164669 A CN 201710164669A CN 108628793 B CN108628793 B CN 108628793B
Authority
CN
China
Prior art keywords
spi communication
data
communication module
speed clock
clock
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
Application number
CN201710164669.8A
Other languages
English (en)
Other versions
CN108628793A (zh
Inventor
李阳
刘慧�
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiaohua Semiconductor Co ltd
Original Assignee
Huada Semiconductor Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huada Semiconductor Co ltd filed Critical Huada Semiconductor Co ltd
Priority to CN201710164669.8A priority Critical patent/CN108628793B/zh
Publication of CN108628793A publication Critical patent/CN108628793A/zh
Application granted granted Critical
Publication of CN108628793B publication Critical patent/CN108628793B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Communication Control (AREA)

Abstract

一种SPI通信电路,所述电路包括SPI通信模块和时钟控制模块,所述SPI通信模块通过SPI总线与外部主机保持通信,时钟控制模块控制SPI通信模块时钟在系统高速时钟和内部低速时钟之间切换,低功耗模式下,SPI通信模块进入从机接收模式并工作在内部低速时钟下。允许低功耗模式下SPI通信模块进行通信。

Description

SPI通信电路及方法
技术领域
本发明涉及数据传输接口,尤其涉及一种低功耗模式下SPI通信电路及方法。
背景技术
SPI(Serial Peripheral Interface,串行外设接口)是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为印制电路板(Printed Circuit Board;PCB)的布局节省空间,提供方便,正是出于这种简单易用的特性,如今越来越多的芯片集成了这种通信协议。
超低功耗系列控制器对于功耗的控制非常严格,低功耗的设计可以尽可能的延长智能计量设备的电池寿命。在现有设计中,SPI模块在系统进入低功耗模式下,无法正常工作。
SPI以主从方式工作,这种模式通常有一个主设备和一个或多个从设备。在系统工作在正常模式下,SPI工作在高速时钟下,功耗较高。而当系统进入低功耗模式下时,高速时钟被关闭,SPI无法和外部正常通信。
本发明提出一种SPI通信电路及方法,在低功耗模式下,可以进行SPI通信。
发明内容
本发明所要解决的技术问题在于,克服现有技术中存在的问题,提供一种SPI通信电路,可以进行在低功耗模式下的SPI通信。
为了解决上述问题,本发明的技术方案是这样的:
一种SPI通信电路,所述电路包括SPI通信模块和时钟控制模块,所述SPI通信模块通过SPI总线与外部主机保持通信,时钟控制模块控制SPI通信模块的时钟在系统高速主频时钟和内部低速时钟之间切换,低功耗模式下,SPI通信模块进入从机接收模式并工作在内部低速时钟下。
低功耗模式下,SPI通信模块当外部主机发送数据时,接收数据。
所述电路还包括CPU,所述SPI通信模块与CPU之间设置有中断控制模块,当SPI通信模块接收数据完成时产生中断,中断送到中断控制模块,然后唤醒CPU,CPU被唤醒后,打开系统高速时钟,系统恢复正常工作。
系统恢复正常工作后,清除数据接收中断。
处理数据后,系统再次进入低功耗模式。
根据本发明的另一个方面,一种低功耗模式下的SPI通信方法,包括以下步骤:
S201,系统正常模式;
S202,切换SPI通信模块的时钟到内部低速时钟;
S203,切换SPI通信模块到从机接收模式;
S204,关闭高速时钟,系统进入低功耗模式。
还包括步骤S205,SPI通信模块接收外部主机发送的数据;步骤S206,判断是否数据接收结束;当数据接收结束,进入步骤S207,SPI通信模块产生接收数据中断。
还包括步骤S208,中断唤醒CPU,打开高速时钟;并进入步骤S209,清除中断,处理数据。
处理数据完成后,返回步骤S204,关闭高速时钟,系统进入低功耗模式。
本发明提供的低功耗模式下的SPI通信电路和方法,可以在系统进入低功耗模式下,使SPI模块进入从机接收模式并工作在内部低速时钟下,只有当外部主机发送数据时,才接收数据,接收数据完成后发送中断,唤醒CPU处理数据,处理数据结束后,CPU再次进入低功耗模式。保障了系统在超低功耗模式下SPI模块的正常通信。
附图说明
下面结合附图和具体实施方式来详细说明本发明;
图1是表示根据本发明一个实施例的低功耗模式下的SPI通信电路的电路框图示意图。
图2是表示根据本发明一个实施例的低功耗模式下的SPI通信方法的流程示意图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
本发明提出的一种低功耗模式下的SPI通信电路,可以在系统进入低功耗模式下进行SPI通信。
本发明的一种低功耗模式下的SPI通信电路,包括SPI通信模块和时钟控制模块,所述SPI通信模块通过SPI总线与外部主机保持通讯,时钟控制模块控制SPI通信模块的时钟在系统高速主频时钟和内部低速时钟之间切换,低功耗模式下,SPI通信模块进入从机接收模式并工作在内部低速时钟下。
根据本发明的一个实施例,低功耗模式下,SPI模块只有当外部主机发送数据时,才接收数据。
所述电路还包括CPU,所述SPI通信模块与CPU之间设置有中断控制模块,当SPI通信模块接收数据完成时产生中断,中断送到中断控制模块,然后唤醒CPU,CPU被唤醒后,打开系统高速时钟,系统恢复正常工作。
系统恢复正常工作后,清除数据接收中断。
CPU清除数据接收中断标志位,处理数据后,再次进入低功耗模式。
SPI以主从方式工作,这种模式通常有一个主设备和一个或多个从设备。它有四根信号线,分别是SDI(数据输入)、SDO(数据输出)、SCLK(时钟)和CS(片选)。
其中,CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。这就允许在同一总线上连接多个SPI设备成为可能。
由于SPI是串行通讯协议,也就是说数据是一位一位地传输的,这就是SCLK时钟线存在的原因,由SCLK提供时钟脉冲,SDI,SDO则基于此脉冲完成数据传输。数据输出通过SDO线,数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取,完成一位数据输出。数据输入也使用同样原理。这样,经过至少8次时钟信号的改变(上沿和下沿为一次),就可以完成8位数据,即一个字节数据的传输。
在系统工作在正常模式下,SPI通信模块工作在高速时钟下,功耗较高。一种技术当系统进入低功耗模式下时,高速时钟被关闭,SPI通信模块无法和外部正常通信。本发明的一种低功耗模式下的SPI通信电路,低功耗模式下,SPI通信模块工作在内部低速时钟下。SPI通信模块进入从机接收模式。
图1是表示根据本发明一个实施例的低功耗模式下的SPI通信电路的电路框图示意图。
如图1所示,根据本发明的一个实施例,低功耗模式下的SPI通信电路包括SPI通信模块101、时钟控制模块102和CPU103,SPI通信模块101与CPU103之间设置有中断控制模块104。SPI通信模块101通过SPI总线(未图示)与外部主机保持通讯,时钟控制模块102控制SPI通信模块的时钟在系统高速主频时钟和内部低速时钟之间切换。根据本发明的一个实施例,系统高速时钟和内部低速时钟都是系统原有的,位于SPI通信电路的外部,通过时钟控制模块将系统高速时钟和内部低速时钟发送给SPI通信模块。低功耗模式下,SPI通信模块101进入从机接收模式并工作在内部低速时钟下。只有当外部主机发送数据时,才接收数据。
当SPI通信模块101接收数据完成时产生中断,中断送到中断控制模块104,然后唤醒CPU103。
CPU103被唤醒后,打开系统高速时钟,系统恢复正常工作。系统例如指SPI通信电路所用的系统。
系统恢复正常工作后,清除数据接收中断。例如清除数据接收中断标志位。处理数据后,系统再次进入低功耗模式。
图2是表示根据本发明一个实施例的低功耗模式下的SPI通信方法的流程示意图。
如图2所示,根据本发明的一个实施例,低功耗模式下的SPI通信方法包括以下步骤:
S201,系统正常模式;这里的系统例如是MCU。系统为系统高速时钟。
S202,切换SPI通信模块的时钟到内部低速时钟;
S203,切换SPI通信模块到从机接收模式;
S204,关闭高速时钟,系统进入低功耗模式;
S205,SPI接收外部主机发送的数据;
S206,判断是否数据接收结束;
当数据接收结束,进入步骤S207,SPI通信模块产生接收数据中断;
然后是步骤S208,中断唤醒CPU,打开系统高速时钟;
并进入步骤S209,清除中断,处理数据;
处理数据完成后,返回步骤S204,关闭系统高速时钟,系统进入低功耗模式。低功耗模式为深度睡眠模式。
本发明的本发明提供的低功耗模式下的SPI通信电路和方法,可以在系统进入低功耗模式下,使SPI通信模块进入从机接收模式并工作在内部低速时钟下,只有当外部主机发送数据时,才接收数据,接收数据完成后发送中断,唤醒CPU处理数据,处理数据结束后,CPU再次进入低功耗模式。通过在系统进入低功耗模式时,切换SPI通信模块的时钟到内部低速时钟,保证了系统低功耗模式下SPI通信模块和外部主机的正常通信,从而降低系统的整体功耗。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实例的限制,上述实例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等同物界定。

Claims (6)

1.一种SPI通信电路,其特征在于,所述电路包括SPI通信模块和时钟控制模块,所述SPI通信模块通过一SPI总线与一外部主机保持通信,时钟控制模块控制所述SPI通信模块的时钟在系统高速时钟和内部低速时钟之间切换,低功耗模式下,所述SPI通信模块进入从机接收模式并工作在内部低速时钟下,低功耗模式下,所述SPI通信模块当所述外部主机发送数据时,接收数据,所述电路还包括CPU,所述SPI通信模块与CPU之间设置有一中断控制模块,当所述SPI通信模块接收数据完成时产生中断,所述中断送到中断控制模块,然后唤醒CPU处理所述数据,CPU被唤醒后,打开系统高速时钟,系统恢复正常工作。
2.如权利要求1所述的SPI通信电路,其特征在于,系统恢复正常工作后,清除数据接收中断。
3.如权利要求2所述的SPI通信电路,其特征在于,所述清除数据接收中断包括清除数据接收中断标志位。
4.如权利要求1所述的SPI通信电路,其特征在于,处理数据后,系统再次进入低功耗模式。
5.一种SPI通信方法,包括以下步骤:
S201,系统正常模式;
S202,切换SPI通信模块的时钟从系统高速时钟到内部低速时钟;
S203,切换SPI通信模块到从机接收模式;
S204,关闭系统高速时钟,系统进入低功耗模式;
S205,SPI通信模块接收外部主机发送的数据;
S206,判断是否数据接收结束,当数据接收结束,进入步骤S207;
S207,SPI通信模块产生接收数据中断;
S208,中断唤醒CPU,打开系统高速时钟;
S209,清除中断,处理数据。
6.如权利要求5所述的SPI通信方法,其特征在于,处理数据完成后,返回步骤S204,关闭系统高速时钟,系统进入低功耗模式。
CN201710164669.8A 2017-03-20 2017-03-20 Spi通信电路及方法 Active CN108628793B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710164669.8A CN108628793B (zh) 2017-03-20 2017-03-20 Spi通信电路及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710164669.8A CN108628793B (zh) 2017-03-20 2017-03-20 Spi通信电路及方法

Publications (2)

Publication Number Publication Date
CN108628793A CN108628793A (zh) 2018-10-09
CN108628793B true CN108628793B (zh) 2021-04-02

Family

ID=63686477

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710164669.8A Active CN108628793B (zh) 2017-03-20 2017-03-20 Spi通信电路及方法

Country Status (1)

Country Link
CN (1) CN108628793B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102495030B1 (ko) * 2018-11-15 2023-02-06 매그나칩 반도체 유한회사 클록 장애를 복원하는 수신 장치 및 이를 포함하는 전송 시스템
CN110673524B (zh) * 2019-09-27 2020-09-22 安凯(广州)微电子技术有限公司 一种高速spi主模式控制器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303620A (zh) * 2008-06-27 2008-11-12 北京中星微电子有限公司 一种低功耗多通道控制系统
CN103558907A (zh) * 2013-09-02 2014-02-05 威盛电子股份有限公司 电子装置及降低电子装置功耗的方法
CN105426338A (zh) * 2015-10-30 2016-03-23 深圳市芯海科技有限公司 一种i2c唤醒mcu电路及唤醒方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452337A (zh) * 2008-12-18 2009-06-10 北京中星微电子有限公司 一种外接设备的控制方法和装置
CN102136046B (zh) * 2010-12-29 2013-02-06 上海爱信诺航芯电子科技有限公司 一种高速低功耗的安全sd卡的通讯方法
CN103324268A (zh) * 2013-05-29 2013-09-25 东南大学 用于无线传感器网络核心芯片的低功耗设计方法
US9842071B2 (en) * 2014-11-11 2017-12-12 Microchip Technology Incorporated Multi-channel I2S transmit control system and method
CN104516296B (zh) * 2014-12-26 2017-05-31 北京兆易创新科技股份有限公司 一种基于外设模块的微控制器系统的唤醒方法及外设模块
US9548736B2 (en) * 2015-06-15 2017-01-17 The University Of Utah Research Foundation Relative timed clock gating cell
CN105353679B (zh) * 2015-11-19 2018-07-27 北京时代民芯科技有限公司 自动感知导弹运行状态的低功耗履历电路
CN106358273B (zh) * 2016-08-11 2020-10-27 南京矽力微电子技术有限公司 一种低功耗通信装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303620A (zh) * 2008-06-27 2008-11-12 北京中星微电子有限公司 一种低功耗多通道控制系统
CN103558907A (zh) * 2013-09-02 2014-02-05 威盛电子股份有限公司 电子装置及降低电子装置功耗的方法
CN105426338A (zh) * 2015-10-30 2016-03-23 深圳市芯海科技有限公司 一种i2c唤醒mcu电路及唤醒方法

Also Published As

Publication number Publication date
CN108628793A (zh) 2018-10-09

Similar Documents

Publication Publication Date Title
US8745417B2 (en) Computer system and notebook computer, and method for controlling computer system
CN109857243B (zh) 系统级芯片、通用串行总线主设备、系统及唤醒方法
EP2757839B1 (en) Power management method and apparatus for network access module
CN103677916A (zh) 一种基于fpga的在线重配置系统及方法
CN106487372A (zh) 包括单线接口的装置和具有该装置的数据处理系统
CN102650904B (zh) 低功耗电路以及降低功率消耗的方法
US20200065116A1 (en) Method and circuit for waking up i2c device
CN103914418A (zh) 处理器模块、微型服务器以及使用处理器模块的方法
CN102799550A (zh) 基于芯片间高速接口hsic的唤醒、热插拔方法和设备
CN108628793B (zh) Spi通信电路及方法
CN105487638A (zh) 电子电路系统及其降低功耗的方法
CN102253910A (zh) 一种i2c传输方法及其装置
CN106063304B (zh) 用于基于消息的细粒度片上系统功率门控的系统和方法
CN102445981B (zh) 数据传输系统以及数据传输方法
CN107370651B (zh) 一种spi从机之间的通信方法
CN103729320B (zh) 一种基于fpga实现cy7c68013通信的方法
CN116088667B (zh) 一种系统级soc芯片控制电路、方法及电子设备
CN112069121A (zh) 一种MCU控制GPU服务器Switch板系统及控制方法
CN102156899A (zh) Rfid标签芯片时钟管理单元
CN102110237B (zh) 一种多界面ic卡管脚低功耗处理方法
CN117311447A (zh) 时钟源确定方法、装置、设备及计算机可读存储介质
CN201378316Y (zh) 通用输入/输出接口扩展电路和具有该电路的移动终端
CN111338460B (zh) 电子装置以及供电方法
US10608680B1 (en) Dual mode communication device and dual mode communication module
CN101719053A (zh) 一种通过spi接口读取iic存储卡的方法

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
TR01 Transfer of patent right

Effective date of registration: 20221221

Address after: 201210 floor 10, block a, building 1, No. 1867, Zhongke Road, pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee after: Xiaohua Semiconductor Co.,Ltd.

Address before: Room 303-304, block a, 112 liangxiu Road, pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee before: HUADA SEMICONDUCTOR Co.,Ltd.

TR01 Transfer of patent right