招标人法人授权委托书(法人委托本单位代理人);
招标人诚信承诺书
招标代理机构诚信承诺书
2招标工程备案(需网上申报)
标段划分
计划开竣工日期
○1发包初步方案 计划发包时间
合同估算价
招标方式(公开/邀请)
○2获得工程项目编号
立项批文(原件及复印件)
图纸审查报告(原件及复印件)
○3发包初步方案 资金落实证明(原件)
需提供的资料 招标人营业执照(原件及复印件)邀请招标需提供
招标人验资报告(原件及复印件)邀请招标需提供
代理合同
3编制资格预审文件、招标文件、工程量清单;
4编制招标方案
5发布招标公告或发送投标邀请书;五个工作日(需网上申报)
6 投标报名,填写投标报名及获取资格预审文件一览表(同时发放资格预审文件);资格预审文件费用
7接受投标人资格预审申请书;
8资格预审;(不良行为及在建工程查询)
在WiFi模块选型前期,一定要了解应用场景以及需要实现的功能(应用框图),以及功能实现过程中所能提供调用的接口(主从设备,功能,特殊的接口),考虑模块供电,大小,功耗,通讯频段,传输速率,传输距离等、性价比、特殊性(如果实际应用中会接入已有系统,有RJ45也可以直接用网线跟SKW92对接)。
目前市场中SKYLAB的WiFi模块大致分为USB WiFi模块、AP/Router WiFi模块和UART WiFi模块三大系列,具体型号如下:
若平台需要通过这些接口USB,PCIE,SDIO进行通讯,则选择做从设备的USB WiFi模块;若是想将4G信号转换为WiFi信号,则选择AP/Router WiFi模块;若是想做时下热门的物联网应用,则可以优先考虑UART WiFi模块;
WiFi模块选型要点:
1、通信接口:USB、WAN/LAN、UART、I2S、I2C、SPI、SD、PWM;
2、供电方式:33V是比较常用,也有5V供电;
3、天线的处理:有PCB板载;通过IPEX座子外接;结合主板自行设计;
4、模块的具体尺寸,方便实际的集成;
5、工作的频段:24-25GHz、50-58GHz;
6、平台的兼容性,一些主控MCU会有固定的wifi芯片参考型号;
7、软件平台:基本是linux和安卓,只是不同的内核版本;也有一些需要XP2000、Vista或windows的;
8、模块芯片厂家:主流还是Realtek/MTK/Atheros/博通以及一些国内的RDA/BK等;希望能够帮助到各位工程师WiFi模块的选型应用。
一次电池物联网设备
许多小型IoT器件要求用一次电池长期工作。
因此,在为传感器、MCU、无线通信各功能供应超低消耗工作且高效电源的同时,电池控制、监视也变得重要。在此,将示例一种解决方案,其添加了一般且适合电池长期工作的电源配置及切断运输和不使用时的电源消耗的功能。
备注:关于锂一次电池
30V是二氧化锰型 / 36V是亚硫酰氯型
解决方案概要
关于升压IC
电路框图(a)是可将MCU直接连接到电池的情况。简单的IoT/安全/可穿戴/医疗的小型器件多为这种结构。
近年来,在18V~38V的大范围内工作的MCU越来越多,这种情况下,无需使用电源IC,即可直接连接到电池使用。对此,RF和传感器需要33V的固定电压,即使工作电压宽也为了要满足规格,大多需要一定电压以上的电压,即需要升压IC。RF和传感器不会一直工作,有时RF也会每天通信一次,而且是几秒钟。
此外,即使看起来像一直在工作,其实有很多情况是通过细致地ON/OFF控制降低消耗电流,使电池耐用。为实现上述工作,在需要时,MCU将对RF和传感器的工作进行ON/OFF控制。此外停止时,不仅会停止RF和传感器的功能,还会使升压IC及稳压器停止工作,可长时间使用电池。要抑制工作时的纹波,使其噪声频率恒定,PWM固定型适合。
如果轻载的工作状态存在,则使用PWM/PFM转换(自动切换工作模式)型。此外,要抑制EMI,并使其小型化,线圈一体型适合。升压 DC/DC
XCL102: PWM, 线圈一体型XCL103: PWM/PFM, 线圈一体型XC9141: PWM, 外置线圈XC9142: PWM/PFM, 外置线圈关于LDO
为了使RF和传感器的电源噪声更低,有时会在升压IC的后级使用稳压器。具有高纹波抑制比/低噪声并且良好的负载瞬态响应特性的高速LDO最适合于消耗电流的陡峭变化的RF部位此外,传感器用途中100kHz以上的噪声重要的情况下,也有高频噪声低的低消耗型比高速型更适合的情况。稳压器XC6233: 高速
XC6215: 低消耗
关于RESET IC
监视电池电压,电压下降时,向MCU发送信号。使用超低消耗型,抑制对电池的负担。
关于改善电池的耐久性的解决方案 / Push Button Load SW
电路框图(b)是一种通过添加Push Button负载开关,功能追加和大幅度改善电池的耐久性的解决方案。为了共享MCU控制和按钮控制需要开关引脚右侧的SBD和MCU的VDD的上拉电阻是需要的。
Push Button 负载开关XC6194: 1A SW内置XC6193: 支持外置Pch驱动大电流本解决方案具有以下很大的优点。
1、防止从产品出货到开始使用的电池放电
被称为“Storage模式”、“Ship模式”。最适合不能拆卸电池的设备。此时的消耗电流几乎为0。通过按下按钮,即可开始使用。当然,可与此IC共享MCU控制用的按钮。
2、可用作主电源ON-OFF开关
可用按钮代替机械开关进行ON-OFF。例如,最适合防水设备。MCU可向SHDN引脚发送信号,并关闭Push Button负载开关。此外,我们还准备了可通过长按按钮关闭Push Button负载开关的类型。
3、解除死机
设备死机等异常时,可有效利用长按按钮的OFF功能。选择长达5秒或10秒的类型误 *** 作而关闭的可能性会降低,适用于死机对策。关闭后,再次按下按钮即可使之正常启动。并且Push Button负载开关作为对电池有益的功能,具有以下特点。
通过冲击电流防止功能,抑制启动时的冲击电流
启动完成后有PG引脚输出可起动使下一级电源IC和MCU工作。
如上所述,即使是以直接连接到电池工作的MCU为核心的简单的IoT器件,稍微花点功夫就可进一步改善电池的耐久性和容易满足小型高灵敏度要求。
Li-ion Polymer互联网设备
虽然是电池工作,但传感器和通信的频率高且功能复杂的IoT器件大多使用Li-ion/Polymer二次电池。对一次电池的充电控制和配合电源电压的超低消耗降压DCDC的追加是有代表性的电源解决方案。
解决方案概要
关于CHARGER IC
使用Li-ion/Polymer的IoT器件需要充电用电池充电IC和将电压降至MCU的电源电压范围内的降压DC/DC或稳压器。首先,我将说明电池充电IC的用法。充电电压(CV : Charge Voltage)和充电电流(CC : Charge Current)是基本选择。根据所需的充电电流,选择充电IC和电阻RISET。
电池充电ICXC6808: 5mA ~ 40mAXC6803: 40mA ~ 280mAXC6804: 200 mA ~ 800 mA本电路框的Li-ion/Polymer电池是内置NTC,外置PCM(电池保护电路)的情况。无论内置/外置都需要PCM。关于NTC,如果没有内置在电池中,请注意放置场所并将其外置。如果不需要NTC,请通过电池充电IC指定的方法处理NTC连接引脚。这里显示充电状态的CSO引脚已用于向MCU发送充电情况。CSO引脚为N沟开漏输出,已通过电阻上拉到MCU的电源,以使信号的“H”电平与MCU的I/O电压范围相匹配。
如果用LED显示充电状态,则通过限制电流用电阻驱动LED,使该电源从VIN获得。这是为了避免用充电IC供应的充电电流驱动LED。VIN中放置了浪涌保护用TVS。因为是外部引脚,可能会有ESD等浪涌、及劣质USB适配器在无负载时也可能会产生相当高的电压,要用TVS和齐纳二极管采取对策。
此外,在充电的同时使用负载电流的情况、或一直供电5V,将Li-ion/Polymer电池用于备用时,可使用具有从VIN或电池两者输出提供适当电流的Current Path功能的高功能充电IC。带Current Path和Shutdown 电池充电ICXC6806关于MCU专用降压DC/DC及LDO
Li-ion/Polymer电池高达CV = 42V或435V,一般来说,最大38V左右的MCU需要降压DC/DC或稳压器。在IoT设备中,MCU许多期间在Sleep状态下工作,因此IOUT从μA级(Sleep时)到100mA以上(工作峰值时)必须高效。通过将在超低消耗的同时搭载输出电压切换(VSET)功能的降压DC/DC用于此用途,可进一步改善电池的耐久性。如果使用输出电压切换功能,即使使用电流相同也能降低工作电压,可大大降低功耗。一般来说,MCU因内置的RF、模数和高速运算等,所以在工作时需要较高的电源电压,但可在Sleep时以最小电压工作。例如,Sleep时通过将VOUT从30V降至18V,可减少MCU的功耗,大幅改善电池的耐久性。降圧DC/DCXC9276: Iq = 200nA, 输出电压切换功能XCL210: 线圈一体型 Iq = 05μA (无输出电压切换功能)如果要廉价配置解决方案,稳压器适合。
此外在可充电的应用程序中,即使是效率低下的稳压器,有时也会被判断没有问题而使用。稳压器XC6504: Iq = 06μA, 无需输出电容
关于RF/Sensor专用降压DC/DC及LDO
RF和传感器也因电池电压高而需要降压DC/DC和稳压器。
仅在需要MCU时,设CE=“H”,工作降压DC/DC,向RF和传感器供应电压使之工作。停止时,不仅会停止RF和传感器的功能,也会停止降压DC/DC的工作,可使电池长时间使用。要抑制工作时的纹波,使其噪声频率恒定,PWM固定型适合。如果有轻载的工作状态,则使用PWM/PFM转换(自动切换工作模式)型。如果要使用稳压器,高纹波抑制/低噪声且像RF一样的消耗电流变化陡峭的负载瞬态响应出色的高速LDO最适合。此外,传感器用途中100kHz以上的噪声重要的情况下,会有高频噪声低的低消耗型比高速型更适合的情况。稳压器XC6233: 高速XC6215: 低消耗
关于RESET IC
使用超低消耗电压检测器可监视电池电压。MCU的电源电压与检测的电池电压不同,因此要使用N沟开漏型,通过电阻上拉到MCU的电源电压,并将信号传递给MCU。如果想降低检测后的上拉电阻消耗电流,将监测(VSEN)引脚从电源(VIN)引脚中分离,并使用CMOS输出型。通过从MCU的电源电压获得电源,可使用CMOS输出型。电压检测器XC6136 N型: Iq~100nA (N型 : N沟开漏输出)XC6135 C型: Iq~100nA,传感引脚分离型 (C型 : CMOS输出)关于Push Button重启控制器
关于作为死机对策而附加的Push Button重启控制器。
Push Button重启控制器XC6190Li-ion/Polymer的IoT设备一般不能拆卸电池,所以需要在死机等设备异常时进行复位并使之重新启动的功能。本例中有两个MCU控制用按钮,Push Button重启控制器与其共同使用。死机时,同时持续按下两个开关,规定的时间过去后,RSTB下降到“L”,可复位MCU。RSTB为N沟开漏输出,因此将上拉到MCU的电源电压。这里是向MCU发送了RESETB信号,另外也有例如控制驱动MCU电源的降压DC/DC的CE,通过长按RESET关闭DC/DC来强制重新启动的方法。如上所述,通过配置最合适功能的IC,可实现简单而工业设备所需的低噪声、长寿命的高性能IoT设备。
想购买元器件可以去唯样商城哦~~~
蓝牙网关是一个集成蓝牙和Wi-Fi的网关设备,该设备主要用于iBeacon设备的远程云管理,简单来说就是一个用于iBeacon设备的扫描管理设备。由于蓝牙网关是集成了蓝牙与Wi-Fi的网关设备,即蓝牙模块扫描设备并获取数据,Wi-Fi模块获取扫描数据再通过网将数据上传到服务器端,详细的说就是蓝牙模块扫描其信号覆盖范围内的iBeacon设备并且获取到被扫描的设备的数据,再通过蓝牙与Wi-Fi的串口将扫描到的设备通过网络把数据提交到服务器端,服务器端显示并管理这些扫描到的设备。
蓝牙网关最常用的功能就是进行反向定位,反向定位是利用蓝牙网关将扫描到的蓝牙数据通过网络上传到云端服务器上,并且利用了蓝牙扫描到的Beacon设备数据中的RSSI,然后在后台通过这个RSSI值能够确定iBeacon设备与蓝牙网关的距离或者范围,实现位置追踪的目的,并在后台地图实时展示Beacon设备位置。
同时,还可以将蓝牙网关的扫描范围标记为安全区域,一旦iBeacon设备离开安全范围,便能触发后台的安全报警。这就是实现安全看护和人员物资管理的关键。本实验采用W25Q64芯片
W25Q64是华邦公司推出的大容量SPI
FLASH产品,其容量为64Mb。该25Q系列的器件在灵活性和性能方面远远超过普通的串行闪存器件。W25Q64将8M字节的容量分为128个块,每个块大小为64K字节,每个块又分为16个扇区,每个扇区4K个字节。W25Q64的最小擦除单位为一个扇区,也就是每次必须擦除4K个字节。所以,这需要给W25Q64开辟一个至少4K的缓存区,这样必须要求芯片有4K以上的SRAM才能有很好的 *** 作。
W25Q64的擦写周期多达10W次,可将数据保存达20年之久,支持27~36V的电压,支持标准的SPI,还支持双输出/四输出的SPI,最大SPI时钟可达80Mhz。
一。SPI接口原理
(一)概述
高速,全双工,同步的通信总线。
全双工:可以同时发送和接收,需要2条引脚
同步: 需要时钟引脚
片选引脚:方便一个SPI接口上可以挂多个设备。
总共四根引脚。
(二)SPI内部结构简明图
MISO: 做主机的时候输入,做从机的时候输出
MOSI:做主机的时候输出,做从机的时候输入
主机和从机都有一个移位寄存器,在同一个时钟的控制下主机的最高位移到从机的最高位,同时从机的最高位往前移一位,移到主机的最低位。在一个时钟的控制下主机和从机进行了一个位的交换,那么在8个时钟的控制下就交换了8位,最后的结果就是两个移位寄存器的数据完全交换。
在8个时钟的控制下,主机和从机的两个字节进行了交换,也就是说主机给从机发送一个字节8个位的同时,从机也给主机传回来了8个位,也就是一个字节。
(三)SPI接口框图
上面左边部分就是在时钟控制下怎么传输数据,右边是控制单元,还包括左下的波特率发生器。
(四)SPI工作原理总结
(五)SPI的特征
(六)从选择(NSS)脚管理
两个SPI通信首先有2个数据线,一个时钟线,还有一个片选线,只有把片选拉低,SPI芯片才工作,片选引脚可以是SPI规定的片选引脚,还可以通过软件的方式选择任意一个IO口作为片选引脚,这样做的好处是:比如一个SPI接口上挂多个设备,比如挂了4个设备,第二个用PA2,第三个用PA3,第四个用PA4作为片选,我们
跟第二个设备进行通信的时候,只需要把第二个片选选中,比如拉低,其他设备的片选都拉高,这样就实现了一个SPI接口可以连接个SPI设备,战舰开发板上就是通过这种方法来实现的。
(七)时钟信号的相位和极性
时钟信号的相位和极性是通过CR寄存器的 CPOL 和 CPHA两个位确定的。
CPOL:时钟极性,设置在没有数据传输时时钟的空闲状态电平。CPOL置0,SCK引脚在空闲时为低电平,CPOL置1,SCK引脚在空闲时保持高电平。
CPHA:时钟相位 设置时钟信号在第几个边沿数据被采集
CPHA=1时:在时钟信号的第二个边沿
CPOL=1,CPHA=1,
CPOL=1表示时钟信号在没有数据传输时即空闲时的状态为高电平。如果CPHA=1,那么数据就在时钟信号的第二个边沿即上升沿的时候被采集。
CPOL= 0,CPHA=1, CPOL=0表示时钟信号在没有数据传输时即空闲时的状态为低电平。
如果CPHA=1,那么数据就在时钟信号的第二个边沿即下降沿的时候被采集。
CPHA=0时:在时钟信号的第一个边沿
CPOL=1,CPHA=0,
CPOL=1表示时钟信号在没有数据传输时即空闲时的状态为高电平。如果CPHA=1,那么数据就在时钟信号的第一个边沿即下降沿的时候被采集。
CPOL= 0,CPHA=0, CPOL=0表示时钟信号在没有数据传输时即空闲时的状态为低电平。
如果CPHA=1,那么数据就在时钟信号的第一个边沿即上升沿的时候被采集。
为什么要配置这两个参数
因为SPI外设的从机的时钟相位和极性都是有严格要求的。所以我们要根据选择的外设的时钟相位和极性来配置主机的相位和极性。必须要与从机匹配。
(八)数据帧的格式和状态标志
数据帧格式:根据CR1寄存器的LSBFIRST位的设置,数据可以MSB在前也可以LSB在前。
根据CR1寄存器的DEF位,每个数据帧可以是8位或16位。
(九)SPI中断
(十)SPI引脚配置 (3个SPI)
引脚的工作模式设置
引脚必须要按照这个表格配置。
二。SPI寄存器库函数配置
(一)常用寄存器
(二)SPI相关库函数
STM32的SPI接口可以配置为支持SPI协议或者支持I2S音频协议。默认是SPI模式,可以通过软件切换到I2S方式。
常用的函数:
1 void SPI_Init(SPI_TypeDef SPIx, SPI_InitTypeDef
SPI_InitStruct);//SPI的初始化
2 void SPI_Cmd(SPI_TypeDef SPIx, FunctionalState NewState); //SPI使能
3 void SPI_I2S_ITConfig(SPI_TypeDef SPIx, uint8_t SPI_I2S_IT,
FunctionalState NewState); //开启中断
4 void SPI_I2S_DMACmd(SPI_TypeDef SPIx, uint16_t SPI_I2S_DMAReq,
FunctionalState NewState);//通 过DMA传输数据
5 void SPI_I2S_SendData(SPI_TypeDef SPIx, uint16_t Data); //发送数据
6 uint16_t SPI_I2S_ReceiveData(SPI_TypeDef SPIx); //接收数据
7 void SPI_DataSizeConfig(SPI_TypeDef SPIx, uint16_t SPI_DataSize);
//设置数据是8位还是16位
8 其他几个状态函数
void SPI_Init(SPI_TypeDef SPIx, SPI_InitTypeDef
SPI_InitStruct);//SPI的初始化
结构体成员变量比较多,这里我们挑取几个重要的成员变量讲解一下:
第一个参数 SPI_Direction 是用来设置 SPI 的通信方式,可以选择为半双工,全双工,以及串行发和串行收方式,这里我们选择全双工模式
SPI_Direction_2Lines_FullDuplex。
第二个参数 SPI_Mode 用来设置 SPI 的主从模式,这里我们设置为主机模式 SPI_Mode_Master,当然有需要你也可以选择为从机模式
SPI_Mode_Slave。
第三个参数 SPI_DataSiz 为 8 位还是 16 位帧格式选择项,这里我们是 8 位传输,选择SPI_DataSize_8b。
第四个参数 SPI_CPOL 用来设置时钟极性,我们设置串行同步时钟的空闲状态为高电平所以我们选择 SPI_CPOL_High。
第五个参数 SPI_CPHA
用来设置时钟相位,也就是选择在串行同步时钟的第几个跳变沿(上升或下降)数据被采样,可以为第一个或者第二个条边沿采集,这里我们选择第二个跳变沿,所以选择
SPI_CPHA_2Edge
第六个参数 SPI_NSS 设置 NSS 信号由硬件(NSS 管脚)还是软件控制,这里我们通过软件控
制 NSS 关键,而不是硬件自动控制,所以选择 SPI_NSS_Soft。
第七个参数 SPI_BaudRatePrescaler 很关键,就是设置 SPI 波特率预分频值也就是决定 SPI 的时
钟的参数 , 从不分频道 256 分频 8 个可选值,初始化的时候我们选择 256 分频值
SPI_BaudRatePrescaler_256, 传输速度为 36M/256=140625KHz。
第八个参数 SPI_FirstBit 设置数据传输顺序是 MSB 位在前还是 LSB 位在前, ,这里我们选择
SPI_FirstBit_MSB 高位在前。
第九个参数 SPI_CRCPolynomial 是用来设置 CRC 校验多项式,提高通信可靠性,大于 1 即可。
设置好上面 9 个参数,我们就可以初始化 SPI 外设了。
初始化的范例格式为:
SPI_InitTypeDef SPI_InitStructure;
SPI_InitStructureSPI_Direction = SPI_Direction_2Lines_FullDuplex;
//双线双向全双工
SPI_InitStructureSPI_Mode = SPI_Mode_Master; //主 SPI
SPI_InitStructureSPI_DataSize = SPI_DataSize_8b; // SPI 发送接收 8 位帧结构
SPI_InitStructureSPI_CPOL = SPI_CPOL_High;//串行同步时钟的空闲状态为高电平
371
SPI_InitStructureSPI_CPHA = SPI_CPHA_2Edge;//第二个跳变沿数据被采样
SPI_InitStructureSPI_NSS = SPI_NSS_Soft; //NSS 信号由软件控制
SPI_InitStructureSPI_BaudRatePrescaler = SPI_BaudRatePrescaler_256; //预分频
256
SPI_InitStructureSPI_FirstBit = SPI_FirstBit_MSB; //数据传输从 MSB 位开始
SPI_InitStructureSPI_CRCPolynomial = 7; //CRC 值计算的多项式
SPI_Init(SPI2, &SPI_InitStructure); //根据指定的参数初始化外设 SPIx 寄存器
(三)程序配置步骤
三。W25Qxx配置讲解
(一)电路图
片选用的PB12
W25Q64 是华邦公司推出的大容量SPI FLASH 产品,W25Q64 的容量为 64Mb,该系列还有 W25Q80/16/32
等。ALIENTEK 所选择的 W25Q64 容量为 64Mb,也就是 8M 字节。(1M=1024K)
W25Q64 将 8M 的容量分为 128 个块(Block),每个块大小为 64K 字节,每个块又分为 16个扇区(Sector),每个扇区 4K
个字节。W25Q64 的最少擦除单位为一个扇区,也就是每次必须擦除 4K 个字节。这样我们需要给 W25Q64 开辟一个至少 4K 的缓存区,这样对 SRAM
要求比较高,要求芯片必须有 4K 以上 SRAM 才能很好的 *** 作。
W25Q64 的擦写周期多达 10W 次,具有 20 年的数据保存期限,支持电压为 27~36V,W25Q64 支持标准的
SPI,还支持双输出/四输出的 SPI,最大 SPI 时钟可以到 80Mhz(双输出时相当于 160Mhz,四输出时相当于 320M),更多的 W25Q64
的介绍,请参考 W25Q64 的DATASHEET。
在往一个地址写数据之前,要先把这个扇区的数据全部读出来保存在缓存里,然后再把这个扇区擦除,然后在缓存中修改要写的数据,然后再把整个缓存中的数据再重新写入刚才擦除的扇区中。
便于学习和参考再给大家分享些spi 的资料
stm32之SPI通信
>
WIFI模块分为普通WiFi模块和嵌入式WiFi模块,Wi-Fi模块又名串口Wi-Fi模块。
所以严格来说,嵌入式WiFi模块属于串口WiFi模块。
用在智能插座上,那肯定是用嵌入式WiFi模块
普通WiFi模块和嵌入式WiFi模块一个很重要的区别就是功耗不同,普通WiFi模块功耗比较高,而嵌入式WiFi模块是专为物联网而生,在功耗方面做了很大的改善!
智能插座要求的功能比较简单单一,比如远程控制其开或关等,所以嵌入式WiFi模块上使用的单片机MCU就足以满足处理功能!
嵌入式WiFi模块应用在智能插座的应用框图是这样的:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)