C#實(shí)驗(yàn)關(guān)于線程實(shí)驗(yàn)報(bào)告_第1頁(yè)
C#實(shí)驗(yàn)關(guān)于線程實(shí)驗(yàn)報(bào)告_第2頁(yè)
C#實(shí)驗(yàn)關(guān)于線程實(shí)驗(yàn)報(bào)告_第3頁(yè)
C#實(shí)驗(yàn)關(guān)于線程實(shí)驗(yàn)報(bào)告_第4頁(yè)
C#實(shí)驗(yàn)關(guān)于線程實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 課 程 設(shè) 計(jì) 報(bào) 告 課程設(shè)計(jì)名稱: 嵌入式系統(tǒng)課程設(shè)計(jì) 學(xué) 院: 信息工程學(xué)院 姓 名: 班 級(jí): 13通信 學(xué) 號(hào): 成 績(jī): 指導(dǎo)教師: 開(kāi)課時(shí)間: 2016-2017 學(xué)年 一 學(xué)期目錄一、設(shè)計(jì)目的、內(nèi)容及要求11.1 設(shè)計(jì)目的11.2 設(shè)計(jì)內(nèi)容及安排11.3 考核方法與成績(jī)?cè)u(píng)定2二、設(shè)計(jì)原理及過(guò)程32.1設(shè)計(jì)原理3三、設(shè)計(jì)程序及結(jié)果53.1 程序具體內(nèi)容53.2設(shè)計(jì)結(jié)果12四、 心得與體會(huì)13參考文獻(xiàn)14一、設(shè)計(jì)目的、內(nèi)容及要求1.1 設(shè)計(jì)目的本課程是為通信工程專業(yè)本科生開(kāi)設(shè)的必修課,結(jié)合學(xué)生的專業(yè)方向的理論課程,充分發(fā)揮學(xué)生的主動(dòng)性,使學(xué)生掌握應(yīng)用MATLAB仿真平臺(tái)的GUI系

2、統(tǒng),鞏固理論課程內(nèi)容,規(guī)范文檔的建立,培養(yǎng)學(xué)生的創(chuàng)新創(chuàng)業(yè)能力,并能夠運(yùn)用其所學(xué)知識(shí)進(jìn)行綜合的設(shè)計(jì),鼓勵(lì)2人一小組。Embedded System的課程設(shè)計(jì)是對(duì)嵌入通信與控制系統(tǒng)仿真軟件、課程學(xué)習(xí)的綜合檢驗(yàn),配合理論課的教學(xué),讓學(xué)生親自參加設(shè)計(jì)、仿真、驗(yàn)證Embedded System系統(tǒng)(殘毒檢測(cè)系統(tǒng))的一般原理、Applications等方面的知識(shí)點(diǎn),體驗(yàn)創(chuàng)業(yè)型創(chuàng)新的快樂(lè)!1.2 設(shè)計(jì)內(nèi)容及安排1. 設(shè)計(jì)內(nèi)容本課程設(shè)計(jì)要完成的任務(wù)是其中的一個(gè)子任務(wù),主要目的是利用MATLAB的放音功能直接通過(guò)耳機(jī)線控制4通道DTMF控制器來(lái)控制光閥與水閥,同時(shí)利用MATLAB的錄音功能直接通過(guò)麥克風(fēng)線錄制高

3、錳酸鉀發(fā)光光電轉(zhuǎn)換后的聲音,最后對(duì)聲音進(jìn)行分析,提取擴(kuò)散指紋特征,從而鑒別不同種類的除草劑,殺蟲劑以及防霉劑。建議一位同學(xué)負(fù)責(zé)上述后臺(tái)處理代碼的編寫,另一位同學(xué)負(fù)責(zé)前臺(tái)的圖形界面的編寫工作,最后組裝成能夠用于控制嵌入式殘毒檢測(cè)系統(tǒng)的小軟件包。附加任務(wù): 如果有多余的時(shí)間,再設(shè)計(jì)用手機(jī)遠(yuǎn)程控制光閥與水閥的升級(jí)版系統(tǒng),或者用手機(jī)直接采集錄音,概念性設(shè)計(jì)也行,來(lái)不及的話不一定需要提供代碼。樣本代碼:clearclcrec_obj=audiorecorder;%rec_obj=audiorecorder(8000,8,1);recordblocking(rec_obj,6);% change sec%

4、play(rec_obj);data_rec=getaudiodata(rec_obj);audiowrite('161122.wav',data_rec,8000);2. 課程設(shè)計(jì)的工作進(jìn)度(1)查閱殘毒檢測(cè)相關(guān)資料,并進(jìn)行初步獨(dú)立前后臺(tái)程序設(shè)計(jì)。(2)模塊連接,程序注釋,程序調(diào)試, 文檔說(shuō)明及保存。(3)按照規(guī)范要求撰寫課程設(shè)計(jì)報(bào)告的電子稿。(4)完善課程設(shè)計(jì)的電子稿,(5)結(jié)果演示答辯。Email: steedhuang 文檔材料(以姓名和學(xué)號(hào)的最后兩位命名,里面包含所有程序附件、課程設(shè)計(jì)的電子稿);上交打印稿。1.3 考核方法與成績(jī)?cè)u(píng)定總成績(jī)由平時(shí)成績(jī)(考勤與課堂表現(xiàn))

5、、程序設(shè)計(jì)演示成績(jī)和報(bào)告成績(jī)?nèi)糠纸M成,各部分比例為20%,50%,30%.(1)平時(shí)考勤成績(jī):無(wú)故曠課,平時(shí)成績(jī)減半。(2)設(shè)計(jì)演示成績(jī):按照實(shí)際的設(shè)計(jì)過(guò)程及最終的實(shí)現(xiàn)結(jié)果給出相應(yīng)的成績(jī)。(3)設(shè)計(jì)報(bào)告成績(jī):按照提交報(bào)告的質(zhì)量與完整性給出相應(yīng)的成績(jī)。 (4) 提前一天或完成附加任務(wù),加10分,推遲一天交報(bào)告扣10分。備注:每人提交一份課程設(shè)計(jì)報(bào)告, 注明同組成員以及任務(wù)分工情況匯報(bào)(打印稿和電子稿各一份)課程設(shè)計(jì)報(bào)告按照上學(xué)期模板撰寫,要求內(nèi)容詳細(xì)、準(zhǔn)確、完整。二、設(shè)計(jì)原理及過(guò)程2.1設(shè)計(jì)原理隨著社會(huì)的快速發(fā)展,社會(huì)整體經(jīng)濟(jì)也在快速發(fā)展,人們的生活水平也不斷提高,越來(lái)越關(guān)注食品安全問(wèn)題,特別

6、是農(nóng)藥殘留問(wèn)題,即使是少量(1ppm到1ppb)的農(nóng)藥殘留也將會(huì)引起人類死亡或終生殘疾。相對(duì)于國(guó)外,我國(guó)的檢測(cè)技術(shù)與檢測(cè)標(biāo)準(zhǔn)都比較落后。本系統(tǒng)采用先進(jìn)的光電快速檢測(cè)技術(shù),在檢測(cè)速度和檢測(cè)穩(wěn)定性上都有一定的優(yōu)勢(shì)。本課題項(xiàng)目研究,集合了光電轉(zhuǎn)化技術(shù)、化學(xué)發(fā)光技術(shù)、光電快速檢測(cè)技術(shù)、二維碼讀寫技術(shù)、嵌入式技術(shù)及數(shù)據(jù)融合技術(shù)等多學(xué)科的最新成果,完成農(nóng)產(chǎn)品從生產(chǎn)、中轉(zhuǎn)站及消費(fèi)者菜籃子前的全程監(jiān)控。目前存在的技術(shù):儀器檢測(cè)法:根據(jù)農(nóng)藥理化性質(zhì),利用儀器進(jìn)行精確分析。此類方法不僅可以定性測(cè)定農(nóng)藥品種,而且可以精確定量檢測(cè)農(nóng)藥殘留量,但需對(duì)試樣進(jìn)行前處理,費(fèi)時(shí)費(fèi)試劑,同時(shí)需要大型昂貴儀器,故只局限于實(shí)驗(yàn)性使用

7、。生物測(cè)定技術(shù):利用生物的生理生化反應(yīng)來(lái)判斷農(nóng)藥殘留及其污染情況。這種生測(cè)技術(shù)無(wú)需對(duì)樣品進(jìn)行前處理,但對(duì)供試生物要求高,測(cè)定結(jié)果不能確定農(nóng)藥品種,生物培養(yǎng)時(shí)間長(zhǎng),并且可能出現(xiàn)假陽(yáng)性或假陰性??焖贆z測(cè)法:目前應(yīng)用最多的速測(cè)法酶法,根據(jù)有機(jī)磷和氨基甲酸酯類殺蟲劑的靶檣酶乙酰膽堿酯酶(AChE)受抑制程度,檢測(cè)該殺蟲劑的殘留。酶法具有快速方便、前處理簡(jiǎn)單、無(wú)需儀器等優(yōu)點(diǎn),但只能測(cè)定有機(jī)磷和氨基早酸酯類殺蟲劑,基分類敏度與所使用的酶、顯色反應(yīng)時(shí)間和溫度密切相關(guān)。光電檢測(cè)法:利用農(nóng)藥本身或者發(fā)光體的化學(xué)發(fā)光原理,通過(guò)光電轉(zhuǎn)化技術(shù),數(shù)據(jù)采集及處理技術(shù),數(shù)據(jù)融合技術(shù)實(shí)現(xiàn)農(nóng)藥濃度光強(qiáng)電壓聲音之間的相互聯(lián)系,進(jìn)

8、而測(cè)量出農(nóng)藥的濃度以及反應(yīng)擴(kuò)散過(guò)程中形成的聲音指紋。本設(shè)計(jì)的技術(shù)指標(biāo)有: 殘毒檢測(cè)系統(tǒng):檢測(cè)速度每批次5-8分鐘,檢出限可達(dá)1*10-8g/ml。 數(shù)據(jù)追蹤功能:農(nóng)家、中轉(zhuǎn)站、消費(fèi)者通過(guò)二維碼的寫功能以及無(wú)線網(wǎng)技術(shù)傳遞檢測(cè)儀檢測(cè)的信息,農(nóng)家、中轉(zhuǎn)站、消費(fèi)者還可以通過(guò)二維碼的讀功能以及無(wú)線網(wǎng)技術(shù)了解農(nóng)產(chǎn)品從生產(chǎn)地、中轉(zhuǎn)站以及菜籃子前的全部信息。 儀器的微型化:檢測(cè)儀便于攜帶。本設(shè)計(jì)的主要功能有: 利用化學(xué)發(fā)光、光電倍增、嵌入式等技術(shù)的方案,實(shí)現(xiàn)便攜式檢測(cè)、速度快、靈敏度高。利用二維碼讀寫技術(shù)實(shí)現(xiàn)“電子合格章”的全稱追蹤,保證農(nóng)民和消費(fèi)者的權(quán)益。系統(tǒng)采用重復(fù)試驗(yàn)的數(shù)據(jù)分組技術(shù)和適合于單傳感器重復(fù)采

9、樣的數(shù)據(jù)融合技術(shù),使得精確度更高。實(shí)現(xiàn)對(duì)有機(jī)磷、有機(jī)氯農(nóng)藥的快速檢測(cè)。農(nóng)藥殘留檢測(cè)儀主要由超聲波震蕩器、紫外燈照射器、蠕動(dòng)泵、電子閥、光電倍增管組成。各組件功能如下:超聲波振蕩器可以發(fā)出高頻聲波產(chǎn)生振動(dòng),具有分解、乳化、促溶等作用,可以加速化學(xué)反應(yīng),縮短前期試劑準(zhǔn)備時(shí)間。在本實(shí)驗(yàn)中促融2,4-D試劑標(biāo)準(zhǔn)溶液或高錳酸鉀標(biāo)準(zhǔn)溶液。紫外燈可以產(chǎn)生紫外光,紫外光照射化學(xué)物質(zhì),物質(zhì)的分子吸收光子后產(chǎn)生光化學(xué)反應(yīng)。本實(shí)驗(yàn)中紫外光可以降解2,4-D,使其生成多酚類降解物:氯氫醌Chlorohydroquinone ( CHQ) ,4-氯鄰苯二酚4-Chlorocatechol如下等等。蠕動(dòng)泵由驅(qū)動(dòng)器、泵頭和

10、軟管三部分組成具有自動(dòng)化吸入液體的功能。在硬件系統(tǒng)中主要負(fù)責(zé)將2,4-二氯苯氧乙酸試劑吸入反應(yīng)準(zhǔn)備管中,準(zhǔn)備等待反應(yīng)。電子閥是由電子信號(hào)控制的自動(dòng)化閥門無(wú)需人工操作,可有效避免誤差的產(chǎn)生。在硬件系統(tǒng)中主要負(fù)責(zé)控制已經(jīng)被吸入反應(yīng)準(zhǔn)備管中的2,4-二氯苯氧基乙酸農(nóng)藥的自動(dòng)化導(dǎo)入。光電倍增管主要負(fù)責(zé)對(duì)光化學(xué)反應(yīng)釋放出的光電子數(shù)進(jìn)行計(jì)數(shù)從而實(shí)現(xiàn)了光電轉(zhuǎn)化,以便后續(xù)的放大,聲卡負(fù)責(zé)把放大后的電信號(hào)進(jìn)一步放大,同時(shí)把合成的DTMF信號(hào)放大到合適的音量送給電子閥控制器,音量太大會(huì)干擾光電轉(zhuǎn)換電路,音量太小啟動(dòng)不了電子閥門。三、設(shè)計(jì)程序及結(jié)果3.1 程序具體內(nèi)容function varargout = zy(

11、varargin)% ZY MATLAB code for zy.fig% ZY, by itself, creates a new ZY or raises the existing% singleton*.% H = ZY returns the handle to a new ZY or the handle to% the existing singleton*.% ZY('CALLBACK',hObject,eventData,handles,.) calls the local% function named CALLBACK in ZY.M with the gi

12、ven input arguments.% ZY('Property','Value',.) creates a new ZY or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before zy_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop.

13、 All inputs are passed to zy_OpeningFcn via varargin.% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help zy% Last Modified by GUIDE v2.5 28-Nov-201

14、6 21:38:45% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, . 'gui_Singleton', gui_Singleton, . 'gui_OpeningFcn', zy_OpeningFcn, . 'gui_OutputFcn', zy_OutputFcn, . 'gui_LayoutFcn', , . 'gui_Callback',

15、);if nargin && ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);endif nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);end% End initialization code - DO NOT EDIT% - Executes just before zy is made visible.function zy_OpeningF

16、cn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to zy (see VARARGIN)% C

17、hoose default command line output for zyhandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes zy wait for user response (see UIRESUME)% uiwait(handles.figure1);% - Outputs from this function are returned to the command line.function varargout = zy_OutputFcn(hObj

18、ect, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structureva

19、rargout1 = handles.output;% - Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)global recObj ;%定義一個(gè)全局變量存放語(yǔ)音數(shù)據(jù)recObj =audiorecorder (11025, 16, 2);%頻率11025Hz,2通道,16是采樣點(diǎn)的比特?cái)?shù)recObj.record;%調(diào)用record函數(shù),開(kāi)始錄音global T

20、1;%定義一個(gè)全局變量,T1是開(kāi)始到暫停的時(shí)間T1=0;global T2;%定義一個(gè)全局變量,T2是繼續(xù)到暫停的時(shí)間T2=0;global T3;%定義一個(gè)全局變量,T3是繼續(xù)到結(jié)束的時(shí)間T3=0;global T;%定義一個(gè)全局變量,T是總的錄音時(shí)間T=0;global flag;%定義一個(gè)標(biāo)志,用來(lái)判斷是開(kāi)始,還是繼續(xù),還是暫停flag=3;global start;%定義一個(gè)全局變量,存放開(kāi)始的時(shí)間點(diǎn) global startpause;%定義一個(gè)全局變量,存放暫停的時(shí)間點(diǎn)startpause=0; global startcon;%定義一個(gè)全局變量,存放繼續(xù)的時(shí)間點(diǎn) startcon

21、=0; global startend;%定義一個(gè)全局變量,存放結(jié)束的時(shí)間點(diǎn) startend=0;disp('開(kāi)始錄音');start=clock;%將系統(tǒng)時(shí)間放入start變量% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)function pushbutton1_ButtonDownFcn(hObject, eventdata, handles);% - Executes

22、 on button press in pushbutton6.function pushbutton6_Callback(hObject, eventdata, handles)% hObject handle to pushbutton6 (see GCBO)global recObj ;recObj.resume;%錄音繼續(xù)global flag;flag=1;%置標(biāo)志位為1disp('繼續(xù)錄音'); global startcon; startcon=clock;%將系統(tǒng)時(shí)間放入startcon變量% eventdata reserved - to be defined

23、 in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% - Executes on button press in pushbutton7.function pushbutton7_Callback(hObject, eventdata, handles)% hObject handle to pushbutton7 (see GCBO)global recObj ;recObj.pause;%錄音暫停disp('暫停錄音');%a=elapsed;g

24、lobal startcon;global start;global startpause;startpause=clock;%將系統(tǒng)時(shí)間放入startpause變量global T1;global T2;global flag;flag=0;%令標(biāo)志位為0T1=(startpause(3)-start(3)*24*60*60+(startpause(4)-start(4)*60*60+(startpause(5)-start(5)*60+(startpause(6)-start(6); % if startcon=0T2=T2+(startpause(3)-startcon(3)*24*60

25、*60+(startpause(4)-startcon(4)*60*60+(startpause(5)-startcon(5)*60+(startpause(6)-startcon(6); end %elapsed = toc(tstart1) %elapsed =elapsed+ toc(tstart1)%end% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% - Executes on

26、button press in pushbutton8.function pushbutton8_Callback(hObject, eventdata, handles)% hObject handle to pushbutton8 (see GCBO)global recObj ;recObj.stop;disp('停止錄音');global startcon;global start;global startpause; global startend; global T1; global T2; global T3; global T; global flag; sta

27、rtend=clock;%將系統(tǒng)時(shí)間放入startend變量 if startpause=0 T=(startend(3)-start(3)*24*60*60+(startend(4)-start(4)*60*60+(startend(5)-start(5)*60+(startend(6)-start(6); elseif flag=1T3=(startend(3)-startcon(3)*24*60*60+(startend(4)-startcon(4)*60*60+(startend(5)-startcon(5)*60+(startend(6)-startcon(6); T=T1+T2+T

28、3; else T=T1+T2; end% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)function pushbutton9_Callback(hObject, eventdata, handles); global startend; global T1; global T2; global recObj ; if startend=0disp('播放錄音片段');p=p

29、lay(recObj);pause(T1+T2); else disp('錄音已經(jīng)結(jié)束,請(qǐng)點(diǎn)擊播放完整錄音按鈕。'); end% - Executes on button press in pushbutton10.function pushbutton10_Callback(hObject, eventdata, handles)% hObject handle to pushbutton10 (see GCBO)global recObj ;global T;global flag; global startend; if startend=0 disp('錄音還沒(méi)

30、結(jié)束,請(qǐng)點(diǎn)擊播放錄音片段按鈕。'); elsedisp('播放錄音');flag;p=play(recObj);pause(T); end%wavplay(wavread('zy.wav'),11025);% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% - Executes on button press in pushbutton11.functi

31、on pushbutton11_Callback(hObject, eventdata, handles)% hObject handle to pushbutton11 (see GCBO)global recObj ;global zyRecording;zyRecording = getaudiodata(recObj);plot(zyRecording);disp('繪制錄音數(shù)據(jù)波形');% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% - Executes on button press in pushbutton12.function pushbutton12_Callback(hObject, eventdata, handles)% hObject handle to pushbutton12 (see GCBO)global recObj ;global zyRecording;audiowrite('zy.wav',zyRecording,11025);disp('寫出錄音文件');% eve

溫馨提示

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

評(píng)論

0/150

提交評(píng)論