版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
湖北師范學院電工電子實驗教學省級示范中心電子版實驗報告第51頁,共51頁數據采集與實踐基于串口通信的數據采集系統(tǒng)綜合應用電子技術物理與電子技術學院電工電子中心繪制湖北師范學院電工電子實驗教學省級示范中心電子版實驗報告第2頁,共52頁基于串口通信的數據采集系統(tǒng)一.任務解析(老師統(tǒng)一給出)1、串口通信接口,單片機232接口與PC機232接口通信相關內容2、單片機控制的ADC,電路,控制程序3、上位機軟件編寫,VB基礎,MSCOMM控件,代碼分析4、通信協(xié)議,為什么要通信協(xié)議,如何設計通信協(xié)議5、溫度(電壓)數據采集系統(tǒng)設計實現二.總要求(老師統(tǒng)一給出)對【一】中5點任務,結合授課內容,查閱相關資料,進行實驗驗證,撰寫書面報告(電子版)??紤]到同學們的實際水平,要求你們立足老師提供的現成資料,完成實驗驗證,同時自己再查閱一些資料后,對所掌握的資料進行合理的整理,完成報告,對創(chuàng)新不作要求。三.實驗內容3.1串口通信(核心內容)=====================================================//發(fā)送程序=====================================================voidsend_answer(unsignedcharn,unsignedchar*str){ unsignedchari,temp; temp=n; for(i=0;i<n;i++)temp+=*(str+i); temp=~temp+1; uart_putc(':'); uart_putc(hex_to_asc(n,1)); uart_putc(hex_to_asc(n,0)); for(i=0;i<n;i++) { uart_putc(hex_to_asc(*(str+i),1)); uart_putc(hex_to_asc(*(str+i),0)); } uart_putc(hex_to_asc(temp,1)); uart_putc(hex_to_asc(temp,0));}=====================================================//串口接收中斷程序=====================================================voidserial_int(void)interrupt4{staticunsignedchari=0; staticunsignedcharnum=0; staticunsignedcharrx_hlf=0; unsignedcharrx_dat; if(RI){ rx_dat=SBUF; RI=0; switch(num) { case0:if(rx_dat==':')num=1;break; case1: if(rx_hlf){ rx_counter+=asc_to_hex(rx_dat); rx_hlf=0; num=2; } else{ rx_counter=asc_to_hex(rx_dat)<<4; rx_hlf=1; } break; case2: if(rx_hlf){ rx_buff[i]+=asc_to_hex(rx_dat); rx_hlf=0; if(++i>rx_counter) { num=0; i=0; rx_finish_flag=1; } } else{ rx_buff[i]=asc_to_hex(rx_dat)<<4; rx_hlf=1; } break; default:num=0; break; } }}=====================================================//接收完畢后指令譯碼、執(zhí)行。通過SWITCH及其套用,可以定義很多//想做的事=====================================================voidtast(){unsignedchari,temp;unsignedintj=100,k=100;if(rx_finish_flag){ temp=rx_counter; for(i=0;i<=rx_counter;i++)temp+=rx_buff[i]; if((temp==0)&&(rx_buff[0]==LOCAL_ID)){ switch(rx_buff[1]) { case0:task_example(rx_buff[2]);break; case1:while(j--)ADC_show();break; case2:TEM();break; case3:voltage();break; case4: switch(rx_buff[2]) { case0:test1();break; case1:test2();break; case2:test3();break; case3:test4();break; case4:test5();break; case5:test6();break; case6:test7();break; case7:test8();break; case8:test9();break; } case5: switch(rx_buff[2]) { case0:LED_TEST(0);break; case1:LED_TEST(1);break; case2:LED_TEST(2);break; case3:LED_TEST(3);break; case4:LED_TEST(4);break; case5:LED_TEST(5);break; case6:LED_TEST(6);break; case7:LED_TEST(7);break; } case6: switch(rx_buff[2]) { case0: hourinc();break; case1: hourdec();break; case2: minuteinc();break; case3: minutedec();break; } default:break; } } rx_finish_flag=0; }}3.2ADC=====================================================定義接口WR和RD接P36,P37,不用定義,包含reg51.h頭文件就可以了。CS片選信號直接接地,不用定義。INTR接P35=====================================================sbitADCfinish=P3^5;unsignedintADC_read(){ unsignedlongtemp; WR=1; while(ADCfinish); WR=0; RD=0; temp=P0; RD=1; value=(unsignedint)(100*5*temp/255); returnvalue; }3.3VB編程====================================================='滿足通信協(xié)議的發(fā)送函數'通過數組Out_Buff傳遞參數'數組格式:長1字節(jié),數據N(長)字節(jié)(ID1字節(jié),命令1字節(jié),參數N-2字節(jié))=====================================================PrivateSubSend_Data()DimOutbyte()AsByteDimiAsByteDimTempAsByteDimCheckAsIntegerReDimOutbyte(0To(Out_Buff(0)*2+4))AsByte'頭長校驗Check=0Fori=0ToOut_Buff(0)Check=Check+Out_Buff(i)NextOutbyte(0)=&H3AOutbyte(1)=Asc(Hex((Out_Buff(0)And&HF0)/16))Outbyte(2)=Asc(Hex(Out_Buff(0)And&HF))Fori=1To(Out_Buff(0)+1)Outbyte(i*2+1)=Asc(Hex((Out_Buff(i)And&HF0)/16))Outbyte(i*2+2)=Asc(Hex(Out_Buff(i)And&HF))NextTemp=256-(CheckAnd&HFF)'校驗位計算Outbyte(Out_Buff(0)*2+3)=Asc(Hex((TempAnd&HF0)/16))Outbyte(Out_Buff(0)*2+4)=Asc(Hex(TempAnd&HF))Comm1.Output=Outbyte'發(fā)出數據EndSub====================================================='滿足通信協(xié)議的接收函數=====================================================SubComm1_OnComm()DimInbyte()AsByteDimStr_buffAsStringDimTempAsByteSelectCaseComm1.CommEventCasecomEvReceiveIf(Flag=False)ThenText2.Text=""'首次清屏Flag=TrueEndIfDoWhile(Comm1.InBufferCount>0)Str_buff=""Inbyte=Comm1.InputStr_buff=Str_buff+Chr(Inbyte(0))SelectCaseRx_NumCase0'頭檢測If(Inbyte(0)=&H3A)ThenRx_Num=1Rx_HL=TrueIf(Text2.Text<>"")ThenText2.Text=Text2.Text+Chr(13)+Chr(10)Case1'數據長度獲取If(Rx_HL)ThenRx_buff(0)=Asc_Hex(Inbyte(0))Rx_HL=FalseElseRx_buff(0)=Rx_buff(0)*16+Asc_Hex(Inbyte(0))Rx_HL=Truej=1Rx_Num=2EndIfCase2'接受數據If(Rx_HL)ThenRx_buff(j)=Asc_Hex(Inbyte(0))Rx_HL=FalseElseRx_buff(j)=Rx_buff(j)*16+Asc_Hex(Inbyte(0))Rx_HL=TrueIf(j<=Rx_buff(0))Thenj=j+1ElseCallData_Check'數據處理Rx_Num=0EndIfEndIfEndSelectText2.Text=Text2.Text+Str_buffLoopEndSelectEndSub=====================================================3.4通信協(xié)議說明:為了頭和DATA區(qū)別開來,發(fā)送和接收都使用ASSII碼。校驗:~(長度N+DATA)+13.5數據采集實踐實驗箱效果跟預期一樣。顯示時間顯示電壓串口返回電壓串口返回溫度附加數碼管、LED檢測、串口時間調整等功能四.經驗總結實驗箱效果跟仿真一樣,完成了VB上位機的編寫,下位機程序的設計,串口順利返回電壓及溫度值,以及時間顯示、調整,以及自己模式,串口自動讀取電壓(溫度)。VB上位機還增加了軟件運行時間記錄,電腦當前時間獲取顯示,以及歡迎及關閉對話框。不足:功能過于簡單,沒做遠距離傳輸測試。附錄===========================================================單片機程序===========================================================#include<reg51.h>#defineLOCAL_ID2#defineMAX_SIZE16unsignedcharrx_buff[MAX_SIZE];unsignedchartx_buff[MAX_SIZE];#include"ADC0804.h"#include"szz.h"#include"tast.h"unsignedcharrx_finish_flag=0;unsignedcharrx_counter=0;externvoidtast();externvoidrs232_port_init(void);externvoidtask_example(unsignedchar);externvoiduart_putc(unsignedchar);externvoidsend_answer(unsignedchar,unsignedchar*);voidmain(){ rs232_port_init(); timer_ini(); while(1) { ADC_read(); //ADC_show(); //TEM_show(); tast(); if(ssz_bit)ssz_show(); }}unsignedcharhex_to_asc(unsignedcharda,unsignedcharhl){ unsignedchartemp; if(hl)temp=da>>4; elsetemp=da&0x0f; if(temp<10)return(temp+0x30); elsereturn(temp+0x37);}unsignedcharasc_to_hex(unsignedcharda){ if(da<0x3a)return(da-0x30); elsereturn(da-0x37);}voidsend_answer(unsignedcharn,unsignedchar*str){ unsignedchari,temp; temp=n; for(i=0;i<n;i++)temp+=*(str+i); temp=~temp+1; uart_putc(':'); uart_putc(hex_to_asc(n,1)); uart_putc(hex_to_asc(n,0)); for(i=0;i<n;i++) { uart_putc(hex_to_asc(*(str+i),1)); uart_putc(hex_to_asc(*(str+i),0)); } uart_putc(hex_to_asc(temp,1)); uart_putc(hex_to_asc(temp,0));}//串口接收中斷voidserial_int(void)interrupt4{staticunsignedchari=0; staticunsignedcharnum=0; staticunsignedcharrx_hlf=0; unsignedcharrx_dat; if(RI){ rx_dat=SBUF; RI=0; switch(num) { case0:if(rx_dat==':')num=1;break; case1: if(rx_hlf){ rx_counter+=asc_to_hex(rx_dat); rx_hlf=0; num=2; } else{ rx_counter=asc_to_hex(rx_dat)<<4; rx_hlf=1; } break; case2: if(rx_hlf){ rx_buff[i]+=asc_to_hex(rx_dat); rx_hlf=0; if(++i>rx_counter) { num=0; i=0; rx_finish_flag=1; } } else{ rx_buff[i]=asc_to_hex(rx_dat)<<4; rx_hlf=1; } break; default:num=0; break; } }}voidrs232_port_init(void){ SCON=0x50; //串口工作在方式1,異步模式 PCON=0x00; //波特率翻倍 TMOD=0x20;//定時器1工作在方式2 TH1=0xfd; //波特率9600,晶振為11.0592MHz TL1=0xfd;//自動重裝在賦值 TR1=1;//啟動定時器,產生波特率 RI=0;//接收標志位清零 TI=0;//發(fā)送標志位清零 ES=1;//中斷允許 EA=1;//總中斷允許}voidtask_example(unsignedcharda){ P1=~da;}voiduart_putc(unsignedcharc){ SBUF=c; while(!TI); TI=0;}voidvoltage(void){ unsignedintj; j=2*value; tx_buff[0]=0; tx_buff[1]=6; tx_buff[2]=((unsignedchar*)&j)[0]; tx_buff[3]=((unsignedchar*)&j)[1]; send_answer(4,&tx_buff[0]);}voidTEM(void){ unsignedintj; j=2*value*8; tx_buff[0]=0; tx_buff[1]=5; tx_buff[2]=((unsignedchar*)&j)[0]; tx_buff[3]=((unsignedchar*)&j)[1]; send_answer(4,&tx_buff[0]);}voidtast(){unsignedchari,temp;unsignedintj=100,k=100;if(rx_finish_flag){ temp=rx_counter; for(i=0;i<=rx_counter;i++)temp+=rx_buff[i]; if((temp==0)&&(rx_buff[0]==LOCAL_ID)){ switch(rx_buff[1]) { case0:task_example(rx_buff[2]);break; case1:while(j--)ADC_show();break; case2:TEM();break; case3:voltage();break; case4: switch(rx_buff[2]) { case0:test1();break; case1:test2();break; case2:test3();break; case3:test4();break; case4:test5();break; case5:test6();break; case6:test7();break; case7:test8();break; case8:test9();break; } case5: switch(rx_buff[2]) { case0:LED_TEST(0);break; case1:LED_TEST(1);break; case2:LED_TEST(2);break; case3:LED_TEST(3);break; case4:LED_TEST(4);break; case5:LED_TEST(5);break; case6:LED_TEST(6);break; case7:LED_TEST(7);break; } case6: switch(rx_buff[2]) { case0: hourinc();break; case1: hourdec();break; case2: minuteinc();break; case3: minutedec();break; } default:break; } } rx_finish_flag=0; }}======================================================================================================================VB程序===========================================================DimFlagAsBooleanDimBZAsBooleanDimRx_NumAsByteDimRx_buff(250)AsByteDimjAsByteDimRx_HLAsBooleanDimOut_Buff(256)AsByte'LONGIDCMDDATA0DATA[LONG-3]PrivatesAsInteger'聲明秒PrivatemAsInteger'聲明分PrivatehAsInteger'聲明小時PrivatedAsInteger'聲明日PrivateSubImage1_Click()EndSubPrivateSubTimer2_Timer()s=s+1'每秒鐘給s變量加1Ifs>=60Thens=0'重新計算秒m=m+1'逢秒為60則分鐘加1Ifm>=60Thenm=0'重新計算分h=h+1'逢分鐘為60則小時加1Ifh>=24Thenh=0'重新計算小時d=d+1'逢24小時則天數加1EndIfEndIfEndIfEndSubPrivateSubCommand_SZZ_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=8CallSend_DataEndSubPrivateSubCommand1_Click()DimOutbyte()AsByteDimStrAsStringDimiAsByteCallComm_initial(Val(Text_commPORT.Text),Val(Text_commBAUD.Text))Str=Text_data.Text'取出數據字符串Str=Replace(Str,Space(1),Space(0))'去除空格Out_Buff(0)=Len(Str)/2+2Out_Buff(1)=Val("&H"+Text_ID.Text)Out_Buff(2)=Val("&H"+Text_CMD.Text)Fori=1ToOut_Buff(0)+1Out_Buff(i+2)=Val("&H"+Mid(Str,i*2-1,2))NextCallSend_Data'CALL發(fā)送函數EndSubPrivateSubCommand10_Click()EndSubPrivateSubCommand2_Click()Text2.Text=""EndSubPrivateSubCommand3_Click()UnloadMeEndSubPrivateSubCommand4_Click()DimStrAsStringDimDa_valAsIntegerStr=Text_DA_val.TextStr=Replace(Str,Space(1),Space(0))Da_val=Val(Str)*0.2046'1023/5000Out_Buff(0)=4'長Out_Buff(1)=2'IDOut_Buff(2)=1'CMDOut_Buff(3)=Int(Da_val/256)And&H3'DA_val_HOut_Buff(4)=Da_valMod256'DA_val_LCallSend_DataEndSubPrivateSubCommand5_Click()Out_Buff(0)=2'長Out_Buff(1)=2'IDOut_Buff(2)=2'CMDCallSend_DataEndSubPrivateSubCommand6_Click()Out_Buff(0)=2'長Out_Buff(1)=2'IDOut_Buff(2)=3'CMDCallSend_DataEndSubPrivateSubCommand7_Click()Out_Buff(0)=2'長Out_Buff(1)=2'IDOut_Buff(2)=1'CMDCallSend_DataEndSubPrivateSubCommand8_Click()'Comm1.PortOpen=FalseIfCommand8.Caption="打開"ThenCommand8.Caption="關閉"ElseCommand8.Caption="打開"EndIfIfComm1.PortOpen=FalseThenComm1.PortOpen=TrueElseComm1.PortOpen=FalseEndIfEndSubPrivateSubCommand9_Click()Comm1.PortOpen=TrueEndSubPrivateSubForm_Load()Flag=FalseRx_Num=0j=0Text_CMD.Text=GetValue("One","命令",App.Path&"\config.ini")Text_ID.Text=GetValue("One","ID",App.Path&"\config.ini")Text_data.Text=GetValue("One","數據",App.Path&"\config.ini")Text_commPORT.Text=GetValue("One","串口",App.Path&"\config.ini")Text_commBAUD.Text=GetValue("One","波特率",App.Path&"\config.ini")'form_main.Picture=LoadPicture("2.jpg")Text_time.Text=NowTimer3.Enabled=TrueTimer3.Interval=1000Timer2.Enabled=TrueTimer2.Interval=1000s=0m=0h=0d=0MsgBox"歡迎使用本軟件——莫離"EndSubPrivateFunctionComm_initial(PortAsByte,BondAsString)OnErrorGoToErrorOutIf(Comm1.PortOpen=True)ThenComm1.PortOpen=FalseEndIfComm1.CommPort=Port'設置串口1Comm1.Settings=Bond+",n,8,1"'波特率:9600奇校驗,8位數據,1位停止位Comm1.InputLen=1'一次讀取接收緩沖區(qū)的一個字符Comm1.InputMode=comInputModeBinary'設置位二進制格式Comm1.InBufferSize=1024'設置接收緩沖區(qū)為256字節(jié)Comm1.OutBufferSize=4096'設置發(fā)送緩沖區(qū)為256字節(jié)Comm1.InBufferCount=0'清空輸入緩沖區(qū)Comm1.OutBufferCount=0'清空輸出緩沖區(qū)Comm1.SThreshold=0'發(fā)送緩沖區(qū)空觸發(fā)發(fā)送事件Comm1.RThreshold=1'每X個字符到接收緩沖區(qū)引起觸發(fā)接收事件Comm1.PortOpen=True'打開串口1Comm1.InBufferCount=0'清空輸入緩沖區(qū)Comm_initial=TrueExitFunctionErrorOut:Comm_initial=FalseExitFunctionEndFunctionPrivateFunctionSend_Command(DaAsByte)DimOutbyte(0To1)AsByteOutbyte(0)=&HA5Outbyte(1)=DaComm1.Output=OutbyteEndFunctionPrivateSubForm_Unload(CancelAsInteger)'退出時關閉串口If(Comm1.PortOpen=True)ThenComm1.PortOpen=FalseEndIfCallSetValue("One","命令",Text_CMD.Text,App.Path&"\config.ini")CallSetValue("One","ID",Text_ID.Text,App.Path&"\config.ini")CallSetValue("One","數據",Text_data.Text,App.Path&"\config.ini")CallSetValue("One","串口",Text_commPORT.Text,App.Path&"\config.ini")CallSetValue("One","波特率",Text_commBAUD.Text,App.Path&"\config.ini")EndSubPrivateSubfzj_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=6'CMDOut_Buff(3)=2CallSend_DataEndSubPrivateSubfzji_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=6'CMDOut_Buff(3)=3CallSend_DataEndSubPrivateSubhourj_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=6'CMDOut_Buff(3)=0CallSend_DataEndSubPrivateSubhourji_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=6'CMDOut_Buff(3)=1CallSend_DataEndSubPrivateSubled1_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=5'CMDOut_Buff(3)=0CallSend_DataEndSubPrivateSubled2_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=5'CMDOut_Buff(3)=1CallSend_DataEndSubPrivateSubled3_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=5'CMDOut_Buff(3)=2CallSend_DataEndSubPrivateSubled4_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=5'CMDOut_Buff(3)=3CallSend_DataEndSubPrivateSubled5_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=5'CMDOut_Buff(3)=4CallSend_DataEndSubPrivateSubled6_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=5'CMDOut_Buff(3)=5CallSend_DataEndSubPrivateSubled7_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=5'CMDOut_Buff(3)=6CallSend_DataEndSubPrivateSubled8_Click()Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=5'CMDOut_Buff(3)=7CallSend_DataEndSubPrivateSubtest1_Click(IndexAsInteger)Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=0CallSend_DataEndSubPrivateSubtest2_Click(IndexAsInteger)Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=1CallSend_DataEndSubPrivateSubtest3_Click(IndexAsInteger)Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=2CallSend_DataEndSubPrivateSubtest4_Click(IndexAsInteger)Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=3CallSend_DataEndSubPrivateSubtest5_Click(IndexAsInteger)Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=4CallSend_DataEndSubPrivateSubtest6_Click(IndexAsInteger)Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=5CallSend_DataEndSubPrivateSubtest7_Click(IndexAsInteger)Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=6CallSend_DataEndSubPrivateSubtest8_Click(IndexAsInteger)Out_Buff(0)=3'長Out_Buff(1)=2'IDOut_Buff(2)=4'CMDOut_Buff(3)=7CallSend_DataEndSubPrivateSubText_commPORT_Change()CallComm_initial(Val(Text_commPORT.Text),Val(Text_commBAUD.Text))EndSubPrivateSubText_commBAUD_Change()CallComm_initial(Val(Text_commPORT.Text),Val(Text_commBAUD.Text))EndSubSubComm1_OnComm()DimInbyte()AsByteDimStr_buffAsStringDimTempAsByteSelectCaseComm1.CommEventCasecomEvReceiveIf(Flag=False)ThenText2.Text=""'首次清屏Flag=TrueEndIfDoWhile(Comm1.InBufferCount>0)Str_buff=""Inbyte=Comm1.InputStr_buff=Str_buff+Chr(Inbyte(0))SelectCaseRx_NumCase0'頭檢測If(Inbyte(0)=&H3A)ThenRx_Num=1Rx_HL=TrueIf(Text2.Text<>"")ThenText2.Text=Text2.Text+Chr(13)+Chr(10)Case1'數據長度獲取If(Rx_HL)ThenRx_buff(0)=Asc_Hex(Inbyte(0))Rx_HL=FalseElseRx_buff(0)=Rx_buff(0)*16+Asc_Hex(Inbyte(0))Rx_HL=Truej=1Rx_Num=2EndIfCase2'接受數據If(Rx_HL)ThenRx_buff(j)=Asc_Hex(Inbyte(0))Rx_HL=FalseElseRx_buff(j)=Rx_buff(j)*16+Asc_Hex(Inbyte(0))Rx_HL=TrueIf(j<=Rx_buff(0))Thenj=j+1ElseCallData_Check'數據處理Rx_Num=0EndIfEndIfEndSelectText2.Text=Text2.Text+Str_buffLoopEndSelectEndSubPrivateFunctionAsc_Hex(DaAsByte)AsByteIf(Da<&H3A)ThenAsc_Hex=Da-&H30ElseAsc_Hex=Da-&H37EndIfEndFunctionPrivateSubData_Check()DimCheckAsIntegerCheck=Rx_buff(0)Fora=1ToRx_buff(0)+1Check=Check+Rx_buff(a)NextaIf(CheckAnd&HFF)=0Then'校驗成功CallTemperature'顯示溫度CallVoltage'顯示電壓EndIfEndSubPrivateSubTemperature()'溫度顯示函數
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025江西建筑安全員知識題庫及答案
- 2025年河北省安全員知識題庫及答案
- 廣州珠江職業(yè)技術學院《電視節(jié)目編輯》2023-2024學年第一學期期末試卷
- 2025江西省建筑安全員C證考試(專職安全員)題庫附答案
- 廣州應用科技學院《人居環(huán)境設計》2023-2024學年第一學期期末試卷
- 2025湖南省建筑安全員C證考試(專職安全員)題庫及答案
- 施工合同條款修改版
- 2025江蘇省安全員B證考試題庫附答案
- 2025山東建筑安全員A證考試題庫
- 中醫(yī)養(yǎng)生之道(講座)
- 銅排設計技術規(guī)范
- 英國文學史及選讀復習要點總結
- 貴州省貴陽市花溪區(qū)2023-2024學年數學三年級第一學期期末聯考試題含答案
- 空氣能施工方案
- 中小學校園人車分流方案模板
- 常見藻類圖譜(史上最全版本)
- 廣東省惠州市博羅縣2022-2023學年六年級上學期期末數學試卷
- 硫酸裝置操作規(guī)程
- Python數據分析案例實戰(zhàn)PPT完整全套教學課件
- 2023年04月2023年外交學院招考聘用筆試參考題庫附答案解析
- 中國自身免疫性腦炎診治專家共識2023年版
評論
0/150
提交評論