




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
UM0560UsermanualSTM8Sbootloaderusermanual1IntroductionThisusermanualcontainsthebootloaderspecificationsforSTM8Sdeviceswhichcontainabootloaderembeddedinthesystemmemoryofthedevice(theROMmemory.Throughthisfirmware,thedevicememorycanbeerasedandprogrammedusingoneofthestandardcommunicationinterfacespresentontheparticulardevice.Foreachdevice,pleaserefertothecorrespondingdatasheetstoknowifthebootloaderispresentandwhichperipheralsaresupported.ThedocumentdescribesthefeaturesandoperationoftheSTM8Sintegratedbootloaderprogram.Thiscodeallowsmemories,includingFlashprogram,dataEEPROM,andRAM,tobewrittenintothedeviceusingthestandardserialinterfacesUART1,UART2,UART3,CAN,andSPI(onlyavailableonSTM8S105xxdevices.ThebootloadercodeisthesameforallSTM8Sversions,includingSTM8S20xxxandSTM8S105xxdevices.However,eventhoughaperipheralmaybepresentinaproduct,theproductmaynotsupportit(forexample,theSPIisnotsupportedinSTM8S20xxxdevices.Inaddition,differentcutssupportdifferentperipherals:ThebootloadercodecanbeaccessedviatheUART1,UART3andCANperipheralsinSTM8S20xxxdevicesandviaUART2andSPIinSTM8S105xxdevices.ForfurtherinformationontheSTM8Sfamilyfeatures,pinout,electricalcharacteristics,mechanicaldataandorderinginformation,pleaserefertotheSTM8Sdatasheets.December2008Rev11/58ContentsUM0560Contents1Introduction................................................12Bootloaderintroduction......................................62.1Bootloaderactivation.........................................63Peripheralsettings.........................................103.1UART1settings............................................103.2UART2andUART3settings...................................103.3SPIsettings...............................................113.4CANsettings..............................................114Bootloadercommandset....................................134.1Getcommand..............................................144.1.1GetcommandviaUART1/UART2/UART3......................144.1.2GetcommandviaSPI......................................164.1.3GetcommandviaCAN.....................................184.2Readmemorycommand.....................................204.2.1ReadmemorycommandviaUART1/UART2/UART3..............204.2.2ReadmemorycommandviaSPI..............................224.2.3ReadmemorycommandviaCAN.............................254.3Erasememorycommand.....................................264.3.1ErasememorycommandviaUART1/UART2/UART3..............274.3.2ErasememorycommandviaSPI.............................304.3.3ErasememorycommandviaCAN............................324.4Writememorycommand.....................................344.4.1WritememorycommandviaUART1/UART2/UART3..............344.4.2WritememorycommandviaSPI..............................374.4.3WritememorycommandviaCAN.............................404.5Speedcommand...........................................434.5.1SpeedcommandviaCAN...................................434.6Gocommand..............................................454.6.1GocommandviaUART1/UART2/UART3.......................454.6.2GocommandviaSPI.......................................472/58UM0560Contents4.6.3GocommandviaCAN......................................494.7Sectorcodes..............................................505Softwaremodel............................................546Errormanagement.........................................557Programmingtime..........................................568Revisionhistory...........................................573/58ListoftablesUM0560ListoftablesTable1.Initialchecking...........................................................9Table2.SerialinterfacesassociatedwithSTM8Sdevices...............................10Table3.Bootloadercommands....................................................13Table4.Examplesofdelay.......................................................38Table5.STM8Ssectorcodes.....................................................50Table6.Errortable..............................................................55Table7.UART1/UART2/UART3programmingtimes....................................56Table8.SPIprogrammingtime....................................................56Table9.CANprogrammingtime...................................................56Table10.Documentrevisionhistory.................................................574/58UM0560ListoffiguresListoffiguresFigure1.Bootloaderactivationflowchart..............................................7Figure2.CANframe.............................................................11Figure3.GetcommandviaUART1/UART2/UART3Hostside.............................14Figure4.GetcommandviaUART1/UART2/UART3:Deviceside...........................15Figure5.GetcommandviaSPI:Hostside............................................16Figure6.GetcommandviaSPI:Deviceside..........................................17Figure7.GetcommandviaCAN:Hostside...........................................18Figure8.GetcommandviaCAN:Deviceside.........................................19Figure9.ReadmemorycommandviaUART1/UART2/UART3:Hostside....................20Figure10.ReadmemorycommandviaUART1/UART2/UART3:Deviceside..................21Figure11.ReadmemorycommandviaSPI:Hostside....................................22Figure12.ReadmemorycommandviaSPI:Deviceside..................................24Figure13.ReadmemorycommandviaCAN:Hostside...................................25Figure14.ReadmemorycommandviaCAN:Deviceside.................................25Figure15.ErasememorycommandviaUART1/UART2/UART3:Hostside....................27Figure16.ErasememorycommandviaUART1/UART2/UART3:Deviceside..................29Figure17.ErasememorycommandviaSPI:Hostside...................................30Figure18.ErasememorycommandviaSPI:Deviceside..................................31Figure19.ErasememorycommandviaCAN:Hostside...................................32Figure20.ErasememorycommandviaCAN:Deviceside.................................33Figure21.WritememorycommandviaUART1/UART2/UART3:Hostside....................34Figure22.WritememorycommandviaUART1/UART2/UART3:Deviceside..................36Figure23.WritememorycommandviaSPI:Hostside....................................37Figure24.WritememorycommandviaSPI:Deviceside..................................39Figure25.WritememorycommandviaCAN:Hostside...................................40Figure26.WritememorycommandviaCAN:Deviceside.................................42Figure27.SpeedcommandviaCAN:Hostside.........................................43Figure28.SpeedcommandviaCAN:Deviceside.......................................44Figure29.GocommandviaUART1/UART2/UART3:Hostside.............................45Figure30.GocommandviaUART1/UART2/UART3:Deviceside...........................46Figure31.GocommandviaSPI:Hostside.............................................47Figure32.GocommandviaSPI:Deviceside...........................................48Figure33.GocommandviaCAN:Hostside............................................49Figure34.GocommandviaCAN:Deviceside..........................................495/58BootloaderintroductionUM05606/582BootloaderintroductionThemaintaskofthebootloaderistodownloadtheapplicationprogramintotheinternalmemoriesthroughtheUART1,UART2,UART3,SPIorCANperipheralswithoutusingtheSWIMprotocolanddedicatedhardware.Dataareprovidedbyanydevice(hostcapableofsendinginformationthroughoneoftheaboveserialinterfaces.Thebootloaderpermitsdownloadingofapplicationsoftwareintothedevicememories,includingtheprogrammemory,usingstandardserialinterfaces(UART1,UART2,UART3,SPIandCANwithoutdedicatedhardware.ItisacomplementarysolutiontoprogrammingviatheSWIMdebugginginterface.ThebootloadercodeisstoredintheinternalbootROMmemory.Afterareset,thebootloadercodecheckswhethertheprogrammemoryisvirginorwhetheraspecificoptionbyteissetallowingcodemodifications.Iftheseconditionsarenotfulfilled,thebootloaderresumesandtheuserapplicationisstarted.Incaseofasuccessfulcheckthebootloaderisexecuted.Whenthebootloaderprocedurestarts,themaintasksare:●Pollingallsupportedserialinterfacestocheckwhichperipheralisused.●Programmingcode,data,optionbytesand/orvectortablesattheaddress(esreceivedfromthehost.2.1BootloaderactivationTheSTM8SresetvectorislocatedatthebeginningofthebootROM(6000h,whiletheothervectorsareintheFlashprogrammemorystartingataddress8004h.ThedeviceexecutesthebootROM,jumpsinsidethebootROMareaandaftercheckingcertainaddresslocations(seeTable1:Initialcheckingonpage9,itstartstoexecutetheusercodeviatheresetvector(8000hintheFlashprogrammemory.ThebootloaderactivationflowchartisdescribedinFigure1onpage7.UM0560Bootloaderintroduction7/581.SeeFlowchartdescriptiononpage8forexplanationofpoints1to8.2.DottedroutinesareloadedinRAMbythehost.TheyareremovedbythegocommandbeforejumpingtotheFlashprogrammemorytoexecuteanapplication.BootloaderintroductionUM05608/58Flowchartdescription1.Disableallinterruptsources.2.ThehostcanreprogramtheFlashprogrammemoryandthebootloaderoptionbytevalues,asshowninTable1accordingtothecontentofthefirstFlashprogrammemorylocation(8000h.3.Whenreadoutprotection(ROPisequaltoAAh(ROPactive,theFlashprogrammemoryisreadoutprotected.Inthiscase,thebootloaderstopsandtheuserapplicationstarts.IfROPisnotequaltoAAh,thebootloadercontinuestobeexecuted.4.TheCANperipheralcanonlybeusedifanexternalclock(8MHz,16MHz,or24MHzispresent.Itisinitializedat125kbps.TheUART1,UART2,UART3andSPIperipheralsdonotrequireanexternalclock.5.SetthehighspeedinternalRCoscillator(HSIto16MHzandinitializetheUART1,UART2andUART3receiverpinsininputpull-upmodeintheGPIOregisters.InitializetheSPIinslavemode.6.Interfacepolling(pointS:Thebootloaderpollstheperipheralswaitingforasynchronizationbyte/message(SYNCHRwithinatimeoutof1s.Ifatimeoutoccurs,eithertheFlashprogrammemoryisvirgininwhichcaseitwaitsforasynchronizationbyte/messageinaninfiniteloop,ortheFlashprogrammemoryisnotvirginandthebootloaderrestorestheregisters’resetstatusbeforegoingtotheFlashprogrammemoryresetvectorat8000h.Note:Whensynchronizationfailsandthebootloaderreceivesabyte/messagedifferentto‘SYNCHR’,twodifferentsituationscanbedistinguishedaccordingtotheperipheral:WithUART1,UART2orUART3,adeviceresetorpower-downisnecessarybeforesynchronizationcanbetriedagain.WithCANorSPI,theusercancontinuetopolltheinterfacesuntilasynchronizationoratimeoutoccurs.7.IfthesynchronizationmessageisreceivedbytheUART1,UART2orUART3,thebootloaderdetectsthebaudrateandinitializestheUART1,UART2orUART3respectivelyandgoestostep8below.IfthesynchronizationmessageisreceivedbytheCANorSPI,thebootloadergoesdirectlytostep8below.Note:Onceoneoftheavailableinterfacesreceivesthesynchronizationmessage,allothersaredisabled.8.Waitingforcommands(pointC:Commandsarecheckedinaninfiniteloopandexecuted.Toexitfromthebootloader,thehosthastosenda‘go’command.Whenthisisdone,thebootloaderremovestheEMandWMroutinesfromtheRAMmemorybeforejumpingtotheaddressselectedbythehost.UM0560Bootloaderintroduction9/58Table1.Initialchecking(11.Afterinterfaceinitialization,awriteprotectiontestisperformedtoavoidnon-authorisedreadingoftheFlashprogrammemory/dataEEPROM,ChecksProgrammemorylocation8000hBootloadercheckopt_byte487EhBootloadercheckopt_byteN487FhActualFlashprogrammemorystatus->Flashaction1stXXh!=(82horAChXXhXXhFlashprogrammemoryvirgin->jumptobootloader2ndXXh=(82horACh55hAAhFlashprogrammemoryalreadywritten->jumptobootloader3rdXXh=(82horAChXXh!=55hXXh!=AAhFlashprogrammemoryalreadywritten->jumptoFlashprogrammemoryresetPeripheralsettingsUM056010/583PeripheralsettingsThissectiondescribesthehardwaresettingsoftheSTM8Scommunicationperipherals:●UART1●UART2●UART3●SPI●CANNote:Duringbootloadingonlyoneperipheralisenabled;allothersaredisabled.3.1UART1settingsAllUARTperipheralssupportasynchronousserialcommunication.UART1settingsare:●Dataframe:1startbit,8databit,1paritybiteven,1stopbit●Baudrate:Thebaudrateisautodetectedbythebootloader.Whentheusersendsthesynchronizationbyte,7Fh,thebootloaderautomaticallydetectsthebaudrateandsetstheUART1tothesamebaudrate.Maximumbaudrate=1Mbps;minimumbaudrate=4800bps.Mandatory:Toperformtheautomaticspeeddetection,theRXline(PA4hastobestableintheapplicationboard.Note:TheUART1peripheralisaccessibleviapinsPA4(RXandPA5(TX.3.2UART2andUART3settingsAllUARTperipheralssupportasynchronousserialcommunication.UART2andUART3settingsare:●Dataframe:1startbit,8databit,noparitybit,1stopbit●Baudrate:Thebaudrateisautodetectedbythebootloader.Whentheusersendsthebyte7Fh,thebootloaderautomaticallydetectsthebaudrateandsetstheUART2orUART3tothesamebaudrate.Maximumbaudrate=550kbps;minimumbaudrate=4800bps.Mandatory:Toperformtheautomaticspeeddetection,theRXline(PD6forUART3hastobestableintheapplicationboard.Note:UART2andUART3peripheralsareaccessibleviapinsPD5(TXandPD6(RX.Table2.SerialinterfacesassociatedwithSTM8SdevicesDeviceSerialinterfaceSTM8S20xxxUART1,UART3,CANSTM8S105xxUART2,SPIUM0560Peripheralsettings11/583.3SPIsettingsTheSPIsettingsare:●8databit,LSBfirst●Bitrate:Setbythehostwhichactsasamaster●PeripheralsetinslavemodewithNSSnotused.●Datapolarity:CPOL=CPOH=0Note:1Beforesendinga‘token’byte,thehosthastowaitforadelayofaspecifiedperiodoftime.Ifthisperiodisnotquantified,itisequalto6μs.2TheSPIperipheralisaccessibleviapinsPC5(SCK,PC6(MOSI,andPD7(MISO.3.4CANsettingsToaddressadditionaldevicesonthesamebus,theCANprotocolprovidesastandardidentifierfield(11-bitandanoptionalextendedidentifierfield(18-bitintheframe.Figure2showstheCANframethatusesthestandardidentifieronly.TheCANsettingsare:●Standardidentifier(notextended●Bitrate:Atthebeginningis125kbps;runtimecanbechangedviathespeedcommandtoachieveamaximumbitrateof1Mbps.Thetransmitsettings(fromSTM8Stothehostare:●Txmailbox0:On●Txmailbox1andTxmailbox2:Off●Txidentifier:02h●Outgoingmessagescontain1databyte.PeripheralsettingsUM056012/58Thereceivesettings(fromthehosttoSTM8Sare:●Synchronizationbyte,7Fh,isintheRXidentifierandnotinthedatafield.●RXidentifierdependsonthecommand(00h,03h,11h,21h,31h,43h.●Errorchecking:Iftheerrorfield(bit[6:4]intheCESRregisterisdifferentfrom000b,themessageisdiscardedandaNACKissenttothehost.●InFIFOoverruncondition,themessageisdiscardedandaNACKissenttothehost.●Incomingmessagescancontainfrom1to8databytes.Note:TheCANperipheralisaccessibleviapinsPG0(TXandPG1(RX.UM0560Bootloadercommandset13/584BootloadercommandsetThesupportedcommandsarelistedinTable3below.WhenthebootloaderreceivesacommandviatheUART1,UART2,UART3,CANorSPIperipherals,thegeneralprotocolisasfollows:ThebootloadersendsanACKbytetothehostandwaitsforanaddressandforachecksumbyte,bothofwhicharecheckedwhenreceived.Iftheaddressisvalidandthechecksumiscorrect,thebootloadertransmitsanACKbyte,otherwiseittransmitsaNACKbyteandabortsthecommand.Whentheaddressisvalidandthechecksumiscorrect,thebootloaderwaitsforthenumberofbytestobetransmitted(Nbytesandforitscomplementedbyte(checksum.Ifthechecksumiscorrect,itthencarriesoutthecommand,startingfromthereceivedaddress.Ifthechecksumisincorrect,itsendsaNACKbytebeforeabortingthecommand.ThebootloaderprotocolviaUART1,UART2,UART3andSPIareidenticalonthedeviceside,but,differregardingthehost.AtokenbyteisneededwhensendingeachbytetothehostviaSPI(seeFigure5,Figure11,Figure17,Figure23,andFigure31.ThebootloaderprotocolviaCANdiffersfromallotherperipherals.Thefollowingsectionsareorganisedasfollows:●CommandsviaUART1/UART2/UART3●CommandsviaSPI●CommandsviaCANTable3.BootloadercommandsCommandCommandcodeCommanddescriptionGet00hGetstheversionandtheallowedcommandssupportedbythecurrentversionofthebootloaderReadmemory11hReadsupto256bytesofmemorystartingfromanaddressspecifiedbythehostErasememory43hErasesfromonetoalloftheFlashprogrammemory/dataEEPROMmemorysectorsWritememory31hWritesupto128bytestotheRAMortheFlashprogrammemory/dataEEPROMmemorystartingfromanaddressspecifiedbythehostSpeed03hAllowsthebaudrateforCANrun-timetobechangedGo21hJumpstoanaddressspecifiedbythehosttoexecutealoadedcodeBootloadercommandsetUM056014/584.1GetcommandThegetcommandallowsthehosttogettheversionofthebootloaderandthesupportedcommands.Whenthebootloaderreceivesthegetcommand,ittransmitsthebootloaderversionandthesupportedcommandcodestothehost.4.1.1GetcommandviaUART1/UART2/UART3ThehostsendsthebytesasfollowsByte1:00h-CommandIDByte2:FFh-ComplementUM0560BootloadercommandsetTheSTM8SsendsthebytesasfollowsByte1:ACK(afterthehosthassentthecommandByte2:N=5=thenumberofbytestobesent-1(1<=N+1<=256Byte3:Bootloaderversion(0<version<=255Byte4:00h-GetcommandByte5:11h-ReadmemorycommandByte6:21h-GocommandByte7:31h-WritememorycommandByte8:43h-ErasememorycommandByte9:ACK15/58BootloadercommandsetUM05604.1.2GetcommandviaSPI16/58UM0560BootloadercommandsetThehostsendsthebytesasfollowsByte1:00h-CommandIDByte2:FFh-ComplementByte3(token:XYh;hostwaitsforACKorNACKByte4(token:XYh;hostwaitsfor05h...Byte4(token:XYh;hostwaitsforACKorNACK.TheSTM8SsendsthebytesasfollowsByte1:ACKByte2:N=5=thenumberofbytestobesent-1(1<=N+1<=256Byte3:Bootloaderversion(0<version<=255Byte4:00h-GetcommandByte5:11h-ReadmemorycommandByte6:21h-GocommandByte7:31h-WritememorycommandByte8:43h-ErasememorycommandByte9:ACK17/58BootloadercommandsetUM05604.1.3GetcommandviaCANThehostsendsthemessagesasfollowsCommandmessage:StdID=00h,datalengthcode(DLC=‘notimportant’.18/58UM0560BootloadercommandsetTheSTM8SsendsthemessagesasfollowsMessage1:StdID=02h,DLC=1,data=ACKMessage2:StdID=02h,DLC=1data=N=6=thenumberofbytestobesent-1(1<=N+1<=256Message3:StdID=02h,DLC=1,data=bootloaderversion(0<version<=255Message4:StdID=02h,DLC=1,data=00h-GetcommandMessage5:StdID=02h,DLC=1,data=03h-SpeedcommandMessage6:StdID=02h,DLC=1,data=11h-ReadmemorycommandMessage7:StdID=02h,DLC=1,data=21h-GocommandMessage8:StdID=02h,DLC=1,data=31h-WritememorycommandMessage9:StdID=02h,DLC=1,data=43h-ErasememorycommandMessage10:StdID=02h,DLC=1,data=ACK19/58BootloadercommandsetUM056020/584.2ReadmemorycommandThereadmemorycommandisusedtoreadthememory(RAM,Flashprogrammemory/dataEEPROMorregisters.Whenthebootloaderreceivesthereadmemorycommand,ittransmitstheneededdata((N+1bytestothehost,startingfromthereceivedaddress.4.2.1ReadmemorycommandviaUART1/UART2/UART31.ThevalidaddressesareRAM,Flashprogrammemory/dataEEPROMandregisteraddresses(seeproductdatasheet.Ifthebootloaderreceivesaninvalidaddress,an‘adderror’occurs(seeTable6:Errortableonpage55.UM0560BootloadercommandsetThehostsendsthebytestotheSTM8SasfollowsBytes1-2:11h+EEhBytes3-6:ThestartaddressByte3=MSBByte6=LSBByte7:Checksum=XOR(byte3,byte4,byte5,byte6Byte8:Thenumberofbytestoberead(0<N<=255Byte9:Checksum≠byte8.21/58BootloadercommandsetUM056022/584.2.2ReadmemorycommandviaSPI1.ThevalidaddressesareRAM,Flashprogrammemory/dataEEPROMandregisteraddresses(seeproductdatasheet.Ifthebootloaderreceivesaninvalidaddress,an‘adderror’occurs(seeTable6:Errortableonpage55.UM0560BootloadercommandsetThehostsendsthebytestotheSTM8SasfollowsByte1:11h-CommandIDByte2:EEh-ComplementByte3(token:XYh;hostwaitsforACKorNACKBytes4to7:ThestartaddressByte4=MSBByte7=LSBByte8:Checksum=XOR(byte4,byte5,byte6,byte7Byte9(token:XYh;hostwaitsforACKorNACKByte10:Thenumberofbytestoberead(0<N<=255Byte11:Checksum=Complementofbyte10Byte12(token:XYh;hostwaitsforthe1stdatabyteByte12+N(token:XYh;hostwaitsfortheN+1thdatabyte23/58BootloadercommandsetUM056024/58UM0560Bootloadercommandset25/584.2.3ReadmemorycommandviaCANTheCANmessagesentbythehostisasfollows:●TheIDcontainsthecommandtype(11h●Thedatafieldcontainsadestinationaddress(4bytes,byte1istheMSBandbyte4isLSBoftheaddressandthe‘numberofbytes’(Ntoberead.1.ThevalidaddressesareRAM,Flashprogrammemory/dataEEPROMandregisteraddresses(seeproductdatasheet.Ifthebootloaderreceivesaninvalidaddress,an‘adderror’occurs(seeTable6:Errortableonpage55.ThehostsendsthemessagesasfollowsCommandmessage:StdID=11h,DLC=05h,data=MSB,XXh,YYh,LSB,N(where0<N<=255.BootloadercommandsetUM056026/58TheSTM8SsendsthemessagesasfollowsACKmessage:StdID=02h,DLC=1,data=ACKDatamessage1:StdID=02h,DLC=1,data=XXhDatamessage2:StdID=02h,DLC=1,data=XXh…Datamessage(N+1:StdID=02h,DLC=1,data=XXhNote:Thebootloadersendsasmanydatamessagesasbyteswhichcanberead.4.3ErasememorycommandTheerasememorycommandallowsthehosttoerasesectorsoftheFlashprogrammemory/dataEEPROMmemory.Thebootloaderreceivestheerasecommandmessage,whentheIDcontainsthecommandtype(43handthedatafieldcontainsthesectorstobeerased(seeTable5:STM8Ssectorcodesonpage50.Asectoris1Kbyte,therefore,thegranularitywiththeerasecommandis8blocks.Ifthehostwantstoeraseonebyte,thewritecommand(write00hcanbeused.Erasememorycommandspecifications:1.Thebootloaderreceivesonebytewhichcontainsthenumber(Nofsectorstobeerased.Nisdevicedependent.2.Thebootloaderreceives(N+1bytes,whereeachbytecontainsasectorcode(see.UM0560Bootloadercommandset27/584.3.1ErasememorycommandviaUART1/UART2/UART31.Memoryerased=130Kbytesfordeviceswith128KbytesofFlashprogrammemoryand2KbytesofDataEEPROMand33Kbytesfordeviceswith32KbytesofFlashprogrammemoryand1KbyteofDataEEPROM.2.Asectoris8blocksi.e.1Kbyteforanydevice.Therefore
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學生鐘表教學課件模板
- 小學生過年作文課件
- 尊重他人課件選擇題
- 2025年小學實踐活動教案:神奇的影子
- 草花種植與農業產業投資基金合作合同
- 汽車銷售與租賃服務加盟合作協議
- 企業財務盡職調查與風險評估專項服務協議
- 車位使用權轉讓與新能源汽車充電服務合同
- 專業會議策劃與定制服務合同
- ieer拼音教學課件
- 《急性胰腺炎小講座》課件
- 2024版人教版八年級上冊英語單詞表(含音標完整版)
- 馬工程管理學
- 應急安全管理培訓
- 環境保護行動計劃承諾書模板
- 軟件系統運行維護流程及的方案
- 一年級數學下冊100以內加減法口算練習題一
- 國開(安徽)2024年《內部控制》形考任務1-2答案終考答案
- 100以內加減法豎式計算300道及答案
- 兒科有關疾病課件
- 2024年海南省海口市小升初數學試卷(含答案)
評論
0/150
提交評論