VC6.0MFC串口通信編寫全過程_第1頁
VC6.0MFC串口通信編寫全過程_第2頁
VC6.0MFC串口通信編寫全過程_第3頁
VC6.0MFC串口通信編寫全過程_第4頁
VC6.0MFC串口通信編寫全過程_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、其于MFC的串口調(diào)試助手編輯過程一、 新建打開VC6.0 文件 新建 工程 MFC AppWiard(exe) 位置(選擇保存工程位置) 工程名稱(輸入工程名XXXX) 確定 選擇基本對話框 下一步 下一步 下一步 選擇(CXXXXDlg) 完成 確定 在生成的基本對話框內(nèi)將不需要按鈕及提示框(自動生成的“確定”“取消” 及提示框)刪除或修改使用,至此基本框架完成如下圖:此控件(標志)是下面步驟添加進來的串口控件二、 往生成的基本框架中添加控件1、因為控件列表框內(nèi)沒有串口通信用到的通信控件,所以要先添加到控件列表框內(nèi)再將控件添加到基本框內(nèi)使用,步驟如下:菜單欄 工程 添加到工程 Compone

2、nts and controls Registered ActiveX Controls 選擇“Microsoft Communications Control, version 6.0” Insert 確定 OK 關閉此子窗口完成添加操作標志如上圖所示?;究蚣?、將剛才添加添加到控件列表框內(nèi)的串口控件添加到基本框架內(nèi) 點擊控件列表框內(nèi)的串口控件,此時光標變?yōu)椤笆毙?,在基本框架?nèi)隨意劃取一矩形區(qū)域,即可以添加串口控件,不需要修改此控件的大小及位置,因為程編譯運行后此控件是看不到的,步驟結果如下圖:3、繼續(xù)往基本框架內(nèi)添加用于編輯發(fā)送數(shù)據(jù)的輸入編輯框及輸出編輯框,同理選擇控件列表框內(nèi)的“編輯

3、框控件”,以相同的操作即可添加兩個編輯窗口及一個按紐控件如下圖所示:選擇其中任意一個作為輸入編輯框及輸出編輯框這兩個窗口需要修改大小及位置,因為程序運行后將會顯示而串口通信控件則不顯示,上圖是運行后的效果。4、對以上四個控件編程步驟如下:a、右擊串口通信控件 建立類向?qū)?Member variables Control IDS中選擇IDC_MSCOMM1 add variable Member variable name中輸入控件變量名m_ctrlComm(變量名可以隨意選取,但程序中應與所取變量名一致) OK 確定b、右擊編輯框、屬性、常規(guī)、ID:中輸入ID號,此編輯框用于接收顯示數(shù)據(jù)的其I

4、D號為IDC_EDIT_RXDATA(可以隨意選取,但程序中應與所取ID號一致),再在此窗口的樣式中勾選”多行”,同時將“自動水平滾動(T)”勾選去掉,再勾選“垂直滾動(V)”,此勾選操作是用于垂直多行顯示的,按回車后即可輸入;同理右擊另一編輯框輸入ID號為IDC_EDIT_TXDATA此編輯框用于編輯發(fā)送數(shù)據(jù)的,同樣也選上用于垂直多行顯示,發(fā)送框可以不用垂直多行顯示;再為按鈕控件添加ID號,為IDC_BUTTON_MANUALSEND,并將標題中的“Button1”改為“發(fā)送”,功能是按一次就把發(fā)送編輯框中的內(nèi)容發(fā)送一次。C、為以上兩個編輯框添加變量,與串口通信控件一樣添加,為IDC_EDI

5、T_RXDATA添加CString型變量m_strRXData ;為IDC_EDIT_TXDATA添加CString型變量m_strTXData。說明: m_strRXData和m_strTXData分別用來放入接收和發(fā)送的字符數(shù)據(jù)。D、添加串口事件消息處理函數(shù)OnComm() 打開ClassWizard>Message Maps,選擇IDC_MSCOMM1,雙擊消息OnComm,將彈出的對話框中將函數(shù)名改為OnComm,(好記而已)OK。 這個函數(shù)是用來處理串口消息事件的,如每當串口接收到數(shù)據(jù),就會產(chǎn)生一個串口接收數(shù)據(jù)緩沖區(qū)中有字符的消息事件,我們剛才添加的函數(shù)就會執(zhí)行,我們在OnCo

6、mm()函數(shù)加入相應的處理代碼就能實現(xiàn)自已想要的功能了。在函數(shù)中加入如下代碼:提示1:此句以下才是我們要添加的語句代碼段1:void CScommTestDlg:OnComm() / TODO: Add your control notification handler code hereVARIANT variant_inp;/定義一個VARIANT類對象COleSafeArray safearray_inp;/定義一個COleSafeArray對象LONG len,k;BYTE rxdata2048;/設置BYTE數(shù)組 AN 8intterthat is not signed.CStrin

7、g strtemp;if (m_ctrlComm.GetCommEvent()=2)/事件值為2表示接收緩沖區(qū)內(nèi)有數(shù)據(jù)/以下你可以根據(jù)自己的通信協(xié)議加入處理代碼variant_inp=m_ctrlComm.GetInput();/讀緩沖區(qū)safearray_inp=variant_inp;/VARIANT型變量轉(zhuǎn)換為ColeSafeArray型變量len=safearray_inp.GetOneDimSize();for(k=0;k<len;k+)safearray_inp.GetElement(&k,rxdata+k);/轉(zhuǎn)換為BYTE型數(shù)組提示2:此三句是下面用于是否是十六進

8、制發(fā)送的,暫時可以不用理會for(k=0;k<len;k+)/將數(shù)組轉(zhuǎn)換為Cstring型變量BYTE bt=*(char*)(rxdata+k);/if(m_ctrlHexSend.GetCheck()/如果是HEX顯示則轉(zhuǎn)為16進制/strtemp.Format("%02x ",bt);/將16進制數(shù)送入臨時變量strtemp存放/elsestrtemp.Format("%c",bt);/將字符送入臨時變量strtemp存放m_strRXData+=strtemp;/加入接收編輯框?qū)址甎pdateData(FALSE);/更新編輯框內(nèi)容(

9、主要是接收編輯框中的)到目前為止還不能在接收編輯框中看到數(shù)據(jù),因為我們還沒有打開串口,但運行程序不應該有任何錯誤,不然,你肯定哪兒沒看仔細,因為我是打開VC6對照著做一步寫一行的,運行試試。沒錯吧?那么做下一步:E、打開串口和設置串口參數(shù)  你可以在你需要的時候打開串口,例如在程序中做一個開始按鈕,在該按鈕的處理函數(shù)中打開串口?,F(xiàn)在我們在主對話框的CSCommTestDlg:OnInitDialog()打開串口,加入如下代碼:代碼段2:BOOL CSCommTestDlg:OnInitDialog()CDialog:OnInitDialog();/ Add "About.&

10、quot; menu item to system menu./ IDM_ABOUTBOX must be in the system command range.ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX < 0xF000);CMenu* pSysMenu = GetSystemMenu(FALSE);if (pSysMenu != NULL)CString strAboutMenu;strAboutMenu.LoadString(IDS_ABOUTBOX);if (!strAboutMen

11、u.IsEmpty()pSysMenu->AppendMenu(MF_SEPARATOR);pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);提示3:此句以下才是我們要添加的語句/ Set the icon for this dialog. The framework does this automatically/ when the application's main window is not a dialog提示4:此5句是我們下面要用到的暫時可以不用理會SetIcon(m_hIcon, TRUE

12、);/ Set big iconSetIcon(m_hIcon, FALSE);/ Set small icon/ TODO: Add extra initialization here/m_ComboBox.SetCurSel(0);/打開軟件時串口選擇框默認顯示COM1/m_BaudRate_M.SetCurSel(0);/打開軟件時波特率選擇框默認顯示9600/m_Date_Select_M.SetCurSel(0);/打開軟件時數(shù)據(jù)位選擇框默認顯示8/m_StopBit_M.SetCurSel(0);/打開軟件時停止位選擇框默認顯示1/m_ParityCheck_M.SetCurSel

13、(0);/打開軟件時奇偶校驗選擇框默認顯示無校驗N/下面if語句用于打開默認串口/*/if(m_ctrlComm.GetPortOpen()m_ctrlComm.SetPortOpen(FALSE);/關閉串口m_ctrlComm.SetCommPort(1);/打開軟件時默認使用COM1串口if(!m_ctrlComm.GetPortOpen()m_ctrlComm.SetPortOpen(TRUE);/打開串口elseAfxMessageBox("cannot open serial port");/*/m_ctrlComm.SetSettings("9600

14、,n,8,1");/打開軟件時端口設置默認為波特率9600,無校驗位,8位數(shù)據(jù),1位停止位m_ctrlComm.SetInputMode(1); /1:表示以二進制方式檢取數(shù)據(jù)m_ctrlComm.SetRThreshold(1); /參數(shù)1表示每當串口接收緩沖區(qū)中有多于或等于1個字符時將引發(fā)一個接收數(shù)據(jù)的OnComm事件m_ctrlComm.SetInputLen(0); /設置當前接收區(qū)數(shù)據(jù)長度為0m_ctrlComm.GetInput();/先預讀緩沖區(qū)以清除殘留數(shù)據(jù)return TRUE; / return TRUE unless you set the focus to a

15、 controlF、發(fā)送數(shù)據(jù),先為發(fā)送按鈕添加一個單擊消息即BN_CLICKED處理函數(shù),打開ClassWizard>Message Maps,選擇IDC_BUTTON_MANUALSEND,雙擊BN_CLICKED添加OnButtonManualsend()函數(shù),并在函數(shù)中添加如下代碼:代碼段3:void CSCommTestDlg:OnButtonManualsend() / TODO: Add your control notification handler code hereUpdateData(TRUE); /讀取編輯框內(nèi)容m_ctrlComm.SetOutput(COleV

16、ariant(m_strTXData);/發(fā)送數(shù)據(jù)此時運行程序,在發(fā)送編輯框中隨意輸入數(shù),單擊發(fā)送按鈕,若出錯則修改后再測試,直到成功再進行以下操作。5、添加兩個“組框”或“靜態(tài)文本”控件,調(diào)整位置及大小,在標師處輸入提示文字,這兩個控件不用編程,效果如下圖:6、添加5個“靜態(tài)文本”控件并由屬性修改其標題,均不用編程,效果如下圖:7、添加5個“組框”控件,效果如下圖:逐一對各個組框?qū)傩跃庉嬋缦拢捍谔枺撼R?guī) ID:IDC_COMBO_CommSelect 數(shù)據(jù) 輸入列表框項目(N):COM1、COM2、COM3、COM4、COM5、COM6、COM7、COM8、COM9(注意每輸入一個數(shù)據(jù)選項

17、以Ctrl+Enter回車后再輸入下一個數(shù)據(jù)選項)樣式 將“分類勾選去掉”進入類向?qū)砑幼兞浚瑸镮DC_COMBO_CommSelect添加一個value類int型變量m_Index,點擊OK后,再添加一個Control類CComboBox型變量m_ComboBox點擊OK最后“確定”波特率:常規(guī) ID:IDC_COMBO_BaudRate_Select數(shù)據(jù) 輸入列表框項目(N):9600、14400、19200、38400、56000、57600、115200、128000、256000樣式 將“分類勾選去掉”進入類向?qū)砑幼兞?,為IDC_COMBO_BaudRate_Select添加一個v

18、alue類int型變量 m_ BaudRate點擊OK后,再添加一個Control類CComboBox型變量m_ BaudRate_M點擊OK最后“確定”數(shù)據(jù)位:常規(guī) ID:IDC_COMBO_Date_Select數(shù)據(jù) 輸入列表框項目(N):8、7、6、5、4樣式 將“分類勾選去掉”進入類向?qū)砑幼兞浚瑸镮DC_COMBO_Date_Select添加一個value類int型變量 m_Date_Select點擊OK后,再添加一個Control類CComboBox型變量m_Date_Select _M點擊OK最后“確定”停止位:常規(guī) ID:IDC_COMBO_StopBit數(shù)據(jù) 輸入列表框項目(

19、N):1、2樣式 將“分類勾選去掉”進入類向?qū)砑幼兞?,為IDC_COMBO_StopBit添加一個value類int型變量 m_StopBit點擊OK后,再添加一個Control類CComboBox型變量m_StopBit_M點擊OK最后“確定”奇偶校驗位:常規(guī) ID:IDC_COMBO_ParityCheck數(shù)據(jù) 輸入列表框項目(N):N、O、E、樣式 將“分類勾選去掉”進入類向?qū)砑幼兞浚瑸镮DC_COMBO_ParityCheck添加一個value類int型變量 m_ParityCheck點擊OK后,再添加一個Control類CComboBox型變量m_ParityCheck_M點擊O

20、K最后“確定”說明:以上數(shù)據(jù)配置添加的Control類CComboBox型變量可能用不到,但value類必須為int型8、為各個列表框添加處理函數(shù):A、在建立類向?qū)е蠱essage Maps ,object IDs中選中IDC_COMBO_CommSelect再在Messages中選中CBN_SELCHANG雙擊后單擊OK,再在Member funtions中雙擊剛才生成的函數(shù)進入程序編輯頁面,添加程序代碼如下:代碼段4:void CSCommTestDlg:OnSelchangeCOMBOCommSelect() / TODO: Add your control notification h

21、andler code herem_Index=(CComboBox*)GetDlgItem(IDC_COMBO_CommSelect)->GetCurSel();/當前選中的行(CComboBox*)GetDlgItem(IDC_COMBO_CommSelect)->SetCurSel(m_Index);/設置當前選中的行的內(nèi)容為顯示的內(nèi)容if(m_ctrlComm.GetPortOpen()/當要改變時則要先關閉串口才可以用按鍵進行打開,所以先判斷當前串口是否打開提示5:下面添加串口打開或關閉按鈕后將用到此將用到此判斷及以下語句/如果是打開的則先關閉m_ctrlComm.Set

22、PortOpen(FALSE);/關閉串口SetDlgItemText(IDC_BUTTON1,"打開串口");/將打開或關才按鈕改為"打開串口"顯示狀態(tài)B、同理為IDC_COMBO_BaudRate_Select添加處理函數(shù)程序代碼如下:代碼段5:void CSCommTestDlg:OnSelchangeCOMBOBaudRateSelect() / TODO: Add your control notification handler code hereUpdateData(true);m_BaudRate=(CComboBox*)GetDlgIt

23、em(IDC_COMBO_BaudRate_Select)->GetCurSel();/當前選中的行/*/根據(jù)當前選中的值進行波特率設置/*/switch(m_BaudRate)case 1: m_ctrlComm.SetSettings("14400,");break;case 2: m_ctrlComm.SetSettings("19200,");break;case 3: m_ctrlComm.SetSettings("38400,");break;case 4: m_ctrlComm.SetSettings("

24、56000,");break;case 5: m_ctrlComm.SetSettings("57600,");break;case 6: m_ctrlComm.SetSettings("115200,");break;case 7: m_ctrlComm.SetSettings("128000,");break;case 8: m_ctrlComm.SetSettings("256000,");break;default:m_ctrlComm.SetSettings("9600,")

25、;break;/*/UpdateData(false);C、同理為IDC_COMBO_Date_Select添加處理函數(shù)程序代碼如下:代碼段6:void CSCommTestDlg:OnSelchangeCOMBODateSelect() / TODO: Add your control notification handler code hereUpdateData(true);m_Date_Select=(CComboBox*)GetDlgItem(IDC_COMBO_Date_Select)->GetCurSel();/當前選中的行/*/*/switch(m_Date_Select

26、)case 1: m_ctrlComm.SetSettings(",7,");break;case 2: m_ctrlComm.SetSettings(",6,");break;case 3: m_ctrlComm.SetSettings(",5,");break;case 4: m_ctrlComm.SetSettings(",4,");break;default:m_ctrlComm.SetSettings(",8,");break;/*/UpdateData(false);D、同理為IDC

27、_COMBO_StopBit添加處理函數(shù)程序代碼如下:代碼段6:void CSCommTestDlg:OnSelchangeCOMBOStopBit() / TODO: Add your control notification handler code hereUpdateData(true);m_StopBit=(CComboBox*)GetDlgItem(IDC_COMBO_StopBit)->GetCurSel();/當前選中的行/*/*/switch(m_StopBit)case 1: m_ctrlComm.SetSettings(",2");break;d

28、efault:m_ctrlComm.SetSettings(",1");break;/*/UpdateData(false);E、同理為IDC_COMBO_ParityCheck添加處理函數(shù)程序代碼如下:代碼段7:void CSCommTestDlg:OnSelchangeCOMBOParityCheck() / TODO: Add your control notification handler code hereUpdateData(true);m_ParityCheck=(CComboBox*)GetDlgItem(IDC_COMBO_ParityCheck)-&g

29、t;GetCurSel();/當前選中的行/*/*/switch(m_ParityCheck)case 1: m_ctrlComm.SetSettings(",O,");break;case 2: m_ctrlComm.SetSettings(",O,");break;default:m_ctrlComm.SetSettings(",N,");break;/*/UpdateData(false);此時應將代碼段2:提示4中所指的那5個語句前的“/”刪除9、串口添加打開或關閉按鈕以同樣的方式添加按鈕,并將標題修改為“關閉串口”字樣,為此

30、按鈕添加處理函數(shù)程序代碼如下:代碼段8:void CSCommTestDlg:OnButton1Start() /檢查是否改變默認的串口值,沒有改變m_Index的值是0的,否則則不為0if(m_Index<0)/串口的默認值沒有改變switch(m_ctrlComm.GetPortOpen()/點擊打開或關閉串口按鍵時,根據(jù)當前串口是否打開進行相應操作case 1:/*關閉串口前先將自動發(fā)送功能關閉*/SetDlgItemText(IDC_BUTTON_AutoSend,"自動發(fā)送");/更改按鍵指示KillTimer(1);/*/當前串口是打開的則進行關串口操作m

31、_ctrlComm.SetPortOpen(FALSE);/關閉串口SetDlgItemText(IDC_BUTTON1,"打開串口");/更改按鍵指示UpdateData(FALSE);/更新按鍵狀態(tài)break;case 0:/當前串口是關閉的則進行開串口操作m_ctrlComm.SetCommPort(1);/如果要打開串口則應先選擇哪個串口m_ctrlComm.SetPortOpen(TRUE);/打開串口SetDlgItemText(IDC_BUTTON1,"關閉串口");/更改按鍵指示UpdateData(FALSE);break;defaul

32、t : AfxMessageBox("cannot open or close serial port");else/串口的默認值有改變switch(m_ctrlComm.GetPortOpen()/點擊打開或關閉串口按鍵時,根據(jù)當前串口是否打開進行相應操作case 0:/當前串口是關閉的則進行開串口操作m_ctrlComm.SetCommPort(m_Index+1);/如果要打開串口則應先選擇哪個串口m_ctrlComm.SetPortOpen(TRUE);/打開串口SetDlgItemText(IDC_BUTTON1,"關閉串口");/更改按鍵指示

33、UpdateData(FALSE);/更新按鍵狀態(tài)break;case 1: /*關閉串口前先將自動發(fā)送功能關閉*/SetDlgItemText(IDC_BUTTON_AutoSend,"自動發(fā)送");/更改按鍵指示KillTimer(1);/*/當前串口是打開的則進行關串口操作m_ctrlComm.SetPortOpen(FALSE);SetDlgItemText(IDC_BUTTON1,"打開串口");UpdateData(FALSE);break;default : AfxMessageBox("cannot open serial po

34、rt");if(m_Index<0)(CComboBox*)GetDlgItem(IDC_COMBO_CommSelect)->SetCurSel(0);/如果沒有另外進行串口選擇則顯示COM1if(m_BaudRate<0)(CComboBox*)GetDlgItem(IDC_COMBO_BaudRate_Select)->SetCurSel(0);/如果沒有另外進行波特率選擇則顯示9600if(m_Date_Select<0)(CComboBox*)GetDlgItem(IDC_COMBO_Date_Select)->SetCurSel(0);

35、/如果沒有另外進行數(shù)據(jù)位選擇則顯示8if(m_StopBit<0)(CComboBox*)GetDlgItem(IDC_COMBO_StopBit)->SetCurSel(0);/如果沒有另外進行停止位選擇則顯示1if(m_ParityCheck<0)(CComboBox*)GetDlgItem(IDC_COMBO_ParityCheck)->SetCurSel(0);/如果沒有另外進行校驗位選擇則顯示沒有校驗位N10、添加自動發(fā)送功能:A、添加一個“編輯框”控件,此控件用于獲取自動發(fā)送的時間間隔的,修改其ID為IDC_EDIT_Timer,為其添加一個value類UI

36、NT型變量m_TimerB、添加一個“按鈕”控件,修改其ID為IDC_BUTTON_AutoSend修改其標題為“自動發(fā)送”C、添加一個“按鈕”控件,修改其ID為IDC_BUTTON_StopAutoSend修改其標題為“停止自動發(fā)送”D、為“自動發(fā)送”按鈕添加BN_CLICKED處理函數(shù),程序代碼如下:代碼段9:void CSCommTestDlg:OnBUTTONAutoSend() UpdateData(TRUE);if(m_Timer<=0)/判斷是否設置自動發(fā)送時間間隔AfxMessageBox("請設置自動發(fā)送時間間隔");else if(!m_ctrlC

37、omm.GetPortOpen()/判斷是否打開串口AfxMessageBox("請打開串口");elseSetDlgItemText(IDC_BUTTON_AutoSend,"自動發(fā)送.");/更改按鍵指示SetTimer(1,m_Timer,NULL);E、為“停止自動發(fā)送”按鈕添加BN_CLICKED處理函數(shù),程序代碼如下:代碼段9:void CSCommTestDlg:OnBUTTONStopAutoSend() / TODO: Add your control notification handler code hereSetDlgItemTe

38、xt(IDC_BUTTON_AutoSend,"自動發(fā)送");/更改按鍵指示KillTimer(1);F、因為要設置自發(fā)送,所以要添加一個Windows定時函數(shù),步驟如下:進入類向?qū)?,Message Maps中的Object IDs中選擇CScommTestDlg再選擇Messages中的WM_TIMER,進入TIMER函數(shù)后,添加如下程序代碼如下:代碼段10:void CSCommTestDlg:OnTimer(UINT nIDEvent) / TODO: Add your message handler code here and/or call defaultUpda

39、teData(TRUE);if(m_ctrlHexSend.GetCheck()CByteArray hexdate;int len=String2Hex(m_strTXData,hexdate);m_ctrlComm.SetOutput(COleVariant(hexdate);elsem_ctrlComm.SetOutput(COleVariant(m_strTXData);CDialog:OnTimer(nIDEvent);11、十六進制數(shù)據(jù)發(fā)送及接收顯示添加一個“復選框”控件,修改ID為IDC_CHECK_HexSend,標題為“HEX發(fā)送”,進入類向?qū)砑觕ontrol類CButto

40、n型變量,變量名為m_ctrlHexSend,然后為為SCommTestDlg類添加以下兩個PUBLIC成員函數(shù),在Class view中右擊CCommTestDlg選中Add Member Function 然后在函數(shù)類型中輸入“int”,在函數(shù)描述中輸入“String2Hex(CString str, CByteArray &senddate)”然后確定。編輯函數(shù)體如下:代碼段11:int CSCommTestDlg:String2Hex(CString str, CByteArray &senddate)int hexdate,lowhexdate;int hexdate

41、len=0;int len=str.GetLength();senddate.SetSize(len/2);for(int i=0;i<len;)char lstr,hstr=stri;if(hstr=' ')i+;continue;i+;if(i>=len)break;lstr=stri;hexdate=ConvertHexChar(hstr);lowhexdate=ConvertHexChar(lstr);if(hexdate=16)|(lowhexdate=16)break;elsehexdate=hexdate*16+lowhexdate;i+;sendda

42、tehexdatelen=(char)hexdate;hexdatelen+;senddate.SetSize(hexdatelen);return hexdatelen;再添加別一個CCommTestDlg添加兩個成員函數(shù),在函數(shù)類型中輸入“char”,在函數(shù)描述中輸入“ConvertHexChar(char ch)”然后確定。編輯函數(shù)體如下:代碼段12:char CSCommTestDlg:ConvertHexChar(char ch)if(ch>='0')&&(ch<='9')return ch-0x30;else if(ch>='A&

溫馨提示

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

評論

0/150

提交評論