<object id="vIkcr"></object><cite id="vIkcr"><keygen id="vIkcr"></keygen></cite>
  • <strike id="vIkcr"></strike><dl id="vIkcr"></dl>
  • <del id="vIkcr"><mark id="vIkcr"><tr id="vIkcr"><ol id="vIkcr"><sub id="vIkcr"></sub><tfoot id="vIkcr"><keygen id="vIkcr"></keygen><abbr id="vIkcr"><b id="vIkcr"><th id="vIkcr"></th></b></abbr><aside id="vIkcr"><tfoot id="vIkcr"></tfoot></aside></tfoot></ol></tr></mark></del><acronym id="vIkcr"><keygen id="vIkcr"><noscript id="vIkcr"></noscript><option id="vIkcr"><ruby id="vIkcr"></ruby><sup id="vIkcr"></sup><noframes id="vIkcr"><figcaption id="vIkcr"></figcaption>
    <bdo id="vIkcr"></bdo>
    <dl id="vIkcr"><hgroup id="vIkcr"><audio id="vIkcr"></audio></hgroup></dl>
    <var id="vIkcr"></var><del id="vIkcr"><hgroup id="vIkcr"><mark id="vIkcr"></mark><dd id="vIkcr"></dd></hgroup></del>
  • 电子资讯网 > 控制/MCU > 正文

    STM32单片机SPI极性和相位的设置方法

    2020年04月01日 15:04 ? 次阅读

    SPI分主设备和从设备,两者通过SPI协议通讯。而设置SPI的模式,是从设备的模式,决定了主设备的模式。所以要先去搞懂从设备的SPI是何种模式,然后再将主设备的SPI的模式,设置和从设备相同的模式,即可正常通讯。对于从设备的SPI是什么模式,有两种:(1)固定的,有SPI从设备硬件决定的SPI从设备,具体是什么模式,相关的datasheet中会有描述,需要自己去datasheet中找到相关的描述,即:关于SPI从设备,在空闲的时候,是高电平还是低电平,即决定了CPOL是0还是1;然后再找到关于设备是在上升沿还是下降沿去采样数据,这样就是,在定了CPOL的值的前提下,对应着可以推算出CPHA是0还是1了。举例1:CC2500-Low-CostLow-Power2.4GHzRFTransceiver的datasheet中SPI的时序图是:

    STM32单片机SPI极性和相位的设置方法

    从图中可以看到,最开始的SCLK和结束时候的SCLK,即空闲时刻的SCLK,是低电平,推导出CPOL=0,然后可以看到数据采样的时候,即数据最中间的那一点,对应的是SCLK的第一个边沿,所以CPHA=0(此时对应的是上升沿)。举例2:SSD1289-240RGBx320TFTLCDControllerDriver的datasheet中提到:“SDIisshiftedinto8-bitshiftregisteroneveryrisingedgeofSCKintheorderofdatabit7,databit6……databit0.”意思是,数据是在上升沿采样,所以可以断定是CPOL=0,CPHA=0,或者CPOL=1,CPHA=1的模式,但是至于是哪种模式。按理来说,接下来应该再去确定SCLK空闲时候是高电平还是低电平,用以确定CPOL是0还是1,但是datasheet中没有提到这点。所以,此处,目前不太确定,是两种模式都支持,还是需要额外找证据却确定CPOL是0还是1.(2)可配置的,由软件自己设定从设备也是一个SPI控制器,4种模式都支持,此时只要自己设置为某种模式即可。然后知道了从设备的模式后,再去将SPI主设备的模式,设置为和从设备模式一样,即可。 对于如何配置SPI的CPOL和CPHA的话,不多细说,多数都是直接去写对应的SPI控制器中对应寄存器中的CPOL和CPHA那两位,写0或写1即可。举例:C8051F347中的SPI就是一个SPI的controller控制器,即支持软件配置CPOL和CPHA的值,四种模式都支持,此处C8051F347作为SPI从设备,设置了CPOL=1,CPHA=0的模式,因此,此处对应主芯片中的SPI控制器,作为Master主设备,其SPI的模式也要设置为CPOL=1,CPHA=0,即可。

    【SPI的读写程序设计】文中标红的是特别注意看的地方主要是熟悉flash芯片的指令集,以及存储芯片扇区和块的理解,最重要的是擦除都是以扇区擦除的方式。

    本节将利用SPI来实现对外部FLASH(W25X16)的读写,并将结果显示在TFTLCD模块上。本节分为如下几个部分:

    3.17.1 SPI简介

    3.17.2硬件设计

    3.17.3软件设计

    3.17.4下载与测试

    1 SPI简介

    SPI是英语Serial Peripheralinterface的缩写,顾名思义就是串行外围设备接口。是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议,STM32也有SPI接口。

    SPI接口一般使用4条线:

    MISO主设备数据输入,从设备数据输出。

    MOSI主设备数据输出,从设备数据输入。

    SCLK时钟信号,由主设备产生。

    CS从设备片选信号,由主设备控制。

    SPI主要特点有:可以同时发出和接收串行数据;可以当作主机或从机工作;提供频率可编程时钟;发送结束中断标志;写冲突;;总线竞争;さ。

    SPI总线四种工作方式SPI模块为了和外设进行数据交换,根据外设工作要求,其输出串行同步时钟极性和相位可以进行配置,时钟极性(CPOL)对传输协议没有重大的影响。如果CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平。时钟相位(CPHA)能够配置用于选择两种不同的传输协议之一进行数据传输。如果CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。SPI主模块和与之通信的外设备时钟相位和极性应该一致。

    不同时钟相位下的总线数据传输时序见下图:

    STM32单片机SPI极性和相位的设置方法

    图3.17.1.1不同时钟相位下的总线传输时序(CPHA=0/1)

    STM32的SPI功能很强大,SPI时钟最多可以到18Mhz,支持DMA,可以配置为SPI协议或者I2S协议。

    本节,我们将利用STM32的SPI来读取外部SPIFLASH芯片(W25X16),实现类似上节的功能。这里对SPI我们只简单介绍一下SPI的使用,STM32的SPI详细介绍请参考《STM32参考手册》第422页,22节。然后我们再介绍下SPIFLASH芯片。

    这节,我们使用STM32的SPI1的主模式,下面就来看看SPI1部分的设置步骤吧,STM32的主模式配置步骤如下:

    1)配置相关引脚的复用功能,使能SPI1时钟。

    我们要用SPI1,第一步就要是能SPI1的时钟,SPI1的时钟通过APB2ENR的第12位来设置。其次要设置SPI1的相关引脚为复用输出,这样才会连接到SPI1上否则这些IO口还是默认的状态,也就是标准输入输出口。这里我们使用的是PA5、6、7这3个(SCK.、MISO、MOSI,CS使用软件管理方式),所以设置这三个为复用IO。

    2)设置SPI1工作模式。

    这一步全部是通过SPI1_CR1来设置,我们设置SPI1为主机模式,设置数据格式为8位,然后通过CPOL和CPHA位来设置SCK时钟极性及采样方式。并设置SPI1的时钟频率(最大18Mhz),以及数据的格式(MSB在前还是LSB在前)。

    3)使能SPI1。

    这一步通过SPI1_CR1的bit6来设置,以启动SPI1,在启动之后,我们就可以开始SPI通讯了。

    SPI1的使用就介绍到这里,接下来介绍一下W25X16。W25X16是华邦公司推出的继W25X10/20/40/80(从1Mb~8Mb)后容量更大的FLASH产品,W25X16的容量为16Mb,还有容量更大的W25X32/64,ALIENTEK所选择的W25X16容量为16Mb,也就是2M字节,同AT45DB161是一样大小的。

    W25X16将2M的容量分为32个块(Block),每个块大小为64K字节,每个块又分为16个扇区(Sector),每个扇区4K个字节。W25X16的最少擦除单位为一个扇区,也就是每次必须擦除4K个字节。这样我们需要给W25X16开辟一个至少4K的缓存区,这样对SRAM要求比较高(相对于AT45DB161来说),但是它有价格及供货上的优势。

    W25X16的差些周期为10000次,具有20年的数据保存期限,支持电压为2.7~3.6V,W25X16支持标准的SPI,还支持双输出的SPI,最大SPI时钟可以到75Mhz(双输出时相当于150Mhz),更多的W25X16的介绍,请参考W25X16的DATASHEET。

    2硬件设计

    本节实验功能简介:开机的时候先检测W25X16是否存在,然后在主循环里面用1个按键用来执行写入W25X16的操作,另外一个按键用来执行读出操作,在TFTLCD模块上显示相关信息。同时用DS0提示程序正在运行。

    所要用到的硬件资源如下:

    1)STM32F103RBT6。

    2)DS0(外部LED0)。

    3)KEY0和KEY2。

    4)TFTLCD液晶模块。

    5)W25X16。

    前面4部分的资源,我们前面已经介绍了,请大家参考相关章节。这里只介绍W25X16与STM32的连接,板上的W25X16是直接连在STM32F103RBT6上的,连接关系如下图:

    STM32单片机SPI极性和相位的设置方法

    图3.17.2.1STM32F103RBT6与W25X16连接电路图

    3软件设计

    打开上一节的工程,首先在HARDWARE文件夹下新建一个FLASH的文件夹和SPI的文件夹。然后新建一个flash.c和flash.h的文件保存在FLASH文件夹下,新建spi.c和spi.h的文件,保存在SPI文件夹下,并将这两个文件夹加入头文件包含路径。

    打开spi.c文件,输入如下代码:

    #include“spi.h”

    //SPI口初始化

    //这里针是对SPI1的初始化

    voidSPIx_Init(void)

    {

    RCC-》APB2ENR“=1《《2; //PORTA时钟使能

    RCC-》APB2ENR|=1《《12; //SPI1时钟使能

    //这里只针对SPI口初始化

    GPIOA-》CRL&=0X000FFFFF;

    GPIOA-》CRL|=0XBBB00000;//PA5.6.7复用

    GPIOA-》ODR|=0X7《《5; //PA5.6.7上拉

    SPI1-》CR1|=0《《10;//全双工模式

    SPI1-》CR1|=1《《9; //软件nss管理

    SPI1-》CR1|=1《《8;

    下载发烧友APP

    打造属于您的人脉电子圈

    关注电子资讯微信

    有趣有料的资讯及技术干货

    关注发烧友课堂

    锁定最新课程活动及技术直播

    电子资讯观察

    一线报道 · 深度观察 · 最新资讯
    收藏 人收藏
    分享:

    评论

    相关推荐

    STM32裸机上移植ucGUI触摸屏的步骤及方法...

    1、将正点原子的《触摸屏移植实验》中HARDWRAE/TOUCH目录复制到已经建立好的ucGUI工程...

    发表于 2020-04-01 15:15 ? 0次阅读
    STM32裸机上移植ucGUI触摸屏的步骤及方法...

    如何采用STM32单片机串口接收数据

    串口设置的一般步骤可以总结为如下几个步骤: 1)串口时钟使能,GPIO时钟使能 2)串口...

    发表于 2020-04-01 15:03 ? 7次阅读
    如何采用STM32单片机串口接收数据

    STM32单片机固件库建立工程的方法及步骤

    1,新建项目,在新建工程的目录下新建几个文件夹: A,CORE (用来存放启动文件) B...

    发表于 2020-04-01 14:43 ? 8次阅读
    STM32单片机固件库建立工程的方法及步骤

    STM32单片的启动过程解析

    STM32启动文件详细解析(V3.5.0) 以:startup_stm32f10x_hd.s为例 ...

    发表于 2020-04-01 14:33 ? 0次阅读
    STM32单片的启动过程解析

    如何采用STM32单片机读取可变长度数据到内存

    STM32的串口有监测总线是否处于空闲的功能,我们可以使用这个功能,当数据传输完总线变成空闲状态时产...

    发表于 2020-04-01 14:33 ? 4次阅读
    如何采用STM32单片机读取可变长度数据到内存

    请问AD5762R输入时序从示波器上看是正确的,但回读时数据不正确,DAC无输出是哪里有问题?

    发表于 2020-04-01 09:29 ? 19次阅读
    请问AD5762R输入时序从示波器上看是正确的,但回读时数据不正确,DAC无输出是哪里有问题?

    HAL库基于SPI驱动的SD卡的Fatfs文件系统,SD卡初始化一直不成功

    发表于 2020-04-01 08:44 ? 49次阅读
    HAL库基于SPI驱动的SD卡的Fatfs文件系统,SD卡初始化一直不成功

    PIC32采用单时钟多数据输出SPI器件可行吗

    发表于 2020-04-01 16:31 ? 12次阅读
    PIC32采用单时钟多数据输出SPI器件可行吗

    如何采用STM32单片机中断向量控制器NVIC来...

    先占优先级的概念等同于51单片机中的中断。假设有两中断先后触发,已经在执行的中断先占优先级如果没有后...

    发表于 2020-04-01 16:17 ? 27次阅读
    如何采用STM32单片机中断向量控制器NVIC来...

    stm32单片机按键控制的用法解析

    1 /* 2 ::按键控制 3 PA8接LED,PE2接按键 4 */ 5 ...

    发表于 2020-04-01 16:14 ? 44次阅读
    stm32单片机按键控制的用法解析

    通过USB读取SPI闪存,是否可以读取USB上的PACROX FX3S EVM板上存在的SPI闪存数据

    发表于 2020-04-01 16:11 ? 17次阅读
    通过USB读取SPI闪存,是否可以读取USB上的PACROX FX3S EVM板上存在的SPI闪存数据

    S25FL164K0XMFI011 NOR闪存,在嘈杂的环境中使用SPI有说明建议吗?

    发表于 2020-04-01 15:34 ? 40次阅读
    S25FL164K0XMFI011 NOR闪存,在嘈杂的环境中使用SPI有说明建议吗?

    热电堆考勤机占用检测器子系统解决方案

    发表于 2020-04-01 14:23 ? 161次阅读
    热电堆考勤机占用检测器子系统解决方案

    AD7280 SPI不能传回数据了

    发表于 2020-04-01 14:18 ? 17次阅读
    AD7280 SPI不能传回数据了

    AD5390输出为0无法正常输出,Reset后正常

    发表于 2020-04-01 14:13 ? 12次阅读
    AD5390输出为0无法正常输出,Reset后正常

    TLE7242-G输出的信息与数据手册无法对应

    发表于 2020-04-01 10:49 ? 10次阅读
    TLE7242-G输出的信息与数据手册无法对应

    HAL库想实现SPI从设备接收并发送数据

    发表于 2020-04-01 08:39 ? 116次阅读
    HAL库想实现SPI从设备接收并发送数据

    STM32单片机串口DMA解析

    STM32有两个DMA控制器(DMA2只存在于大容量产品中),DMA1有7个通道,DMA2有5个通道...

    发表于 2020-04-01 15:40 ? 25次阅读
    STM32单片机串口DMA解析

    STM32单片机对TFTLCD的驱动设计

    TFTLCD使用80并口,80 并口有如下一些信号线: CS: TFTLCD 片选信号。 ...

    发表于 2020-04-01 14:42 ? 54次阅读
    STM32单片机对TFTLCD的驱动设计

    STM32单片机半主机模式的应用

    若出现如下编译错误:Error: L6915E: Library reports error: __...

    发表于 2020-04-01 15:43 ? 59次阅读
    STM32单片机半主机模式的应用

    STM32单片机PID算法的原则及应用方法

    一、总体原则 PID调试一般原则 a.在输出不振荡时,增大比例增益P。 b.在输出...

    发表于 2020-04-01 15:31 ? 70次阅读
    STM32单片机PID算法的原则及应用方法

    STM32单片机定时器的时钟源设置

    名为TIMx的有八个,其中TIM1和TIM8挂在APB2总线上,而TIM2-TIM7则挂在APB1总...

    发表于 2020-04-01 15:30 ? 35次阅读
    STM32单片机定时器的时钟源设置

    如何让SPI nRF24L01无线在两个单片机里...

    main.c 1 #include 2 #include“2401.h” 3 ...

    发表于 2020-04-01 15:17 ? 62次阅读
    如何让SPI nRF24L01无线在两个单片机里...

    如何将STM32单片机中的函数调用到入口参数

    STM32—数组作为被调用函数的入口参数时,要两个条件, 1:数组首地址 2:数组长度 ...

    发表于 2020-04-01 15:05 ? 54次阅读
    如何将STM32单片机中的函数调用到入口参数

    如何使用采用SPI Flash存储中文字符库的方...

    在嵌入式系统中,有时候需要中文字符来表示我们的某些信息,但是中文字符库本身占据空间比较大,因此有时候...

    发表于 2020-04-01 10:59 ? 247次阅读
    如何使用采用SPI Flash存储中文字符库的方...

    STM32F105系列单片机对USB设备电路的设...

    当STM32F105配置为USB设备时, PA9/OTG_FS_VBUS是用来检测presense ...

    发表于 2020-04-01 15:10 ? 85次阅读
    STM32F105系列单片机对USB设备电路的设...

    STM32单片机SysTick系统滴答功能解析

    其实,SysTick能实现的功能,都可以由TIM来实现。SysTick无非就是定时中断的功能,它完全...

    发表于 2020-04-01 14:27 ? 56次阅读
    STM32单片机SysTick系统滴答功能解析

    如何采用STM32单片机来产生PWM输出

    STM32的定时器除了基本定时器TIM6和TIM7之外,其他的定时器都可以用来产生PWM输出,其中高...

    发表于 2020-04-01 16:27 ? 217次阅读
    如何采用STM32单片机来产生PWM输出

    如何升级STM32单片机的代码

    bootloader设置: static void check_boot_mode(void)...

    发表于 2020-04-01 15:53 ? 78次阅读
    如何升级STM32单片机的代码

    IIC和SPI的存在和流行体现了“够用就好”的哲...

    IIC vs SPI现今,在低端数字通信应用领域,我们随处可见IIC (Inter-Integrat...

    发表于 2020-04-01 09:54 ? 233次阅读
    IIC和SPI的存在和流行体现了“够用就好”的哲...

    STM32单片机的PWM输入捕获模式设计

    (TIM_GetITStatus(TIM3,TIM_IT_CC1)==SET)//{ic1=TIM_...

    发表于 2020-04-01 14:50 ? 92次阅读
    STM32单片机的PWM输入捕获模式设计

    单片机SPI通信协议的应用

    SPI 是一种高速的、全双工、同步通信总线,标准的 SPI 也仅仅使用4个引脚,常用于单片机和 EE...

    发表于 2020-04-01 14:47 ? 105次阅读
    单片机SPI通信协议的应用

    STM32单片机的FSMC对TFT的驱动

    开始只是谈到别人对FSMC的理解,注意这里只讨论FSMC控制TFT,也就是在FSMC的NOR\PSR...

    发表于 2020-04-01 14:22 ? 70次阅读
    STM32单片机的FSMC对TFT的驱动

    STM32单片机对NAND Flash的读写以及...

    NAND Flash的容量较大。整片Flash分为若干个块(Block),每个Block分为若干个页...

    发表于 2020-04-01 15:47 ? 466次阅读
    STM32单片机对NAND Flash的读写以及...

    STM32单片机对Systick心跳定时器的设计

    用途: 1.产生操作系统的时钟节拍 2.便于不同处理器之间程序移植 SysTick...

    发表于 2020-04-01 15:44 ? 80次阅读
    STM32单片机对Systick心跳定时器的设计

    如何采用STM32单片机实现IAP功能

    IAP是In Application Programming的首字母缩写,IAP是用户自己的程序在运...

    发表于 2020-04-01 15:33 ? 82次阅读
    如何采用STM32单片机实现IAP功能

    STM32单片机的独立看门狗和窗口看门狗的特点及...

    IWDG是一个独立看门狗,具有独立于系统的时钟,与片外看门狗更为相似,使用片内独立的阻容时钟发生电路...

    发表于 2020-04-01 15:28 ? 117次阅读
    STM32单片机的独立看门狗和窗口看门狗的特点及...

    如何在STM32单片机中加入RDP功能

    沿用之前CM3核的STM32F10X系列的加入RDP功能,之后在Segger的Unsecured C...

    发表于 2020-04-01 15:22 ? 87次阅读
    如何在STM32单片机中加入RDP功能

    如何利用STM32单片机串口发送字符串

    最近由于要调试一个SMS发送短信的模块,该模块需要发送一系列AT指令,且需要字符串发送,但是STM3...

    发表于 2020-04-01 16:01 ? 92次阅读
    如何利用STM32单片机串口发送字符串

    STM32单片机中的独立看门狗与窗口看门狗有哪些...

    1.关于看门狗的解释不再说明,窗口看门狗简而言之即只能看某个窗口期即某段时间内才能够喂狗。32的独立...

    发表于 2020-04-01 15:55 ? 76次阅读
    STM32单片机中的独立看门狗与窗口看门狗有哪些...

    如何采用STM32中的控制定时器Tim1实现计数...

    STM32中的高级控制定时器(Tim1)是由一个16位的自动装载计数器组成,它由一个可编程预分频器驱...

    发表于 2020-04-01 15:25 ? 121次阅读
    如何采用STM32中的控制定时器Tim1实现计数...

    如何使用STM32单片机实现DMA的同时发送和接...

    在SPI通信中,可以同时开启发送和接收DMA请求,自动数据的发送和接收,完成数据的交换 基本步...

    发表于 2020-04-01 15:26 ? 111次阅读
    如何使用STM32单片机实现DMA的同时发送和接...

    STM32单片机优先级的定义

    先占优先级也就是抢占优先级,概念等同于51单片机中的中断。假设有两中断先后触发,已经在执行的中断先占...

    发表于 2020-04-01 15:09 ? 87次阅读
    STM32单片机优先级的定义

    如何计算单片机的波特率

    在这个公式上,共有三个变量,其中两个我们是知道的,Fck和Tx/Rx波特率这两个是已知的,USART...

    发表于 2020-04-01 16:15 ? 122次阅读
    如何计算单片机的波特率

    单片机SPI口初始化设计

    6 //这里只针对SPI口初始化 7 GPIOA-》CRL&=0X000FFFFF; 8...

    发表于 2020-04-01 15:55 ? 110次阅读
    单片机SPI口初始化设计

    STM32单片机的USART接收数据问题解决方案

    先使用USART中断函数接收数据,判断是否接收到每帧数据的起始标记字符。如果接收到就关闭USART中...

    发表于 2020-04-01 15:36 ? 87次阅读
    STM32单片机的USART接收数据问题解决方案

    如何采用STM32单片机产生PWM

    STM32产生PWM是非常的方便的,要需要简单的设置定时器,即刻产生! (1)使能定时器时钟:...

    发表于 2020-04-01 15:36 ? 134次阅读
    如何采用STM32单片机产生PWM

    如何构建STM32单片机keil的开发环境

    在工程文件下,新建Startup、Headers、User、Libraries、CMSIS、List...

    发表于 2020-04-01 14:52 ? 105次阅读
    如何构建STM32单片机keil的开发环境

    STM32单片机USB速度慢的原因解析

    全速的USB设备,最大速度12Mb/s,但是如果跑的是HID之类慢速设备的协议,那么速度就没有那么快...

    发表于 2020-04-01 15:06 ? 164次阅读
    STM32单片机USB速度慢的原因解析

    STM32单片机的EXIT中断解析

    工程概要说明:定义一个按键(可自己定义),每按键一次,响应中断一次,在中断函数中LED提示灯变化一次...

    发表于 2020-04-01 15:04 ? 118次阅读
    STM32单片机的EXIT中断解析

    STM32单片机GPIO寄存器的功能解析

    对于GPIO端口,每个端口有16个引脚,每个引脚的模式由寄存器的四个位控制,每四位又分为两位控制引脚...

    发表于 2020-04-01 14:54 ? 176次阅读
    STM32单片机GPIO寄存器的功能解析

    STM32单片机对ADS1246芯片的驱动

    ADS1246的SPI时序,这个是需要提一下的,一般来说,SPI协议在上升沿锁存数据,下降沿更新数据...

    发表于 2020-04-01 14:39 ? 111次阅读
    STM32单片机对ADS1246芯片的驱动

    STM32单片机的can总线的配置

    CAN_InitStructure.CAN_TTCM=DISABLE;//禁止时间触发通信模式 ...

    发表于 2020-04-01 14:31 ? 202次阅读
    STM32单片机的can总线的配置

    STM32单片机的SYSTick定时器的设置

    SysTick 是一个24 位的倒计数定时器,当计到0 时,将从RELOAD 寄存器中自动重装载定时...

    发表于 2020-04-01 14:27 ? 97次阅读
    STM32单片机的SYSTick定时器的设置

    STM32单片机FSMC的使用解析

    LCD有如下控制线: CS:Chip Select片选,低电平有效 RS:Registe...

    发表于 2020-04-01 14:17 ? 96次阅读
    STM32单片机FSMC的使用解析

    STM32单片机如何实现规则多通道转换

    DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR...

    发表于 2020-04-01 16:22 ? 135次阅读
    STM32单片机如何实现规则多通道转换

    STM32单片机的断言机制函数assert_pa...

    这个宏定义的作用就是检查参数PERIPH,判断参数PERIPH是否为GPIOX(A.。.G)基址中的...

    发表于 2020-04-01 16:10 ? 119次阅读
    STM32单片机的断言机制函数assert_pa...

    如何采用STM32单片机实现SPI的驱动

    void SPI_cfg(void){ SPI_InitTypeDef SPI_InitStr...

    发表于 2020-04-01 15:56 ? 128次阅读
    如何采用STM32单片机实现SPI的驱动

    STM32单片机对红外接收系统的设计

    红外接收头一般是接收、放大、解调一体头,一般红外信号经接收头解调后,数据“0”和“1”的区别通常体现...

    发表于 2020-04-01 15:32 ? 116次阅读
    STM32单片机对红外接收系统的设计

    STM32单片机的IAP向量问题解决方案

    // 1:复制用户代码中的中断向量表到SRAM首地址 // 2: 开启SRAM的重映射功能,将...

    发表于 2020-04-01 15:24 ? 110次阅读
    STM32单片机的IAP向量问题解决方案

    STM32单片机的ADS1115通过模拟I2C驱...

    收获:对于I2C通信协议的理解更加深刻,对ADS1115也能进行单通道的使用。I2C的开始、发送/读...

    发表于 2020-04-01 16:49 ? 127次阅读
    STM32单片机的ADS1115通过模拟I2C驱...

    STM32单片机SPI的使用原理解析

    GPIO_InitTypeDef GPIO_InitStructure; //配置SPI2管脚...

    发表于 2020-04-01 16:35 ? 104次阅读
    STM32单片机SPI的使用原理解析

    STM32单片机重映射USART设计

    外部中断(EXTI)中与AFIO有关的寄存器是AFIO-EXTICR1、2、3,它们是用来选择EXT...

    发表于 2020-04-01 16:27 ? 79次阅读
    STM32单片机重映射USART设计

    STM32单片机的ADC多通道采样

    这里使用的是3362电位器(10K),即用STM32来测量PB0和GND两端的电压,这样的电路设计比...

    发表于 2020-04-01 16:12 ? 132次阅读
    STM32单片机的ADC多通道采样

    STM32单片机的CPU运行性能的算法测试

    此算法是基于操作系统的,理论上不限于任何操作系统,只要有任务调度就可以。本文将以FreeRTOST为...

    发表于 2020-04-01 16:01 ? 316次阅读
    STM32单片机的CPU运行性能的算法测试

    如何将STM32单片机的JTAG口作为GPIO使...

    针对F4系列,STM32F4库函数中,已经取消了GPIO_*PinRemapConfig()函数,对...

    发表于 2020-04-01 16:43 ? 115次阅读
    如何将STM32单片机的JTAG口作为GPIO使...

    STM32单片机的usb上电和断电函数的定义

    usb_pwr.c 这个文件看文件名就知道跟功耗有关了,有很多的状态:上电、掉电、挂起、恢复。

    发表于 2020-04-01 16:35 ? 106次阅读
    STM32单片机的usb上电和断电函数的定义

    STM32单片机对CAN过滤器的设置方法

    在使用STM32的CAN控制器进行数据收发,当用到位屏蔽模式的时候,就要设置过滤器了,这个关系到是否...

    发表于 2020-04-01 16:25 ? 123次阅读
    STM32单片机对CAN过滤器的设置方法

    如何通过STM32驱动nRF24L01发送数据

    最近在一个项目中用到了nRF24L01这个无线2.4G收发芯片,项目中有主机和分机,默认都是使用数据...

    发表于 2020-04-01 15:53 ? 104次阅读
    如何通过STM32驱动nRF24L01发送数据

    STM32单片机ADC的模拟看门狗的测试

    ADC的模拟看门狗用于检查电压是否越界。他又上下两个边界,可分别在寄存器ADC_HTR和ADC_LT...

    发表于 2020-04-01 16:49 ? 149次阅读
    STM32单片机ADC的模拟看门狗的测试

    TSC2000 具有 8/10/12 位 125...

    TSC2000是一个完整的PDA模拟接口电路。它包含一个完整的12位模数(A /D)电阻式触摸屏转换器,包括驱动器,测量触摸压力的控制器,以及8位数模转换器(D /A)转换器输出。 LCD对比度控制。 TSC2000通过标准SPI与主机控制器连接?串行接口。 TSC2000提供8至12位和高达125kHz的可编程分辨率和采样率,以适应不同的屏幕尺寸。 TSC2000还提供两个电池测量输入,其中一个可以读取电池电压高达6V,工作电压仅为2.7V。它还具有片上温度传感器,能够读取0.3°C的分辨率。 TSC2000采用TSSOP-20封装。 特性 4-WIRE触摸屏界面 比例转换 单电源2.7V至3.6V电源 串行接口 屏幕接触的内部检测 可编程8位,10位或12位分辨率 可编程采样率 直接电池测量(0.5V至6V) 片上温度测量 触摸压力测量 全功率下降控制 TSSOP-20包> 应用 个人数字助理 CELLULAR PHO...

    发表于 2020-04-01 17:30 ? 94次阅读
    TSC2000 具有 8/10/12 位 125...

    TSC2004 具有 SPI 串行接口的毫微瓦功...

    TSC2004是一款超低功耗触摸屏控制器,设计用于基于先进低压处理器的功耗敏感的手持式应用。它的工作电压低至1.2V,可由单节电池供电。它包含一个完整的,超低功耗,12位,模数(A /D)电阻式触摸屏转换器,包括驱动器和测量触摸压力的控制逻辑。 除此之外标准功能,TSC2004提供触摸屏测量的预处理,以减少总线负载,从而减少主机处理器资源的消耗,然后可以将其重定向到更关键的功能。 TSC2004支持I 2 C串行总线和数据传输协议在所有三种定义模式中:标准,快速和高速。它提供10或12位的可编程分辨率,以适应不同的屏幕尺寸和性能需求。 TSC2004提供微型,18引脚,5 x 5阵列,(2.554±0.54)mm x( 2.554±0.54)mm晶圆芯片级封装(WCSP)和20引脚,4 x 4 QFN封装。两种封装均具有-40°C至+ 85°C工业温度范围的特性。 特性 4线触摸屏界面 比例转换 1.2V至3.6V单电源 预处理以减少总线活动 高速I 2 C兼容接口 屏幕触摸的内部检测 基于寄存器的可编...

    发表于 2020-04-01 17:23 ? 63次阅读
    TSC2004 具有 SPI 串行接口的毫微瓦功...

    TSC2008-Q1 具有 SPI 的汽车类毫微...

    TSC2008-Q1是一款极低功耗的触摸屏控制器,专为基于高级低电压处理器的功耗敏感型手持式应用而设计。该器件的工作电源电压低至1.2 V,可采用单体电池供电.TSC2008-Q1具有包括驱动器与控制逻辑的完整超低功耗12位模数转换器(ADC)阻性触摸屏转换器,可测量触压。 除了这些标准特性之外,TSC2008-Q1还提供了触摸屏测量预处理以降低总线负载,从而减少主机处理器资源的消耗,这样就可以将这些资源转TSC2008-Q1支持SPI串行总线和数据传输。该器件可提供8位或12位的可编程分辨率,以适应不同的触摸屏尺寸与性能需求。 TSC2008-Q1采用16引脚,4 x 4 QFN封装.TSC2008-Q1针对-40°C至+ 105°C的工业温度范围进行了特性分析。 特性 符合汽车应用要求 四线式触摸屏接口 单1.2V至3.6V 高效20kHz(8位)或10kHz(12位) 通过预处理减少总线活动 高速SPI(高达25MHz) 基于简单命令的用户接口: TSC2046兼容型< /li> 8位或12位分...

    发表于 2020-04-01 16:19 ? 2次阅读
    TSC2008-Q1 具有 SPI 的汽车类毫微...

    TMP121 具有 SPI 接口的 ±1°C 温...

    TMP121和TMP123是SPI兼容的温度传感器,采用纤巧的SOT23-6封装。 TMP121和TMP123不需要外部元件,能够在40°C至+ 125°C的温度范围内测量温度在2°C范围内的温度。低电源电流和2.7V至5.5V的电源电压使TMP121和TMP123成为低功耗应用的理想选择。 TMP121和TMP123是各种通信中扩展热测量的理想选择,计算机,消费者,环境,工业和仪器仪表应用。 特性 数字输出:SPI兼容接口 分辨率:12位+符号,0.0625°C 准确度:±25°C,从25°C到+ 85°C(最大值) 低电流电流:50μA(最大) 宽电源范围: 2.7V至5.5V TINY SOT23-6封装 工作温度至150°C 应用 供电温度监测 计算机外围热; 笔记本计算机 手机 电池管理 OFFICE MACHINES < /ul> 所有其他商标均为其各自所有者的财...

    发表于 2020-04-01 17:42 ? 32次阅读
    TMP121 具有 SPI 接口的 ±1°C 温...

    TMP125 具有 SPI 接口的 ±1°C 温...

    TMP125是一款兼容SPI的温度传感器,采用纤巧的SOT23-6封装。 TMP125不需要外部元件,能够在25°C至+ 85°C的温度范围内测量2°C范围内的温度,在40°C至+ 125°C的温度范围内测量精度为2.5°C 。低电源电流和2.7V至5.5V的电源电压使TMP125成为低功耗应用的理想选择。 TMP125是各种通信,计算机,扩展热测量的理想选择。消费者,环境,工业和仪器仪表应用。 特性 DIGITAL OUTPUT:SPI兼容接口 分辨率:10位,0.25°C 精确度: ±2.0°C(最大值)从?? 25°C到+ 85°C ±2.5°C(最大值)从?? 40°C到+ 125°C < /ul> 低静态电流:50μA(最大值) 宽电源范围:2.7V至5.5V TINY SOT23-6封装 从40°C到+ 125°C的操作 应用 基站设备 计算机外围热; 笔...

    发表于 2020-04-01 17:04 ? 28次阅读
    TMP125 具有 SPI 接口的 ±1°C 温...

    LM71-Q1 具有 SPI 接口的汽车级 ±1...

    The LM71 is a low-power, high-resolution digital temperature sensor with an SPI and MICROWIRE compatible interface, available in the 5-pin SOT-23 or the 6-pin WSON (no pull back) package. The host can query the LM71 at any time to read temperature. Its low operating current is useful in systems where low power consumption is critical. The LM71 has 13-bit plus sign temperature resolution (0.03125°C per LSB) while operating over a temperature range of −40°C to +150°C. The LM71’s 2.65V to 5.5V supply voltage range, fast conversion rate, low supply current, and simple SPI interface make it ideal for a wide range of applications. The LM71Q is available in the 5-lead SOT-23 package only. 关键规格 所有商标均为其各自所有者的财产。 LM71Q符合AEC-Q100 0级标准,采用汽车级流程制造 5针SOT-23封装或6引脚无拉回WSON...

    发表于 2020-04-01 16:00 ? 22次阅读
    LM71-Q1 具有 SPI 接口的汽车级 ±1...