CH04-01-02-操作系統(tǒng)原理與實踐_第1頁
CH04-01-02-操作系統(tǒng)原理與實踐_第2頁
CH04-01-02-操作系統(tǒng)原理與實踐_第3頁
CH04-01-02-操作系統(tǒng)原理與實踐_第4頁
CH04-01-02-操作系統(tǒng)原理與實踐_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

《嵌入式系統(tǒng)設計原理》嵌入式操作系統(tǒng)原理與實踐主講人:賴樹明東莞理工學院05μC/OS-III任務管理01嵌入式操作系統(tǒng)基礎02初識μC/OS-III操作系統(tǒng)03μC/OS-III任務使用04μC/OS-III時間管理06μC/OS-III通信機制07μC/OS-III操作系統(tǒng)作業(yè)01嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)操作系統(tǒng)系統(tǒng)分類裸機和操作系統(tǒng)比較嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01QNX是一種商用的遵從POSIX規(guī)范的類Unix硬實時操作系統(tǒng),主要是面向嵌入式系統(tǒng)。高可靠性、低風險高級安全機制能耗更低可擴展及標準合規(guī)廣泛的板卡支持GPU加速圖形支持高效的產品開發(fā)嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01安卓是一種基于Linux內核的自由及開放源代碼的操作系統(tǒng)。Android操作系統(tǒng)最初由AndyRubin開發(fā),主要支持手機。2005年8月由Google收購注資,由Google公司和開放手機聯(lián)盟領導及開發(fā)。2007年11月,Google與84家硬件制造商、軟件開發(fā)商及電信營運商組建開放手機聯(lián)盟共同研發(fā)改良Android系統(tǒng)。Google以Apache開源許可證的授權方式,發(fā)布了Android的源代碼。嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01Linux,全稱GNU/Linux,是一套免費使用和自由傳播的類UNIX操作系統(tǒng)。廣泛的硬件支持開放源碼,軟件豐富高效、靈活性高良好的可移植性具有多任務、多用戶的能力強大的網絡功能能在PC計算機上實現(xiàn)全部的Unix特性。提供完善的進程通信、線程同步等服務,網絡功能超級強大,支持動態(tài)鏈接,文件系統(tǒng)完善嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01EmbeddedConfigurableOperatingSystem(eCos)是一個開源、免費的實時操作系統(tǒng),適合實時處理需求和內存有限的嵌入式應用。開源,免費小巧,功能可裁剪移植性強支持POSIX標準接口,比較完善的線程同步服務集成network、filesystem等各種模塊嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01源碼開放,商用收費系統(tǒng)小巧,功能可裁剪可移植性強穩(wěn)定性、可靠性強同優(yōu)先級級任務支持時間片輪轉調度嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01RT-Thread是一款來自中國的開源嵌入式實時操作系統(tǒng)體積小,成本低,功耗低、啟動快速、實時性高、占用資源小完全開源,商用免費集成一系列應用組件和驅動框架,如TCP/IP協(xié)議棧,虛擬文件系統(tǒng),POSIX接口,圖形用戶界面,F(xiàn)reeModbus主從協(xié)議棧,CAN框架,動態(tài)模塊等嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01

FreeRTOS(讀作"free-arr-toss")是一個嵌入式系統(tǒng)使用的開源實時操作系統(tǒng)。設計小巧,簡單易用源碼開放,商用免費可移植性強,支持多種硬件平臺支持搶占式多任務和協(xié)作式多任務嵌入式操作系統(tǒng)基礎常見嵌入式操作系統(tǒng)01采用基于微內核的體系結構,整個系統(tǒng)由四百多個相對獨立、短小精練的目標模塊組成,用戶可以根據自己的需要選擇適當的模塊,進行裁減和配置。采用GNU類型的編譯和調試器,支持x86、MotorolaMC68xxx、PowerPC、MIPS、ARM、i960等主流的32位處理器超強可靠性卓越的實時性嵌入式領域應用最廣泛、市場占有率最高的商業(yè)系統(tǒng)之一嵌入式操作系統(tǒng)基礎操作系統(tǒng)分類01分時操作系統(tǒng)以時間片為基本調度原則的操作系統(tǒng)。對于分時操作系統(tǒng),軟件的執(zhí)行在時間上的要求,并不嚴格,時間上的錯誤,一般不會造成災難性的后果。典型代表Windows操作系統(tǒng)分時操作系統(tǒng)實時操作系統(tǒng)(RealTimeOperatingSystem)以優(yōu)先級為基本調度原則的操作系統(tǒng)實時操作系統(tǒng)與一般的操作系統(tǒng)相比,最大的特色就是“實時性”.如果有高優(yōu)先級任務需要執(zhí)行,實時操作系統(tǒng)會盡可能快的執(zhí)行該任務,延時較短。這個特性保證了各個任務的及時執(zhí)行。典型代表:VxWork、eCos、FreeRTOS、RT-Thread、uCOS-II/III實時操作系統(tǒng)嵌入式操作系統(tǒng)基礎裸機和操作系統(tǒng)比較01裸機代碼結構嵌入式操作系統(tǒng)基礎裸機和操作系統(tǒng)比較01實時操作系統(tǒng)程序代碼結構任務代碼結構任務代碼結構main函數中不再有無限循環(huán);代碼結構更清晰,易于維護和移植把復雜的程序劃分為一個個小任務;提供任務管理、通信、內存管理等機制;RTOS程序特點02初識μC/OS-III操作系統(tǒng)系統(tǒng)簡介源碼結構系統(tǒng)裁剪任務優(yōu)先級任務調度法則程序模板-------虛席以待-------初識μC/OS-III操作系統(tǒng)系統(tǒng)簡介02μC/OS是一個老牌嵌入式實時操作系統(tǒng)編程語言,到目前已經發(fā)展了三代版本:μC/OS-I:1992--->目前幾乎沒有在使用了μC/OS-II:1998--->目前還有很多產器在使用μC/OS-III:2009--->市場上目前正在逐步取代μC/OS-II概述初識μC/OS-III操作系統(tǒng)系統(tǒng)簡介02可裁剪、可剝奪型搶占式多任務實時內核??蓜儕Z型內核:總是執(zhí)行當前優(yōu)先級最高的就緒任務。高可擴展性:無限數量的任務,優(yōu)先級和內核對象。極短的關中斷時間:采用鎖定內核調度方式而不是關中斷方式來保護內部數據結構和變量的臨界段。同優(yōu)先級時間片輪轉:當多個優(yōu)先級相同的任務同時就緒,并且這些任務的優(yōu)先級是當前最高優(yōu)先級時,系統(tǒng)會輪轉調度這些任務。豐富的系統(tǒng)服務:任務管理、時間管理、信號量、時間標志組、互斥型信號量、消息列隊、軟件定時器、存儲塊管理等。內核對象:任務、信號量、互斥信號量、事件標記、消息列隊、定時器、存儲塊等。獨有功能:內嵌的實時性能測試、向任務直接發(fā)送信號量和消息、同時等待多個內核對象等。μC/OS-III亮點初識μC/OS-III操作系統(tǒng)系統(tǒng)簡介02可剝奪型(preemptive):當一個事件發(fā)生,使得更高優(yōu)先級的任務就緒時,μC/OS-III就會立即將CPU的控制權剝奪,轉交給更高優(yōu)先級的任務使用,這個過程看起來好像是高優(yōu)先級任務“搶占”了CPU。判斷CPU如何執(zhí)行程序,始終根據“可剝奪型”特性為依據??蓜儕Z型概念初識μC/OS-III操作系統(tǒng)源碼結構02系統(tǒng)源碼可以在官網上下載到/developers/micrium官網系統(tǒng)文件文件詳情參考示例代碼:例6-1UCOSIII任務創(chuàng)建和刪除-sim初識μC/OS-III操作系統(tǒng)系統(tǒng)裁剪02uCOS_CONFIG文件夾中存放了系統(tǒng)各個配置文件,通過定義這些文件里宏的值可以輕易地裁剪μC/OS-III的功能。os_cfg.h:系統(tǒng)相關代碼配置,這部分是拓展性的,比如配置是否裁剪定時器等內核對象的宏。os_cfg_app.h:系統(tǒng)相關代碼配置,這部分是必須設置的,如任務堆棧、時鐘節(jié)拍頻率、消息緩沖池、軟件定時器等;cpu_cfg.h:定義CPU相關指令(計算前導0)存在與否、CPU_NAME、時間戳、關中斷時間測量等CPU相關配置;lib_cfg.h:配置μC/LIB目錄庫文件代碼相關選項。配置文件初識μC/OS-III操作系統(tǒng)任務優(yōu)先級02μC/OS每個任務都有一個優(yōu)先級設置,數字越小,優(yōu)先級越高。μC/OS每個任務都根據其重要程度來分配優(yōu)先級。μC/OS高優(yōu)先級任務就緒可以搶占低優(yōu)先級任務的CPU。μC/O取值范圍:μC/OS-I:64;μC/OS-II:255;

μC/OS-III:無限μC/OS-I、II每個任務具有惟一的優(yōu)先級,不同任務不允許相同。μC/OS-III支持不同任務設置相同的優(yōu)先級,相同優(yōu)先級的任務采用時間片輪轉法進行調度,該功能是μC/OS-III獨有功能。優(yōu)先級說明初識μC/OS-III操作系統(tǒng)任務優(yōu)先級02μC/OS-III中部分優(yōu)先級是系統(tǒng)使用了,不建議用戶再去使用這些優(yōu)先等,將這些優(yōu)先級分配給μC/OS-III的5個系統(tǒng)內部任務:優(yōu)先級0:中斷服務服務管理任務OS_IntQTask()優(yōu)先級1:時鐘節(jié)拍任務OS_TickTask()優(yōu)先級2:定時任務OS_TmrTask()優(yōu)先級OS_CFG_PRIO_MAX-2:統(tǒng)計任務OS_StatTask()優(yōu)先級OS_CFG_PRIO_MAX-1:空閑任務OS_IdleTask()μC/OS-III中優(yōu)先級數字最大取值在cpu.h中定義,用戶可根據需要修改,以下是默認定義:#defineOS_CFG_PRIO_MAX64uμC/OS-III系統(tǒng)中使用

OS_PRIO表示任務優(yōu)先級數據類型,這個類型是可以根據需要配置的,默認是定義為unsignedchar類型,即范圍0~255,數值越小優(yōu)先級越高。優(yōu)先級說明初識μC/OS-III操作系統(tǒng)任務調度法則02任務調度器,又叫調度程序,負責確定下一個要執(zhí)行的任務。μC/OS-III任務調度器支持優(yōu)先級調度法則和時間片輪轉調度法則。當存在相同優(yōu)先級任務就緒時,采用時間片調度法則,否則使用優(yōu)先級調度法則。μC/OS-III任務調度器有2種:任務級調度器和中斷級調度器。任務調度器任何操作系統(tǒng)都需要時鐘節(jié)拍發(fā)生器來驅動系統(tǒng)運行,如用于系統(tǒng)定時、延時、超時判斷、任務調度等。時鐘節(jié)拍發(fā)生器通常由硬件定時器實現(xiàn),μC/OS-III移植到ARMCortex-M系列芯片上時,使用滴答定時器(SysTickTimer)實現(xiàn)。時鐘節(jié)拍發(fā)生器周期的設置:在uC/OS-III配置文件uCOS_CONFIG\os_cfg_app.h中用宏定義方式設置。

#defineOS_CFG_TICK_RATE_HZ1000u/*(10to1000Hz)*/滴答定時器的中斷服務程序SysTick_Handler函數通過調用OSTimeTick()函數,完成每個操作系統(tǒng)節(jié)拍的系統(tǒng)工作。節(jié)拍發(fā)生器初識μC/OS-III操作系統(tǒng)任務調度法則02任務級調度初識μC/OS-III操作系統(tǒng)任務調度法則02中斷級調度初識μC/OS-III操作系統(tǒng)任務調度法則02當具有相同優(yōu)先級的多個任務就緒時,采用時間片輪轉調度算法(

RoundBobinScheduling),系統(tǒng)會根據分配給它們的時間片輪流調度各個任務運行。使用時間片輪轉調度功能:使能OS_CFG_SCHED_ROUND_ROBIN_EN(位于“os_cfg.h”);#defineOS_CFG_SCHED_ROUND_ROBIN_EN1初始化時調用OSSchedRoundRobinCfg()函數使能時間片輪轉調度和配置相關指標。允許用戶為每個任務指定不同的時間片,1個時間片就是1個時鐘節(jié)拍時長。時間片長度是在任務建立時指定的,也可以調用OSTaskTimeQuantaSet()來改變。任務可以調用OSSchedRoundRobinYield函數主動放棄時間片,提前放棄CPU。時間片輪轉調度初識μC/OS-III操作系統(tǒng)任務調度法則02時間片輪轉調度分析初識μC/OS-III操作系統(tǒng)程序模板02μC/OS-III系統(tǒng)main程序代碼結構初識μC/OS-III操作系統(tǒng)程序模板02實時操作系統(tǒng)程序代碼結構start_task是開始任務,用于創(chuàng)建其他更多的用戶任務,創(chuàng)建完成后,這個開始任務就沒有作用,需要把它刪除。這里的刪除并不是把代碼刪除,而是把start_task任務函數從調度隊列中移除,后面不再會被CPU執(zhí)行。一個被刪除的任務函數,除非你重新創(chuàng)建它,否則永遠不可能再被CPU執(zhí)行。uCOS-III任務1代碼模板uCOS-III任務2代碼模板初識μC/OS-III操作系統(tǒng)程序模板0203μC/OS-III任務使用任務基本概念定義任務控制塊定義任務棧定義優(yōu)先級定義任務函數創(chuàng)建任務μC/OS-III中的任務是復雜問題“分而治之”的問題解題思路。μC/OS-III的兩種任務:系統(tǒng)任務(如空閑任務,統(tǒng)計任務)、用戶任務(用戶自己創(chuàng)建的任務)。任務的組成任務控制塊:μC/OS-III進行任務管理用的數據結構,記錄了任務的特征信息。任務名稱:

μC/OS-III每個任務都可自定義設置一個名稱。任務函數:實現(xiàn)程序目標功能的核心代碼。任務函數參數:當任務函數被調用時,傳遞給任務函數的實參。任務優(yōu)先級:每個任務都有一個運行級別,μC/OS-III根據優(yōu)先級進行調度。任務堆棧:

任務切換時保存當前的程序狀態(tài)、數據信息(類似于函數調用的使用的棧)。μC/OS-III任務使用任務基本概念03任務概述概述μC/OS-III系統(tǒng)中使用

CPU_STK表示任務棧數據類型,對于32位處理器,被定義為unsignedint類型,任務棧本質上就是一片連續(xù)的內存。一般定義為全局數組,棧大小不容易精確計算得到,因此,在RAM資源允許情況下,可以盡量分配大一些。如果任務棧分配過小,會導致任務切換時,無法保存全部任務數據,CPU狀態(tài)信息,導致任務棧溢出,引發(fā)程序運行異常。任務棧定義#defineSTART_STK_SIZE128//start_task任務棧大小

CPU_STKSTART_TASK_STK[START_STK_SIZE];//start_task任務棧#defineTASK1_STK_SIZE256//task1_task任務棧大小

CPU_STKTASK1_TASK_STK[TASK1_STK_SIZE];//task1_task任務棧#defineTASK2_STK_SIZE256//task2_task任務堆棧大小CPU_STKTASK2_TASK_STK[TASK2_STK_SIZE];//task2_task任務棧μC/OS-III任務使用定義任務棧03概述μC/OS-III系統(tǒng)中使用

OS_PRIO表示任務優(yōu)先級數據類型,這個類型是可以根據需要配置的,默認是定義為unsignedchar類型,即范圍是0~255,數值越小優(yōu)先級越高。在定義優(yōu)先級時,不建議用戶使用0,1,2以及最小2個優(yōu)先級數值(這5個優(yōu)先級在第2節(jié)中優(yōu)先級小節(jié)中已經有講述)。在μC/OS-III中支持不同任務使用相同優(yōu)先級,如相同優(yōu)先級任務都就緒了,則采用時間片輪轉調度方式調度這些任務。優(yōu)先級定義#defineSTART_TASK_PRIO3//start_task任務優(yōu)先級#defineTASK1_TASK_PRIO4//task1_task任務優(yōu)先級#defineTASK2_TASK_PRIO5//task2_task任務優(yōu)先級μC/OS-III任務使用定義優(yōu)先級03概述任務控制塊TCB(TaskControlBlock)是內核使用的一種數據結構(類型名為OS_TCB),用來維護任務相關的信息。在μC/OS-III中,每個任務都要有自己的TCB,創(chuàng)建任務前需要開發(fā)者定義。當調用任務相關函數(即OSTask*()這類函數)時,要把任務TCB的地址傳遞給所調用的函數??刂茐K定義//定義全局任務控制塊變量OS_TCBStartTaskTCB;//start_task任務控制塊OS_TCBTask1_TaskTCB;//task1_task任務控制塊OS_TCBTask2_TaskTCB;//task2_task任務控制塊μC/OS-III任務使用定義任務控制塊03任務函數模板μC/OS-III任務使用定義任務函數03任務1函數//task1任務函數voidtask1_task(void*p_arg){OS_ERRerr;CPU_SR_ALLOC();u8task1_num=0;p_arg=p_arg;while(1){task1_num++;//任務執(zhí)1行次數加1LED0=~LED0;//取反LED0狀態(tài)

printf("任務1已經執(zhí)行:%d次\r\n",task1_num);if(task1_num==5){//任務1執(zhí)行5此后刪除掉任務2OSTaskDel((OS_TCB*)&Task2_TaskTCB,&err);printf("任務1刪除了任務2!\r\n");}

//延時1s,放棄CPU,CPU去執(zhí)行其他任務代碼

OSTimeDlyHMSM(0,0,1,0,OS_OPT_TIME_HMSM_STRICT,&err);}}μC/OS-III任務使用定義任務函數03任務2函數

//task2任務函數

voidtask2_task(void*p_arg){OS_ERRerr;CPU_SR_ALLOC();u8task2_num=0;p_arg=p_arg;while(1){task2_num++;//任務執(zhí)2行次數加1,到255會清0LED1=~LED1;//取反LED1狀態(tài)

printf("任務2已經執(zhí)行:%d次\r\n",task2_num);

//延時1s,放棄CPU,CPU去執(zhí)行其他任務代碼

OSTimeDlyHMSM(0,0,1,0,OS_OPT_TIME_HMSM_STRICT,&err);}}μC/OS-III任務使用定義任務函數03OSTaskCreate((OS_TCB*)&Task1_TaskTCB,//任務控制塊

(CPU_CHAR*)"Task1task",//任務名字

(OS_TASK_PTR)task1_task,//任務函數

(void*)0,//傳遞給任務函數的參數

(OS_PRIO)TASK1_TASK_PRIO,//任務優(yōu)先級

(CPU_STK*)&TASK1_TASK_STK[0],//任務堆?;刂?/p>

(CPU_STK_SIZE)TASK1_STK_SIZE/10,//任務堆棧深度限位

(CPU_STK_SIZE)TASK1_STK_SIZE,//任務堆棧大小

(OS_MSG_QTY)0,//任務內部消息隊列能夠接收的最大消息數目,為0時禁止接收消息

(OS_TICK)0,//當使能時間片輪轉時的時間片長度,為0時為默認長度,

(void*)0,//用戶補充的存儲區(qū)

(OS_OPT)OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR,//任務選項

(OS_ERR*)&err);//存放該函數錯誤時的返回值μC/OS-III任務使用創(chuàng)建任務03task1_task任務創(chuàng)建OSTaskCreate((OS_TCB*)&Task2_TaskTCB,//任務控制塊

(CPU_CHAR*)"Task2task",//任務名字

(OS_TASK_PTR)task2_task,//任務函數

(void*)0,//傳遞給任務函數的參數

(OS_PRIO)TASK2_TASK_PRIO,//任務優(yōu)先級

(CPU_STK*)&TASK2_TASK_STK[0],//任務堆?;刂?/p>

(CPU_STK_SIZE)TASK2_STK_SIZE/10,//任務堆棧深度限位

(CPU_STK_SIZE)TASK2_STK_SIZE,//任務堆棧大小

(OS_MSG_QTY)0,//任務內部消息隊列接收的最大消息數,為0時禁止接收消息

(OS_TICK)0,//當使能時間片輪轉時的時間片長度,為0時為默認長度,

(void*)0,//用戶補充的存儲區(qū)

(OS_OPT)OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR,//任務選項

(OS_ERR*)&err);//存放該函數錯誤時的返回值μC/OS-III任務使用創(chuàng)建任務03task2_task任務創(chuàng)建完整示例見配套代碼:例6-1UCOSIII任務創(chuàng)建和刪除-sim04μC/OS-III時間管理OSTimeDlyOSTimeDlyHMSMOSTimeDlyResumeOSTimeGet/Set原型:voidOSTimeDly(OS_TICKdly,OS_OPTopt,OS_ERR*p_err)功能:對一個任務進行延時操作,當前任務調用后進入等待狀態(tài),放棄指定長時長的CPU。參數:dly:指定延時的時間長度,這里單位為時間節(jié)拍數。opt:指定延遲使用的選項,有四種選項。OS_OPT_TIME_DLY:相對模式OS_OPT_TIME_TIMEOUT:和OS_OPT_TIME_DLY一樣OS_OPT_TIME_MATCH:絕對模式OS_OPT_TIME_PERIODIC:

周期模式 p_err:指向存放函數返回的錯誤碼說明:相對模式:從當前延時時刻開始,延時指定長時間。絕對模式:從上電開始計算到某個時間點定延時到。μC/OS-III時間管理OSTimeDly04OSTimeDly函數說明原型:voidOSTimeDlyHMSM(CPU_INT16Uhours,

//需要延時的小時數CPU_INT16Uminutes,

//需要延時的分鐘數CPU_INT16Useconds,

//需要延時的秒鐘數CPU_INT32Umilli,

//需要延時的毫秒數OS_OPTopt,//延時選項OS_ERR*p_err)//指向存放函數返回的錯誤碼功能:對任務進行延時操作,調用后當前任務放棄指定長時長的CPU。參數:opt:比OSTimeDly()函數多了兩個選項:OS_OPT_TIME_HMSM_STRICT和OS_OPT_TIME_HMSM_NON_STRICT;OS_OPT_TIME_HMSM_STRICT:

選項的話將會檢查延時參數,hours的范圍應該是0~99;minutes的范圍應該是0~59seconds的范圍為0~59;milli的范圍為0~999 OS_OPT_TIME_HMSM_NON_STRICT:hours的范圍為0~999;minutes的范圍為0~9999seconds的范圍為0~65535;milli的范圍為0~4294967259μC/OS-III時間管理OSTimeDlyHMSM04OSTimeDlyHMSM函數說明原型:voidOSTimeDlyResume(OS_TCB*p_tcb,OS_ERR*p_err)功能:恢復使用OSTimeDly或OSTimeDlyHMSM延時掛起的任務(即提前結束延時)。參數:p_tcb:需要恢復的任務的任務控制塊。p_err:指向存放函數返回的錯誤碼μC/OS-III時間管理OSTimeDlyResume04OSTimeDlyResume函數說明原型:OS_TICKOSTimeGet(OS_ERR*p_err)功能:獲取當前時鐘節(jié)拍計數器的值。參數:p_err:指向存放函數返回的錯誤碼μC/OS-III時間管理OSTimeGet/Set04OSTimeGet函數說明原型:voidOSTimeSet(OS_TICKticks,OS_ERR*p_err)功能:設置時鐘節(jié)拍計數器的值,用戶很少使用該函數,不建議開發(fā)者使用。參

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論