-
地质灾害预警系统设计与实现
地质灾害预警系统设计与实现本系统针对地质灾害,进行了调研和分析,总结了目前人们对地质灾害预警系统的需求,从数据、功能、性能和稳定等方面进行了阐述,并针对用户的需求设计了一种基于三层体系架构的WebGIS体系架构,在此基础上对系统的各个功能模块进行了详细的设计。
- 2020-12-08下载
- 积分:1
-
IEEE14节点潮流计算程序
这是一款IEEE14节点的潮流算程序,主要进行潮流计算
- 2020-12-05下载
- 积分:1
-
相对定向代码
在摄影测量课程中一定要做的一节课,相对定向和绝对定向的代码实现matlab
- 2020-12-01下载
- 积分:1
-
用MATLAB程序实现的语音基本谱减法
完全的MATLAB程序,以运行成功,每一句代码后面都有注释,可以很好帮助理解程序,如还有不懂,请用MATLAB的内部help
- 2020-12-07下载
- 积分:1
-
LS & MMSE channel estimators for OFDM
OFDM系统中的LS和MMSE方法的信道估计比较,包括SNR和MSE
- 2020-11-30下载
- 积分:1
-
内存乒乓缓存机制和消息分发机制的C代码实现
用C代码实现乒乓内存缓冲机制,具体实用价值,帮助您提高内存响应速度与及时数据的处理。unsigned long writeunsigned long greadunsigned long overflowST TWTMSG QUEUE:/ Helper macros for accessing Msg queues. *#define tWt QUEUE EMPty(a)(((g->write==(q)->gread)? 1: 0)#define twt_ QUeUe full(a)(((((q)->qwrite +1% TIMEWEIGHT TASKQUEUE SIZED)==(q)->gread)?1: 0)米 generate a Msg entity*正常返回消息体的指针,异常返回NULLT TWTMSG* generateMsg(tT-TWTMSG* pmSg=nULL,if(NULL =-(ptMsg malloc(sizeof(T TWTMSG)))return NULL;memset(ptMsg, 0, sizeof(T TWTMSG)return pmSg;destroy a Msgvoid destroy Msg(t TWTMSG ptMsgif(NULL ptMsg->pfDestroyMsg)pt Msg->pfDestroy Msg(ptMsg->pvMsg)if (NULL != pt Msg)free(pmSgfree a Msg Queuevoid freeTWTMsg Que(T TWTMSG QUEUE* ptMsgQif(NULL =ptMsg Afree(ptMsg Q);Init a Msg QT TWTMSG QUEUE* initTWTMsg QueoT TWTMSG QUEUE pmSg Q= NULlif (NULL ==(ptMsgQ malloc(sizeof(T_ TWTMSG QUeue)goto ErrRetmemset(ptMsgQ, 0, sizeof(T TWTMSG QUEUE))return pmSg Q;Errretprintf( initTWTMsg Que Fail! ")freeTWTMsgQue(ptMsg Q)return nullPop a pvMsg packet from a msg packet queues param g is the packet queue from which to pop the pbuf@return pointer to pvMsg packet if available, NULl otherwiseT TWTMSG* TWTMsg Get(T_ TWTMSG QUEUE aT TWTMSG*//*加锁if(TWT_ QUEUE_ EMPTY(a))iReturn a NUll pointer if the queue is emptypmSg=NULL;else is The queue is not empty so return the next frame from itand adjust the read pointer accordinglypmSg=g->pvMsglq >greadg->gread =((q->gread +1)% TIMEWEIGHT_TASKQUEUE_ SIZE)/*解锁return(pmSg);Push a pmSg packet onto a pvMsg packet queue@param p is the pmsg to push onto the packet queue@param g is the packet queue.W @return 0 if successful, -1 if q is fullnt TWTMsg Send(T tWTMSg*p, T TWTMSG QUEUE *qint ret/if(!TWT_ QUEUE FULL(al)iThe queue isn t full so we add the new frame at the currentw write position and move the write pointer.g->pvMsgla->write]=pg- >write =((q->qwrite+1)% TIMEWEIGHT TASKQUEUE SIZE;ret =oThe stack is full so we are throwing away this value. Keep trackof the number of times this happensg->overflow++ret =-1://*解锁return(ret)**米**米来米***来米*半米*米*半米*米求***半*米米求半**米求半**半求半和*米*//消息分发机制//*算法是//*正常返回0,出错返回-1水米米******水*米*水**米*半*水米米冰半**水水*水米米半米冰水*米水水*水*米水水extern int RecToFile MsgProc(T_ MSG_ REC2 FILE* ptMsg);int DispatchMsg(T TWTMSG *ptMsgitif(NULl = ptMsg goto ErrRet/*dispatch msg*/switch(ptMsg->en Msg Type)case TWT PINgPoNgBuff recRecTo File Msg Procl(TMSG_REC2FE) (pmSg->pMsg);/*处理消息*/destroy Msg( pmSg;/*消毁消息breakdefault.printf("Dispatch Msg Msgtype Error! n")break.return 0ErrRetprintf("Dispatch Msg Fail! ";return-1./*buff size*/#defineP| NGPONG_ BUFF BSIZE0X20000//10*1024*1024/*10M*/*ping pong buff*///chargacPINGBUFF[PINGPONG BUFF BSIZE]; /* Ping Buff*///chargacPONGBUFF[PINGPONG_ BUFF BSIZE] *Pong Buff*/水米米*********米*水**米*半*水米米水**冰水*水米米半半水半米冰水*米水水*水*米米//*释放 ping pong buff/必然成功//*无返回木***木*水****本**水*水水*水****本水**水水****水水***本***米*水void Destroy Ping Pong Butt(T PINGPONGBUFF USE DES ptPing Pong Butt)nLoopif (NULL = pt Ping pong buffreturnfor (nLoop=0; nLooptIng BuffUse[nLoop]. pcHeadAddr)free(ptPing Pong ->t Ping BuffUse[nLoop]. pcHeadAddr)free(pt Ping pong Buff)/初始化 ping pong buff返回 pign pong buff的描述指针//*正常返回0,出错返回-1水水水水水水水水水木水木水水水水水木水木水水水水水水水水本水水水水水水水水水本水水水水水水水水水水水水水T PINGPONGBUFF USE DES InitPing Pong Buff(unsigned int n BuffSizeT PINGPONGBUFF USE DES* ptBuffDes=NULLintnLoop/*获取buf描述*if NULL==(ptBuffDes=malloc(sizeof(T PINGPONGBUFF USE DES))))goto ErrRetmemset(pt BuffDes, 0, sizeof(T_PINGPONGBUFF USE_ DES));/*分别初始化ping和pong*/for(nLoop=0; nLooptIng BuffUsenLoop pcHeadAddr =malloc n BuffSize))goto Err Ret;ptBuffDes->tIng BuffUselnLoop] nBuffSize nBuffsizeptBuffDes->tPing BuffUse[nLoop]. oFfsetptBuffDes->tPing BuffUsenLoop) eUseStatus-=BUFF WRITEABLE;pt BuffDes->eCurUseIDBUFF PINGreturn pt BuffDesErrretprintf("lnitPing Pong Buff Fail!");DestroyIng Pong Buff(pt BuffDes)turn null平**米**米*米***来米米*米*米*半米*米米米来*半米平**米米求*来*半求半来*米求*和*米*/*Reset ping pong buff//*正常返回0,出错返回-1米米米米水冰米*米米水**米米冰*米水米米米米水米水*水米米来米米x米来米米水冰来来宋来水米来米来冰#define ResetBuffUse(ptBuffuse)pt BuffUse->oFfset0pt BuffUse->eUseStatus BUFF WRITEABLEgenerate a file rec msg*正常返回消息体的指针,异常返回NULLT_MSG_REC2lGK SenFRMSB(T_BUFF_USE_DES *ptBuffUse, REC_FILE_DESLIST *ptFileListRT MSG REC2FILE KE* ptRFMsg= NULL;if(NULL ==(ptRFMsg malloc(sizeof(T_ MSG REC2 FILE)return nUllptRFMsg- >pt BuffUse pt BuffUseptRFMsg->pt Filelist ptFilelist;return ptRFMsg
- 2020-12-03下载
- 积分:1
-
软件工程课程设计--图书管理系统
软件工程课程设计图书管理系统,详细的报告。推荐大家下载
- 2020-11-27下载
- 积分:1
-
PIC16F877A串口通信proteus仿真.rar
【实例简介】程序代码经过硬件与仿真的测试
- 2021-12-03 00:35:14下载
- 积分:1
-
Simplorer内部培训资料
Simplorer V9的培训资料,非常详细,一共407页的PDF,看完这个PDF,相信你已经是simplorer高手了。Conventions Used in this GuideGetting HelpAnsoft Technical SupportHelp MenuContext-Sensitive Help1. IntroductionOverview of the Simplorer Interface .........1-32. Creating a New ProjectAbout the three-Phase rectifier2-2Expected Results2-3Using Simplorer to Create and Improve the Design2-4Creating the new project2-5Add the New project2-5Rename the designAdd Design Notes(Optional)Save the New project2-73. Create the rectifier modelCreate the Three-Phase rectifier Schematic. 3-2Choosing, Placing, and Arranging Components onthe schematic she.3-3Connecting the Components3-8Defining Component Properties3-9Property Displays for Components3-13Specifying simulation Outputs.3-16Defining Solution Options and Analysis Parameters3-18Starting an Analysis3-19Plotting Rectifier Model Simulation Results3-204. Hysteresis Current-Controlled DC-Motor Start-UpModify the Rectifier Model Design.4-2Deleting the Resistive/Inductive Load,4-3Saving the sheet with a New Name4-3Place and Arrange the New Components4-4Connect the New Components.,,,,,,4-5Defining dc Machine valuesDefining Mechanical Load4-7Freewheeling Diode4-8Chopper Transistor4-8Controller Modeling using block elements..4-9Modifying Report Elements...4-11Display Diode CharacteristicDefining Simulation Parameters.4-13Starting Simulation(Block Components.4-13Simulation Results(Block Components)... 4-14Controller Modeling Using State Graph Components4-15Connecting the State Graph Components4-16Defining Properties of State Graph Components 4-Using Name References4-19Deactivating Components on the sheet4-19Starting Simulation(State Graph)...4-21Simulation Results(State Graph)4-225. Current and Speed Controlled Dc MotorModify the State graph design5-2Deleting the State GraphSaving the sheet with a New namePlacing and Arranging the New Block Componentson the sheet5-4Connecting the New ComponentsDefining Mechanical Load (Block)Defining the pl controller.........5-8Starting Simulation..5-12Adding a Rectangular Plot(Pl Controller)... 5-13Adjusting Plot Properties.5-14Checking the block Sequence..5-16Using Automatic Block Sorting5-16Using Manual Block Sorting5-16Rerun the Simulation(PI Controller)Simulation Results(PI Controller)5-176. Using VHDL-AMS Components forModelingVHDL-AMS Components,,,,.6-2Modify the pl controller Design.6-3Save the project with a new name6-3Delete the dc Machine component6-4Placing and Arranging the New VHDL-AMs Components on the sheet6-4Connecting the New VHDL-AMS Components 6-4Defining VHDL-AMS DC Machine values6-4Defining Connections for Machine Current..6-5Defining Simulation ParametersAnalyze and Display Simulation Results(VHDLAMS6-67. Variants of PWM ModelingPWM Modeling Overview7-2Create a New Project for the pWm models ..7-3Setting Initial ConditionsPWM Modeling Using EquationsDefining Simulation Parameters7-4Displaying Simulation Results with Reports 7-4Simulation results 7-6PWM Modeling with Equations and Time Function7-6PWM Modeling with State Graph Components 7-8Place and arrange the components on the sheet7-8Define Component properties翻国7-9PWM Modeling with Block Diagram Components 7Placing and Arranging the Components on theSheet7-118. Importing Legacy SchematicsTranslating a Legacy Schematic..8-2Importing the legacy Schematic8-2Starting an analysis...,,8-6Plotting Simulation Results8-7Estimated time tooplete this guide45 minutes
- 2020-11-27下载
- 积分:1
-
lqr轨迹跟踪的matlab编程
lqr轨迹跟踪的matlab编程,是通过lqr控制器控制,走出一条直线或者圆轨迹
- 2020-12-05下载
- 积分:1