采集数据(数据采集软件有哪些)
采集数据(数据采集软件有哪些)原创一口Linux2021060320:04一、nRF52840蓝牙芯片简介
自从nordic在2018年强势推出nRF52840这颗重磅级芯片后,蓝牙5。0技术开始在业界流行起来,随后蓝牙5。0技术开始成为了各大品牌的旗舰手机标配功能。
nRF528401。芯片优势
这个芯片最强大的优势就是低速远距离模式,及LECODED。
官方宣称最远能实现300米的传输距离,在开启低速(125kbpss)远距离模式的情况下,并把发射功率调到最大8db。
但是更让人吃惊的人有一次我和同事用在某宝买来某蓝牙模块商家自己设计的52840蓝牙开发板进行远距离测试,我们的测试方法是用两块开发板一块用来当从机角色,以200ms的广播间隔不停的对外广播,另一块用来当主机角色,不停的扫描蓝牙5的广播包,扫描成功后就用串口把数据发送到笔记本的串口调试助手里。
通过在比较空旷的地带,我们实现了最远400多米的距离还能断断续续的扫描到蓝牙5的广播包。2。那么蓝牙的5。0远距离是怎么实现的呢?
答案是编码的方式!
通过一个二分之一码率和八分之一码率的代码,其中,二分之一码率的代码在500kbps下,提供了大约45dB的灵敏度以及接近两倍的范围;至于八分之一码率的代码则可以125kbps下达到12dB的灵敏度,并将传输距离扩大至四倍。
这种实现远距离传输的方式与LORA扩频有异曲同工之妙!
蓝牙天线一般可以采用板载PCB天线,贴片陶瓷天线,和棒状天线。其中PCB天线天线实现起来成本最低,是目前普遍的一种实现方式,而贴片陶瓷天线是最节省模块尺寸面积的一种方式,棒状天线是信号增益和数据传输最可靠的一种方式,各位可以根据自己的实际需求选择适合自己应用场景的天线种类。
3。芯片特点:
nRF52840芯片特点:支持Thread无线通信协议支持蓝牙5。0,支持多协议支持蓝牙5。0的数据速率:2Mbs,1Mbs,500kbs,125kbs32位ARMCortexM4F处理器,64MHz时钟高速2Mbs数据速率高达104dB的链路预算全速12MbsUSB控制器片上NFCA标签独立于协议栈之外的应用程序开发输出功率20dBm~8dBm接收灵敏度96dBm与nRF52、nRF51、nRF24L、nRF24AP系列空中包兼容ARMTrustZoneCryptocell310密码加速器宽供电电压范围:1。7v~5。5vSPIUARTPWM接口32M高速SPI接口所有的数字接口都支持EasyDMA12bit200kSPSADC128位AESECBCCMAAR协处理器单端天线输出(片上balun)片上DCDC降压变换器正交解码器(QDEC)所有的外设模块都支持独立电源管理为外部元器件提供高达25mA的稳定电流
nRF52840是一种先进的、高度灵活的单芯片解决方案,它的设计为蓝牙5的主要功能进步做好准备,并利用了蓝牙5增强的性能,包括远程和高性能。
nRF52840为CortexTMM系列增加了最佳的安全级别,并配备了片上ARM密码加速器。
nRF52840采用与现有nRF52系列SoC相同的硬件和软件架构。其核心是ARMCortexm4处理器,它允许更快、更高效地计算复杂。
功能的DSP和那些需要浮点数学。FLASH和RAM都有广泛的内存可用度,分别为1MB256KB。
CortexM4与浮点和内存可用性的结合为真正的单芯片应用程序提供不错的功能。片内集成全速(12Mbps)USB2。0控制器。
广泛的外围设备可利用能够与许多高性能的数字接口,如高速SPI(32MHz)和四电平SPI(32MHz),允许直接接口到显示器和外部存储源。
nRF52840从5。5V到1。7V供电电压,允许从充电电池和USB电源直接供电。NRF52840已经准备好利用蓝牙5规范的到来对蓝牙LE的相当大的性能改进。
最重要的是支持范围更广(与蓝牙4。x相比最多可达x4),空中数据速率翻了一番,从蓝牙4。x中的1Mbps提高到2Mbps。
无线网络支持802。15。4物理层和MAC层,适合于使用802。15。4的其他堆栈,如Zigbee。它既支持蓝牙5的远程功能,也支持蓝牙5的远程功能。
还有802。15。4,它已经是家庭网络协议的一种流行技术。
最大输出功率为8dBm,可实现gt;111dBm的总链路预算。NRF52840具有片上ARMCryptoCell310密码硬件加速器。
CryptoCell提供了广泛的密码和安全功能,用于将实体安全构建到应用程序中从头到尾。
与CPU在软件中执行的等效操作相比,使用CryptoCell还可以使相关的安全操作运行得更快,使用的处理时间和功率也更少。4。内部模块图:
Blockdiagram
5。芯片引脚参考电路
以上是nordic官方提供蓝牙最小系统原理图,这里需要特别强调的是这颗芯片供电方式。52840内部集成了高性能的电源管理芯片PMU和电压调节器。
可以支持LDO和DCDC方式对CPU和射频部分进行供电,LDO方式电压纹波最小能带来更好的射频性能,但是其电源效率较低,不适合对功耗要求特别高的场合。
DCDC方式正好弥补了LDO方式的缺点,但是其纹波较大,但是在芯片外围需要添加LC振荡电路进行滤波。
官方提供的工程代码框架默认使用的是LDO供电方式。以下就是52840电源模块示意图:
6。MQ2气体传感器
芯片参数:
下图显示的是整个产品模块功能示意图,电路结构较为简单,便于大规模普及。
nRF52840气体传感器上面集成了MQ2气体传感器,可以用来检测工业区和居民小区周围可能泄露的可燃性气体,然后通过串口通信把气体数据传输给nRF52840芯片,然后nRF52840芯片通过蓝牙5。0数据帧把气体数据按照一定的格式广播出去,手机APP或者蓝牙报警设备就可以随时检测到气体数据,并发出报警功能,从而避免更大的安全事故发生。
MQ气体传感器使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。
当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度的增加而增大。
使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。MQ气体传感器对甲烷的灵敏度高,对丙烷、丁烷也有较好的灵敏度。这种传感器可检测多种可燃性气体,特别是天然气,是一款适合多种营养的低成本传感器。7。气体传感器工作模式介绍
由于传感器采用了100MA的纽扣电池供电,NRF52840作为主控芯片每1S读取5次传感器的数据,通过一定的滤波算法,计算出正确的数据。当52840不采集数据的时候,也自动进入休眠模式,从而达到节省功耗的目的。
正常情况下,52840每5分钟通过串口接收气体传感器的数据,再以广播的形式把数据广播出去,由于要保证手机能扫描到52840的数据,因此广播次数不能随便设,次数设多了,功耗又大了,次数设少了,手机有时又不能扫描到,这与手机开启的扫描占空比有关,还有与扫描通道有关,蓝牙共有3个广播通道,一次只能扫一个,所以存在一定的概率。
经过综合测试,我们决定正常情况下广播次数设为30次,异常情况下,广播次数设为50次。二、蓝牙协议栈工作流程介绍
1。BLE优势
自从蓝牙4。0BLE诞生以来,以蓝牙为基础的物联网设备开启了爆发式增长,其原因在于BLE具备下面几点优势:
BLE具备相当于WIFI10分之1的极低功耗,一颗纽扣电池就能维持设备工作很长时间。
BLE芯片成本很低,其价格已经做到和MCU相当了,这大大的促进了BLE设备的快速增长。
BLE通信和工作稳定性极强,由于蓝牙超强的跳频机制,可以让BLE轻松避开被干扰了的信道,保持高速通信。
BLE通信距离远,BLE特别是到了蓝牙5。0时代,通信距离达到了400米,比一般的WIFI距离都远。
BLE通信速度有了明显的提升,特别是到了蓝牙5。0时代,通信速度达到了2Mbs,这个速度可以传输音频信号了。2。BLE启动工作流程顺序如下:
启动后进入main函数,首先初始化串口,波特率为9600,用来和MQ2进行通信。
log打印初始化,软件定时器初始化,然后蓝牙协议栈初始化,主要是完成协议相关标签设置,以及RAM初始地址设置,使能协议栈,开启蓝牙观察者模式。
GAP角色初始化,里面进行了蓝牙开放连接模式设置,广播器件名设置,然后最小连接间隔设为10MS,最大连接间隔设为50MS,从机延迟设为0,连接超时设为1S。
GATT初始化,GATT是传输层,用来传输真正的数据,主要是进行MTU最大传输数据单元的设置,蓝牙4。0是31个字节,而蓝牙5。0可以设置253个字节,大大的提升了数据的吞吐量。
服务的初始化,这里添加了串口收发服务,向蓝牙协议栈注册了串口数据接收回调函数。
连接参数更新初始化,因为连接参数主机和从机是可以协商的,
比如有大数据量要传输的时候,主机就可以发起参数更新请求,从机根据自己的配置,可以响应或者拒绝主机的更新请求,初始化工作主要做了更新连接参数的相关规则,比如首次更新连接参数时间,第二次更新连接参数时间,最大协商更新连接参数次数。接着是发射功率设置,由于工业区周围环境非常复杂,干扰性很大,干扰会造成距离的大大的降低,所以我们采用了最大的发射功率为8db,空旷地带测试,传输距离可达400M,完全满足大部分客户的使用场景要求。接着是开启低速远距离广播模式,模式设为通用可发现模式。
蓝牙的大部分应用都是以服务的形式提供的,比如心率采集服务,血压采集服务,温湿度采集服务,每个服务都有一个唯一的128位UUID,UUID可以是蓝牙联盟定义的,也可以是芯片厂商定义的,还可以是个人定义的,以来区分服务的内容,以便接收方能正确的解析服务数据。
这点和can2。0B很相似,都是采用协议数据单元PDU。接着是广播初始化,广播模式设为快速广播,广播间隔设为100ms,注册广播超时回调函数,设置物理层的广播速度为1M,蓝牙协议规定,广播速度只能设为1M,但连接后传输速度可以设为2M。3。蓝牙建立过程
上图显示的是蓝牙建立连接的过程。4。蓝牙协议栈启动过程
上图显示的是蓝牙协议栈启动流程,本次代码工程框架使用的协议栈版本是FLASHS140NRF527。01SOFTDEVICE。工程版本使用的是SDK17。0。
这方面的资料大家可以去NORDIC官网进行下载,或者后台回复【nRF52840】。四、代码实现
下面开始介绍52840部分关键性的代码1。启动流程
芯片启动流程流程如下:
intmain(void){boolerasebonds;Initialize。uartinit();loginit();timersinit();buttonsledsinit(amp;erasebonds);powermanagementinit();blestackinit();gapparamsinit();gattinit();servicesinit();advertisinginit();connparamsinit();sdblegaptxpowerset(BLEGAPTXPOWERROLEADV,madvertising。advhandle,8);Startexecution。printf(rnUARTstarted。rn);NRFLOGINFO(DebugloggingforUARToverRTTstarted。);advertisingstart();nrfgpiocfginput(6,NRFGPIOPINPULLUP);Entermainloop。for(;;){if(startadvflag0xa5){startadvflag0x5a;(void)sdblegapadvstop(madvertising。advhandle);nrfuartdisable(NRFUART0);advertisinginit();advertisingstart();}if(startadvflag0x5a){idlestatehandle();}else{if(nrfgpiopinread(6)1){nrfgpiocfgsenseinput(6,NRFGPIOPINPULLUP,NRFGPIOPINSENSELOW);sdpowersystemoff();}}}}以上这段代码循环处理动态的向外广播气体传感器数据,if(startadvflag0xa5)这个变量是uarteventhandle串口接收中断里进行赋值的,因为52840和气体传感器通过串口进行相连,当此变量等于0xa5时,说明传感器又发来数据了,(void)sdblegapadvstop(madvertising。advhandle);这句的意思是停止当前的广播,nrfuartdisable(NRFUART0);这句的意思是暂时关了串口中断,advertisinginit();这句的意思是重新配置广播数据,其中就包含在uarteventhandle串口中断中接收的传感器数据。advertisingstart();然后就开始新的广播。2。核心函数详解1)advertisinginit()
功能:此函数主要实现的是如何设置蓝牙的广播数据内容,companyidentifier:代表的是厂商ID,可以自己随意设置advinterval:表示的是广播间隔advduration:表示的是广播超时bleadvprimaryphy:表示的是主广播物理通道bleadvextendedenabledtrue;表示的是开启蓝牙5。0扩展广播。
本次设置的是BLEGAPPHYCODED,即低速远距离编码模式。
bleadvsecondaryphyBLEGAPPHYCODED表示的是第二广播物理通道。briefFunctionforinitializingtheAdvertisingfunctionality。staticvoidadvertisinginit(void){uint32terrcode;bleadvertisinginittinit;memset(amp;init,0,sizeof(init));init。advdata。nametypeBLEADVDATAFULLNAME;init。advdata。includeappearancefalse;init。advdata。flagsBLEGAPADVFLAGSLEONLYGENERALDISCMODE;mmanufdata。companyidentifiercompanyidentifier;0xaa55;mmanufdata。data。sizemanufdatasize;mmanufdata。data。pdatamanufdata;init。advdata。pmanufspecificdataamp;mmanufdata;init。srdata。uuidscomplete。uuidcntsizeof(madvuuids)sizeof(madvuuids〔0〕);init。srdata。uuidscomplete。puuidsmadvuuids;init。config。bleadvfastenabledtrue;init。config。bleadvfastintervaladvinterval;init。config。bleadvfasttimeoutadvduration;init。config。bleadvprimaryphyBLEGAPPHYCODED;BLEGAPPHY1MBPS;init。config。bleadvsecondaryphyBLEGAPPHYCODED;BLEGAPPHY2MBPS;init。config。bleadvextendedenabledtrue;init。evthandleronadvevt;errcodebleadvertisinginit(amp;madvertising,amp;init);APPERRORCHECK(errcode);bleadvertisingconncfgtagset(amp;madvertising,APPBLECONNCFGTAG);}
设置完成后,就可以使用支持蓝牙5。0的智能手机使用nrfconnectAPP进行扫描广播包,我们测试用的是华为Mate20,几乎支持蓝牙5。0的所有特性。
此函数主要设置的是蓝牙器件名,连接间隔和从机延时等等相关的参数,设置完成后,也可以使用nrfconnectAPP进行查看。
2)servicesinit()
功能:此函数实现的是蓝牙服务初始化,向蓝牙协议栈底层注册了nrfqwrerrorhandler和nusdatahandler这两个回调函数,其中nusdatahandler是一个非常核心的函数,当52840接收到蓝牙数据时,此回调函数立即被调用,协议栈底层会上抛出应用数据的指针,以及数据的长度。briefFunctionforinitializingservicesthatwillbeusedbytheapplication。staticvoidservicesinit(void){uint32terrcode;blenusinittnusinit;nrfbleqwrinittqwrinit{0};InitializeQueuedWriteModule。qwrinit。errorhandlernrfqwrerrorhandler;errcodenrfbleqwrinit(amp;mqwr,amp;qwrinit);APPERRORCHECK(errcode);InitializeNUS。memset(amp;nusinit,0,sizeof(nusinit));nusinit。datahandlernusdatahandler;errcodeblenusinit(amp;mnus,amp;nusinit);APPERRORCHECK(errcode);}3)nusdatahandler()
功能:
函数里进行解析相关的功能。
具体如何解析由手机APP发送的数据格式决定,也就是开发者制定的应用层协议。briefFunctionforhandlingthedatafromtheNordicUARTService。detailsThisfunctionwillprocessthedatareceivedfromtheNordicUARTBLEServiceandsendittotheUARTmodule。param〔in〕pevtNordicUARTServiceevent。snippet〔HandlingthedatareceivedoverBLE〕staticvoidnusdatahandler(blenusevttpevt){if(pevtgt;typeBLENUSEVTRXDATA){uint32terrcode;NRFLOGDEBUG(ReceiveddatafromBLENUS。WritingdataonUART。);NRFLOGHEXDUMPDEBUG(pevtgt;params。rxdata。pdata,pevtgt;params。rxdata。length);for(uint32ti0;ilt;pevtgt;params。rxdata。length;i){do{errcodeappuartput(pevtgt;params。rxdata。pdata〔i〕);if((errcode!NRFSUCCESS)amp;amp;(errcode!NRFERRORBUSY)){NRFLOGERROR(FailedreceivingNUSmessage。Error0xx。,errcode);APPERRORCHECK(errcode);}}while(errcodeNRFERRORBUSY);}if(pevtgt;params。rxdata。pdata〔pevtgt;params。rxdata。length1〕39;r39;){while(appuartput(39;n39;)NRFERRORBUSY);}}}4)bleevthandler()
功能:
此函数主要用来检测蓝牙的连接或断开等相关事件。briefFunctionforhandlingBLEevents。param〔in〕pbleevtBluetoothstackevent。param〔in〕pcontextUnused。staticvoidbleevthandler(bleevttconstpbleevt,voidpcontext){uint32terrcode;switch(pbleevtgt;header。evtid){caseBLEGAPEVTCONNECTED:NRFLOGINFO(Connected);errcodebspindicationset(BSPINDICATECONNECTED);APPERRORCHECK(errcode);mconnhandlepbleevtgt;evt。gapevt。connhandle;errcodenrfbleqwrconnhandleassign(amp;mqwr,mconnhandle);APPERRORCHECK(errcode);break;caseBLEGAPEVTDISCONNECTED:NRFLOGINFO(Disconnected);LEDindicationwillbechangedwhenadvertisingstarts。mconnhandleBLECONNHANDLEINVALID;break;caseBLEGAPEVTPHYUPDATEREQUEST:{NRFLOGDEBUG(PHYupdaterequest。);blegapphystconstphys{。rxphysBLEGAPPHYAUTO,。txphysBLEGAPPHYAUTO,};errcodesdblegapphyupdate(pbleevtgt;evt。gapevt。connhandle,amp;phys);APPERRORCHECK(errcode);}break;caseBLEGAPEVTSECPARAMSREQUEST:Pairingnotsupportederrcodesdblegapsecparamsreply(mconnhandle,BLEGAPSECSTATUSPAIRINGNOTSUPP,NULL,NULL);APPERRORCHECK(errcode);break;caseBLEGATTSEVTSYSATTRMISSING:Nosystemattributeshavebeenstored。errcodesdblegattssysattrset(mconnhandle,NULL,0,0);APPERRORCHECK(errcode);break;caseBLEGATTCEVTTIMEOUT:DisconnectonGATTClienttimeoutevent。errcodesdblegapdisconnect(pbleevtgt;evt。gattcevt。connhandle,BLEHCIREMOTEUSERTERMINATEDCONNECTION);APPERRORCHECK(errcode);break;caseBLEGATTSEVTTIMEOUT:DisconnectonGATTServertimeoutevent。errcodesdblegapdisconnect(pbleevtgt;evt。gattsevt。connhandle,BLEHCIREMOTEUSERTERMINATEDCONNECTION);APPERRORCHECK(errcode);break;default:Noimplementationneeded。break;}}5)uarteventhandle()
功能:uarteventhandle也是一个常用的回调函数,在串口初始化时对协议栈底层进行注册,当52840串口接收到数据时,此回调函数立即被调用。
大家可以在里面添加解析串口命令相关的功能代码,其实完全可以把它当作STM32串口中断服务函数来用。
只是特别说明的是52840的串口设计得更强大一些,带有256字节的硬件FIFOBUFF,而且支持EasyDMA进行数据搬移,这大大的减轻了CPU内核的负担,节省了功耗。
所谓EasyDMA就是串口专用的DMA,只是不能用来传输flash的数据。briefFunctionforhandlingappuartevents。detailsThisfunctionwillreceiveasinglecharacterfromtheappuartmoduleandappendittoastring。ThestringwillbebesentoverBLEwhenthelastcharacterreceivedwasa39;newline39;39;n39;(hex0x0A)orifthestringhasreachedthemaximumdatalength。snippet〔HandlingthedatareceivedoverUART〕voiduarteventhandle(appuartevttpevent){staticuint8tdataarray〔BLENUSMAXDATALEN〕;staticuint8tindex0;uint32terrcode;switch(peventgt;evttype){caseAPPUARTDATAREADY:UNUSEDVARIABLE(appuartget(amp;dataarray〔index〕));if(dataarray〔0〕0xfa){index;if((dataarray〔1〕0x01)amp;amp;(dataarray〔2〕gt;3)amp;amp;(indexgt;12)){if(dataarray〔2〕gt;10){advdurationdataarray〔2〕19;advinterval320;}else{advdurationdataarray〔2〕9;advinterval160;}companyidentifier((uint16t)(dataarray3)lt;lt;8)(dataarray4);memcpy(manufdata,dataarray5,6);memset(dataarray,0,12);index0;startadvflag0xa5;}}if(indexgt;12){memset(dataarray,0,12);index0;}break;caseAPPUARTCOMMUNICATIONERROR:APPERRORHANDLER(peventgt;data。errorcommunication);break;caseAPPUARTFIFOERROR:APPERRORHANDLER(peventgt;data。errorcode);break;default:break;}}voiduarteventhandle(appuartevttpevent),这个函数是串口接收中断回调函数,由NRF串口底层驱动库上抛的,APPUARTDATAREADY,表示串口数据已经准备好UNUSEDVARIABLE(appuartget(amp;dataarray〔index〕));表示读取串口数据,并放到数组dataarray,每读取一次,index1次,此中断回调函数,每收到一个字节,就会被调用一次。if(dataarray〔0〕0xfa)解析协议传感器数据头,传感器串口发送过来的数据是以0xfa开头的,后面就是长度,传感器数据,和校验码。advduration代表广播数次数,具体广播多少次由传感器发送过来的数据指定的,一般是数据比较异常,广播次数就会比较多,advinterval320;这个是设置广播间隔,数值越大,越省电。companyidentifier表示公司ID,也会体现在广播数据内容里,手机APP可以观察到。memcpy(manufdata,dataarray5,6);这句是提取数组里的传感器数据到manufdata里,然后广播初始化的时候会提取manufdata这个变量的数据,startadvflag0xa5;启动新的广播标致,主循环里会不断检查这个标致。if(indexgt;12)index0;由于协议数据长度是12个字节,接收完成了,就要清0。
文中项目完整代码、用到的蓝牙调试程序,公众号
支付宝蚂蚁庄园小鸡问答传统节日中正月初三又被称为蚂蚁庄园2月14日答案最新游侠手游相信现在大家对于小鸡庄园每日问答都是非常关心的吧,并且近期发现很多小伙伴都很想知道传统节日中正月初三又被称为蚂蚁庄园2月14日答案最新游侠手游这个问题,那么既然现在小伙伴们对于传统
中越关系(中越关系现状2021)中越关系(中越关系现状2021)越南在东南亚地区的位置还是比较重要的,而且现在的越南经济发展速度非常快,越南也是南海周边国家。所以以美国为首的西方国家,一直都在拉拢越南。日本,美国
知柏地黄丸的作用与功效与副作用(乱用会带来3个副作用)知柏地黄丸的作用与功效与副作用(乱用会带来3个副作用)知柏地黄丸是一种比较常见的中成药,也正是因为它的常见,让很多人在平时会经常使用到它。很多人在自己感觉到头晕耳聋喉咙肿痛牙痛等现
马耳他十字机芯(江诗丹顿马耳他十字)马耳他十字机芯(江诗丹顿马耳他十字)要闻大观20210524170800男人喜欢机械的复杂工艺,和高冷的美感,高级制表将这点做到了极致。无论是裸露在你眼前的精湛镂空表盘,还是犹抱琵
迟重瑞(迟重瑞面相)迟重瑞(迟重瑞面相)5月17日,前中国女首富陈丽华带着大女儿赵莉现身某活动,引发网友热议。80岁的陈丽华满头黑发,讲话时中气十足,逻辑清晰,丝毫不像是耄耋之年的老人。她的皮肤细腻光
地沟油的记者李翔(地沟油的记者怎么死的)地沟油的记者李翔(地沟油的记者怎么死的)记者因报道地沟油遇刺?假的!每每有一些贴近民生的消息总是能迅速引起朋友圈的注意,并且急速的传播出去比如说地沟油。但是这类信息的真实性,是不是
西藏自驾(自驾西藏这些必须准备齐全)西藏自驾(自驾西藏这些必须准备齐全)七月了,自驾的朋友已经蠢蠢欲动,你是否已经准备好来一场说走就走的自驾游了呢?身边应该就有很多朋友打算自驾去西藏吧!自驾进藏难,难于上青天已经是十
上海立信会计学院体育部(上海立信会计学院2019年录取数据分析)上海立信会计学院体育部(上海立信会计学院2019年录取数据分析)本地考生和家长,最了解本地大学!所以,本地考生对本地大学的选择,是外省考生选择的一个重要参考!今天和大家介绍的一所大
大班上学期班务总结(幼儿园大班工作总结上学期)大班上学期班务总结(幼儿园大班工作总结上学期)辞旧迎新,在忙忙碌碌中这一学期又将结束了,回顾整个学期,在我们的努力下,各方面的工作都开展得相当顺利,也取得了一定的成绩。本学期我班幼
大班班务总结(大班第一学期班务总结最新)大班班务总结(大班第一学期班务总结最新)大班五月工作总结范文1五月,忙碌而又丰富多彩,我们师生共同演绎着五月的精彩!共同奏响快乐阅读爱在蓝天下的主旋律,为六一儿童节的毕业班汇报演出
小学二年级工作总结(二年级学生周小结)小学二年级工作总结(二年级学生周小结)原创张小桐201920210602163803小何的公司是做电子物流的,因为小何工作出众被提拔为公司引流部门的主任,引流部门跟其他部门不一样,