集成加速度傳感器的軟件設(shè)計(jì)[共38頁(yè)]
《集成加速度傳感器的軟件設(shè)計(jì)[共38頁(yè)]》由會(huì)員分享,可在線閱讀,更多相關(guān)《集成加速度傳感器的軟件設(shè)計(jì)[共38頁(yè)](37頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、成都理工大學(xué)學(xué)生撰文專用紙 集成加速度傳感器的軟件設(shè)計(jì) 摘要 在加速度測(cè)試系統(tǒng)傳統(tǒng)結(jié)構(gòu)中,從傳感器、溫度偏移糾正電路、放大電路到數(shù)據(jù)采集各設(shè)備往往都是孤立的,不便于攜帶并受到測(cè)量空間的限制。本文介紹了一種利用單片機(jī)集成系統(tǒng)進(jìn)行數(shù)據(jù)采集與傳輸?shù)姆桨福^好的解決了系統(tǒng)集成化問(wèn)題。 方案采用通用性較強(qiáng),價(jià)格便宜的80C51單片機(jī);人機(jī)接口采用8297;A/D轉(zhuǎn)換器采用ADC0809;片外存儲(chǔ)器選用兩片6264,容量擴(kuò)至16k8;數(shù)據(jù)傳輸采用USB,用CH375芯片作為單片機(jī)串行口與USB的連接芯片。數(shù)據(jù)采樣頻率設(shè)為六種可選,最小至0.2ms,最大至625ms,可以適應(yīng)不同的應(yīng)用場(chǎng)合。
2、 單片機(jī)系統(tǒng)在實(shí)際工業(yè)系統(tǒng)中可能會(huì)遇到各種干擾和自身的隨機(jī)性誤差,目前的抗干擾方法主要有硬件看門狗技術(shù)和軟件陷進(jìn)技術(shù)等,本方案將兩種方法結(jié)合起來(lái),進(jìn)一步提高了系統(tǒng)的穩(wěn)定性。 關(guān)鍵詞:單片機(jī);數(shù)據(jù)采集;硬件看門狗;中斷系統(tǒng);串行通信 The software design of the integrated accelerometer Abstract In traditional acceleration test system, components form accelerometer, temperature compensation,
3、electric enlarge circuit to data acquisition unit are all stand alone, inconvenience in take and being subjected to the measuring space. This text introduced a method that using integration system of single chip microcomputer for data acquisition and deliver, resolving the integration of the system.
4、 This project adopts in general used, low-cost 80C51 system;Persons machine connects to adopt 8297;The A/D conversion machine adoption ADC0809; RAM use two slices of 6264 , the capacity expands to the 16 k 8;Data_deliver uses the USB, using the CH375 chips as conjunct chip between the USB and the
5、serial interface. The date- acquisition frequency sets for six kinds of eligibility, the minimum to 0.2 ms, the biggest to 625 ms, adapting different applied situation Single chip microcomputer system may fall across some impacting factors and self random error, the current anti- impacting methods
6、 mainly have the hardware watchdog technique and software trap method etc. This project put together two kinds of methods, further raising the stability of the system Keyword:single chip microcomputer;data-acquisition; the hardware watchdog;outage system;serial communication 目 錄 第一章 引
7、言...........................................1 1.1 當(dāng)前加速度測(cè)試系統(tǒng)的使用現(xiàn)狀及存在缺陷...........1 1.2 加速度測(cè)試系統(tǒng)傳統(tǒng)構(gòu)造...........................1 1.3 論文的預(yù)期目標(biāo)...................................3 第二章 系統(tǒng)的硬件組成.................................3 2.1 系統(tǒng)的硬件總體設(shè)計(jì)...............................3 2.2 A/D轉(zhuǎn)換模塊 ...............
8、......................5 2.2.1 A/D轉(zhuǎn)換模塊的設(shè)計(jì)..........................5 2.2.2 數(shù)據(jù)存儲(chǔ)器的擴(kuò)展...........................7 2.3 鍵盤顯示接口的設(shè)計(jì)...............................7 2.3.1 8279的介紹.................................7 2.3.2 接口的設(shè)計(jì)................................10 2.4 數(shù)據(jù)傳輸模塊.................................
9、...11 2.4.1 CH375芯片簡(jiǎn)介.............................11 2.4.2 數(shù)據(jù)傳輸模塊設(shè)計(jì)..........................14 2.5 看門狗復(fù)位電路..................................14 第三章 系統(tǒng)的軟件實(shí)現(xiàn)...............................15 3.1 軟件的總體結(jié)構(gòu)..................................15 3.2 數(shù)據(jù)采集子程序..................................17 3.2.1 采
10、樣頻率..................................17 3.2.2 數(shù)據(jù)采集..................................18 3.3 指令采集子程序 .................................19 3.3.1 8279的初始化..............................19 3.3.2 指令采集程序的設(shè)計(jì)........................21 3.4 數(shù)據(jù)傳輸子程序..................................21 第四章 系統(tǒng)抗干擾設(shè)計(jì)...........
11、.......................22 4.1 干擾源及其傳播途徑..............................23 4.2 系統(tǒng)抗干擾措施..................................24 第五章 結(jié)論............................................25 致 謝................................................26 參考資料................................................27 附 件....
12、............................ 1.引言 1.1當(dāng)前加速度測(cè)試系統(tǒng)的使用現(xiàn)狀及存在缺陷 機(jī)械在運(yùn)動(dòng)時(shí),由于旋轉(zhuǎn)件的不平衡、負(fù)載的不均勻、結(jié)構(gòu)剛度的各向異性、間隙、潤(rùn)滑不良、支撐松動(dòng)等因素,總是伴隨著各種振動(dòng)。 機(jī)械振動(dòng)在大多數(shù)情況下是有害的,振動(dòng)往往會(huì)降低機(jī)器性能,破壞其正常工作,縮短使用壽命,甚至導(dǎo)致事故。機(jī)械振動(dòng)還伴隨著同頻率的噪聲,惡化環(huán)境,危害健康。另一方面,振動(dòng)也被利用來(lái)完成有益的工作,如運(yùn)輸、夯實(shí)、清洗、粉碎、脫水等。這時(shí)必須正確選擇振動(dòng)參數(shù),充分發(fā)揮振動(dòng)機(jī)械的性能。 加速度傳感器是目前應(yīng)用廣泛的測(cè)量振動(dòng)與沖擊的裝置。在航天、航空、常規(guī)武器、船舶
13、、交通運(yùn)輸、冶金、機(jī)械制造、化工、輕工、生物醫(yī)學(xué)工程、自動(dòng)檢測(cè)與計(jì)量等技術(shù)領(lǐng)域中,已經(jīng)越來(lái)越廣泛的應(yīng)用到傳感器,而其中不乏加速度傳感器的身影。 從加速度傳感器采集到數(shù)據(jù)后,通過(guò)溫度偏移糾正電路、電荷放大電路再到數(shù)據(jù)采集就組成了加速度測(cè)試系統(tǒng)。在傳統(tǒng)的系統(tǒng)結(jié)構(gòu)中,這些設(shè)備往往都是孤立的,不便于攜帶,同時(shí)在測(cè)量空間狹小時(shí)也很不方便。 1.2加速度測(cè)試系統(tǒng)傳統(tǒng)構(gòu)造 現(xiàn)有測(cè)試系統(tǒng)的各個(gè)組成部分常常以信息流的過(guò)程來(lái)劃分。一般可以分為:信息的獲得,信息的轉(zhuǎn)換,信息的顯示、信息的處理。作為一個(gè)完整的非電量電測(cè)系統(tǒng),也包括了信息的獲得、轉(zhuǎn)換、顯示和處理等幾個(gè)部分。因?yàn)樗紫纫@得被測(cè)量的信息,把它變換成
14、電量,然后通過(guò)信息的轉(zhuǎn)換,把獲得的信息變換、放大,再用指示儀或記錄儀將信息顯示出來(lái),有的還需要把信息加以處理。因此非電量電測(cè)系統(tǒng),具體來(lái)說(shuō),一般包括傳感器(信息的獲得)、測(cè)量電路 (信息的轉(zhuǎn)換)、放大器、指示器、記錄儀(信息的顯示)等幾部分有時(shí)還有數(shù)據(jù)處理儀器(信息的處理)。它們間的關(guān)系可用圖1.1的框圖來(lái)表示。 被測(cè)量 傳感器 測(cè)量電路 指示儀器 記錄儀器 數(shù)據(jù)處理儀器 圖1.1測(cè)試系統(tǒng)的組成 其中傳感器是一個(gè)把被測(cè)的非電物理變換成電量的裝置,因此是一種獲得信息的手段,它在非電量電測(cè)系統(tǒng)中占有重要的位置。它獲得信息的正確與否,直接影響到整個(gè)測(cè)量系統(tǒng)的測(cè)量效果。測(cè)量電路的作
15、用是把傳感器的輸出變量變成易于處理的電壓或電流信號(hào),使信號(hào)能在指示儀上顯示或在記錄儀中記錄。測(cè)量電路的種類由傳感器的類型而定。壓電加速度傳感器常用的測(cè)量電路是電荷放大器。 常用的壓電加速度傳感器的動(dòng)態(tài)測(cè)量系統(tǒng)如圖1.2所示: 被測(cè)非電量 壓電加速度傳感器 補(bǔ)償電路 記錄器 電荷放大器 數(shù)據(jù)處理器 圖1.2壓電加速度傳感器動(dòng)態(tài)測(cè)量系統(tǒng) 1.3論文的預(yù)期目標(biāo) 針對(duì)目前加速度測(cè)試系統(tǒng)存在的缺陷,開(kāi)發(fā)出一種集成加速度測(cè)試系統(tǒng)。論文的預(yù)期目標(biāo)為: 1.設(shè)計(jì)系統(tǒng)的硬件結(jié)構(gòu)(不包括A/D轉(zhuǎn)換器前端裝置) 在硬件方面,要對(duì)集成加速度傳感器硬件總體進(jìn)行設(shè)計(jì),并對(duì)數(shù)據(jù)采集系統(tǒng)的硬件電路
16、進(jìn)行設(shè)計(jì)。系統(tǒng)為一個(gè)以 80C51 單片機(jī)為核心組成的數(shù)據(jù)采集系統(tǒng),具有人機(jī)對(duì)話功能,可選擇采集頻率、通道等。系統(tǒng)工作時(shí),首先初始化各功能寄存器及8079等外圍芯片,而后開(kāi)始采集,模擬信號(hào)經(jīng)過(guò)ADC0809進(jìn)行 A/D 轉(zhuǎn)換變?yōu)閿?shù)字信號(hào)送入單片機(jī),然后再送入計(jì)算機(jī)進(jìn)行處理。 2.設(shè)計(jì)系統(tǒng)軟件 在軟件方面,按程序結(jié)構(gòu)可分為以下兩個(gè)部分:(1)主程序,使硬件接口和監(jiān)控程序的各工作單元置成初始狀態(tài)。(2)中斷服務(wù)子程序:包括接受鍵盤指令子程序、數(shù)據(jù)采集子程序、數(shù)據(jù)傳輸子程序等。 3.系統(tǒng)的抗干擾設(shè)計(jì) 在工業(yè)應(yīng)用環(huán)境下,往往存在著系統(tǒng)內(nèi)在和外界環(huán)境的各種干擾。在分析或設(shè)計(jì)數(shù)據(jù)采集系統(tǒng)時(shí),必須考
17、慮到可能存在的干擾對(duì)電路的影響。所以把抗干擾問(wèn)題作為系統(tǒng)設(shè)計(jì)中一個(gè)至關(guān)重要的內(nèi)容,貫徹在整個(gè)設(shè)計(jì)工作中,從硬件、軟件上采取相應(yīng)的措施以增強(qiáng)其抗干擾能力。 2.系統(tǒng)的硬件組成 2.1 系統(tǒng)的硬件總體設(shè)計(jì) 系統(tǒng)的硬件分為兩大部分:傳感器電路部分和微機(jī)主控板部分。系統(tǒng)硬件結(jié)構(gòu)框圖如圖2.1所示: A/D轉(zhuǎn)換器ADC0809 80C51單片機(jī) USB接口芯片CH375 硬件看門狗電路 USB接口 被測(cè)量 加速度傳感器 電荷放大電路 單片機(jī)主控板 傳感器電路部分 兩片6264數(shù)據(jù)存儲(chǔ)器 鍵盤顯示器接口8279 圖2.1 系統(tǒng)硬件結(jié)構(gòu)示意圖 系統(tǒng)工作原理:首先將傳感
18、器置入待測(cè)設(shè)備中,按下復(fù)位鍵迫使系統(tǒng)復(fù)位,回到程序開(kāi)始處。傳感器將采集到的數(shù)據(jù)通過(guò)溫度補(bǔ)償電路、電荷放大電路、A/D轉(zhuǎn)換器,在預(yù)定的采集頻率下將選定通道的數(shù)據(jù)傳到單片機(jī)并進(jìn)行存儲(chǔ)。然后再將數(shù)據(jù)通過(guò)USB接口芯片CH375傳到計(jì)算機(jī)系統(tǒng)進(jìn)行分析和處理。 由于數(shù)據(jù)的采集和傳輸是分段進(jìn)行的,因此第一次的采集頻率可能不能滿足要求(信號(hào)采集過(guò)疏,不能反映信號(hào)的實(shí)際情況;過(guò)密,則容易造成存儲(chǔ)空間的浪費(fèi))。為此,可以進(jìn)行下一輪數(shù)據(jù)采集,此時(shí)可根據(jù)前一輪的情況進(jìn)行調(diào)整,即在系統(tǒng)復(fù)位、開(kāi)始(顯示字母P)后按下所選頻道開(kāi)關(guān)。后續(xù)工作同上。 單片機(jī)主控板按功能劃分,可以分為以下幾個(gè)功能模塊: 1 A/D轉(zhuǎn)換模
19、塊 由A/D轉(zhuǎn)換器和80C51單片機(jī)構(gòu)成。系統(tǒng)采用ADC0809作為A/D轉(zhuǎn)換器,將從電荷放大器傳來(lái)的模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),再傳送給80C51。其中,ADC的8位通道用到3位,采樣頻率由軟件設(shè)定。 2 數(shù)據(jù)傳輸模塊 系統(tǒng)選用通用性較強(qiáng)的USB接口傳輸。系統(tǒng)選用CH375作為USB接口芯片。CH375與單片機(jī)之間采用串行通信方式,當(dāng)數(shù)據(jù)采集結(jié)束后就可以將數(shù)據(jù)用USB接口傳到計(jì)算機(jī)了。 3 鍵盤顯示接口模塊 硬件中設(shè)計(jì)了28鍵盤,4個(gè)LED顯示器,通過(guò)8279與80C51相連。通過(guò)鍵盤設(shè)定數(shù)據(jù)采集的通道、頻率,并在必要的時(shí)候強(qiáng)制復(fù)位。顯示器用于顯示采樣過(guò)程中的相關(guān)參數(shù)。 4
20、看門狗復(fù)位電路 系統(tǒng)采用兩片CD4040 十二位二進(jìn)制串行計(jì)數(shù)器構(gòu)成的“看門狗”電路,有效避免了系統(tǒng)運(yùn)行過(guò)程中程序的跑飛或者由于外界干擾所造成的死機(jī)現(xiàn)象。 2.2 A/D轉(zhuǎn)換模塊 2.2.1 A/D轉(zhuǎn)換模塊的設(shè)計(jì) 此模塊用于將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。采用8位A/ D轉(zhuǎn)換器ADC0809 實(shí)現(xiàn)模/ 數(shù)轉(zhuǎn)換。ADC0809 是8 路8 位逐次逼近式A/ D 轉(zhuǎn)換器,它能分時(shí)地對(duì)8路模擬量信號(hào)進(jìn)行A/ D轉(zhuǎn)換,結(jié)果為8位二進(jìn)制數(shù)據(jù), 其轉(zhuǎn)換速度約為100μs, 分辨率為19mV。ADC0809 是CMOS集成電路,可與單片機(jī)的數(shù)據(jù)總線直接相連,而且有8 路模擬開(kāi)關(guān),可以直接連接8個(gè)模擬量,實(shí)
21、現(xiàn)多路轉(zhuǎn)換功能(方案只用到3個(gè)通道)。并且它與單片機(jī)的接口簡(jiǎn)單,使用方便。ADC0809與80C51 單片機(jī)的連接如圖2.2所示,分別為: (1) ADC0809 的時(shí)鐘CL K由80C51 的地址鎖存端AL E信號(hào)經(jīng)過(guò)二分頻后產(chǎn)生。 (2) ADC0809 的數(shù)據(jù)線D0~D7 與單片機(jī)的數(shù)據(jù)總線直接相連。 (3) ADC0809 的地址選擇端ADDA、ADDB、ADDC 與80C51 的數(shù)據(jù)總線AD0 、AD1 、AD2 直接相連。 (4) ADC0809 的A/ D 轉(zhuǎn)換結(jié)束信號(hào)EOC 接80C51的接口。 (5) ADC0809 地址鎖存信號(hào)和起動(dòng)信號(hào)START 接在一起,并經(jīng)
22、過(guò)反相器與80C51的寫(xiě)信號(hào)相連,80C51讀信號(hào)端經(jīng)反相器與0809 的OE 端相連,完成輸出允許控制,讀寫(xiě)控制均由譯碼器的控制。 對(duì)A/ D轉(zhuǎn)換結(jié)果的讀出采用中斷方式,即EOC經(jīng)反相器接至80C51的接口,每次通過(guò)寫(xiě)信號(hào)起動(dòng)A/ D轉(zhuǎn)換后,EOC 呈高電平,表明A/ D轉(zhuǎn)換結(jié)束,于是啟動(dòng)中斷1將數(shù)據(jù)讀入80C51 的RAM區(qū) 8 3 2 74LS138 Y2 ALE P0 80C51 P2.5~2.7 CLK A D0 B D7 C ADC0809 EOC VR(+) ST VR(-) ALE OE
23、P0.0 P0.1 P0.2 +5V GND IN0 IN7 ≥1 ≥1 圖2.2 A/D轉(zhuǎn)換模塊與80C51的接口電路 2.2.2 數(shù)據(jù)存儲(chǔ)器的擴(kuò)展 由于80C51單片機(jī)系統(tǒng)只有80B的數(shù)據(jù)緩沖器,需要擴(kuò)展片外存儲(chǔ)器。根據(jù)一般經(jīng)驗(yàn),采用2片6264芯片擴(kuò)展數(shù)據(jù)存儲(chǔ)器。單片機(jī)與6264的連接電路如圖2.3: 8 8 8 3 P0 ALE 80C51 P2.4~P2.0 P2.7~P2.5 A7~A0 D7~D0 6264 A12~A8 74LS373 G 7
24、4LS138 8 8 8 8 A7~A0 D7~D0 6264 A12~A8 圖2.3 數(shù)據(jù)存儲(chǔ)器的擴(kuò)展圖 2.3 鍵盤顯示接口的設(shè)計(jì) 2.3.1 8279的介紹 Intel8279是一種通用的可編程鍵盤顯示器接口器件,單個(gè)芯片就能完成鍵盤輸入和七段顯示器控制兩種功能。8279的內(nèi)部結(jié)構(gòu)如圖2.4所示。 1、I/O控制和數(shù)據(jù)緩沖器 數(shù)據(jù)緩沖器是雙向緩沖器,連接內(nèi)部總線和外部數(shù)據(jù)總線,用于傳送CPU和8279之間的命令、狀態(tài)和數(shù)據(jù)。 I/O控制線是CPU對(duì)8279進(jìn)行控制的引線。是片選信號(hào),當(dāng)為低電平時(shí),8279才允許讀出或?qū)懭胄?/p>
25、息。A0用于區(qū)別信息的特征,當(dāng)A0=1時(shí),CPU寫(xiě)入8279的信息為命令,CPU從8279讀出的信息為8279的狀態(tài);當(dāng)A0=0時(shí),寫(xiě)入和讀出的信息都為數(shù)據(jù)。和是讀、寫(xiě)控制信號(hào),是8279數(shù)據(jù)緩沖器從外部總線接收數(shù)據(jù)或向外部總線發(fā)送數(shù)據(jù)。 8 OUTA0~OUTA3 OUTB0~OUTB3 SL0~SL3 RL0~RL7 CNTL/STB 4 RESET 數(shù)據(jù)緩沖器 I/O控制 FIFO/傳感器RAM的狀態(tài)寄存器 顯示地址 寄存器 168 顯示器 控制和定時(shí)寄存器 88FIFO/ 傳感器RAM 鍵盤去抖及控制 顯示寄存器 定時(shí)和控制
26、掃描計(jì)數(shù)器 回 送 D7~D0 A0 IRQ CLK SHIFT 8 8 8 8 8 8 8 8 8 8 8 8 圖2.4 8279內(nèi)部結(jié)構(gòu)框圖 2、控制邏輯 控制和定時(shí)寄存器用來(lái)寄存鍵盤和顯示器的工作方式及由CPU編程的其他操作方式。這些寄存器一旦接收并鎖存送來(lái)的命令,就通過(guò)譯碼產(chǎn)生相應(yīng)的信號(hào),從而完成相應(yīng)的控制功能。 定時(shí)和控制包含一些計(jì)數(shù)器,其中有一個(gè)5位計(jì)數(shù)器,對(duì)CLK引線輸入的時(shí)鐘信號(hào)進(jìn)行分頻,產(chǎn)生的定時(shí)信號(hào),然后再經(jīng)過(guò)分頻為鍵盤掃描提供適當(dāng)?shù)闹鹦袙呙桀l率和顯示掃描時(shí)間。 RESET是復(fù)位輸入線,高電平有效。是消隱輸出線,低電平有效
27、,當(dāng)顯示器切換時(shí)或使用顯示消隱命令時(shí),顯示器將消隱。 3、掃描計(jì)數(shù)器 掃描計(jì)數(shù)器有編碼和譯碼兩種工作方式。按編碼方式工作時(shí),掃描計(jì)數(shù)器的狀態(tài)從SL0~SL3輸出,通過(guò)外部譯碼器,可以外接16位顯示器和88鍵盤;按譯碼方式工作時(shí),掃描計(jì)數(shù)器的低2位的狀態(tài)從SL0~SL3輸出,狀態(tài)為00,SL0輸出低電平,SL1~SL3輸出高電平;狀態(tài)為01,SL1輸出低電平,其他輸出高電平;狀態(tài)為10,SL2輸出低電平,其他輸出高電平;狀態(tài)為11,SL3輸出低電平,其他輸出高電平。此時(shí)只能外接4位顯示器和48鍵盤。 4、鍵輸入控制和FIFO(先進(jìn)先出)RAM 這部分電路可以完成對(duì)鍵盤的自動(dòng)掃描,鎖存RL
28、0~RL7的輸入信息,搜索閉合鍵,去除鍵抖動(dòng),并將鍵輸入數(shù)據(jù)寫(xiě)入先進(jìn)先出存儲(chǔ)器(FIFO RAM)。8279具有8個(gè)字節(jié)先進(jìn)先出的鍵輸入寄存器。當(dāng)FIFO RAM中存有鍵盤上閉合鍵的鍵碼時(shí),IRQ變?yōu)楦唠娖剑駽PU請(qǐng)求中斷;當(dāng)CPU從FIFO RAM中讀取數(shù)據(jù)時(shí),IRQ變?yōu)榈碗娖?。若RAM中仍有數(shù)據(jù),則IRQ再次恢復(fù)高電平;當(dāng)CPU將RAM中的輸入鍵數(shù)據(jù)全部讀出時(shí),IRQ下降為低電平。 在鍵盤掃描方式中,從8279的FIFO RAM中讀出的8位鍵輸入數(shù)據(jù)按表2.1格式存放: 表2.1 8279的FIFO RAM中8位數(shù)據(jù)存放格式 CNTL SHIFT 掃描計(jì)數(shù)器的狀態(tài) RL7RL
29、0的編碼值 CNTL/STB和SHIFT為控制鍵輸入線,通常用來(lái)擴(kuò)充鍵的控制功能。 5、顯示RAM和顯示地址寄存器 8279中有16個(gè)字節(jié)的顯示器存儲(chǔ)器。CPU將段數(shù)據(jù)寫(xiě)入顯示存儲(chǔ)器,存儲(chǔ)的顯示數(shù)據(jù)輪流從顯示寄存器輸出。CPU將顯示數(shù)據(jù)寫(xiě)入顯示存儲(chǔ)器有左端送入和右端送入兩種方式。左端送入為依次填入方式;右端送入為移位方式。顯示寄存器分為A、B兩組,OUTA0~OUTA3和OUTB0~OUTB3可以單獨(dú)傳送數(shù)據(jù),也可以合送一個(gè)8位的二進(jìn)制數(shù)據(jù)。 顯示地址寄存器用來(lái)寄存由CPU進(jìn)行讀/寫(xiě)顯示RAM的地址,它可以由命令設(shè)定,也可以設(shè)置成每次讀出或?qū)懭胫笞詣?dòng)遞增。 2.3.2 接口的設(shè)計(jì)
30、 鍵盤和顯示器的控制采用可編程鍵盤/ 顯示器接口8279 。8279 能對(duì)顯示器自動(dòng)掃描,能識(shí)別鍵盤上閉合鍵的鍵號(hào),它獨(dú)立于CPU 工作,可以大大地提高CPU 的工作效率。在工作時(shí),將IRQ經(jīng)反相器接至80C51的。當(dāng)IRQ為高電平時(shí),接受用戶按鍵的響應(yīng),并根據(jù)鍵盤的功能作出相應(yīng)的處理。 為了便于用戶操作,設(shè)了一個(gè)82 的鍵盤,其中包括數(shù)據(jù)采集控制鍵、數(shù)據(jù)傳輸控制鍵、復(fù)位鍵、0~2 的3 路通道選擇數(shù)字鍵以及頻率選擇數(shù)字鍵(6個(gè))。 顯示器選用四位七段L ED 數(shù)碼管完成數(shù)據(jù)的顯示,其中一位用來(lái)顯示通道號(hào)(三個(gè)),一位用來(lái)顯示采集頻率段(六段),另外兩位用來(lái)顯示存儲(chǔ)地址(高位) 8279
31、 與80C51 單片機(jī)的連接分別為: (1) 8279 的數(shù)據(jù)線D0~D7 與80C51 的AD0~AD7 直接相連。 (2) 8279 的讀/ 寫(xiě)、信號(hào)由80C51 的、信號(hào)直接提供。 (3) 8279 的片選信號(hào)CS 由80C51 的引腳(P2.5~P2.7)通過(guò)譯碼器74LS138的 控制,當(dāng)時(shí),可對(duì)8279 進(jìn)行讀寫(xiě)。 8279與單片機(jī)接口如圖2.5所示。 collect2 collect1 road3 road2 road1 reset tran coll 8 2~4#LED顯示器 collect6 collect5 collect4 collec
32、t3 8 +5V 8 8 3 P0 ALE 80C51 RESET P2.7~P2.5 74LS373 G 74LS138 Vcc A3~A0 B3~B0 A0 DB7 CNTL DB0 SHIFT CLK Vss SL0 IRQ SL1 RESET SL2 SL3 RL0 RL7 反相器驅(qū)動(dòng)器 1#LED 顯示
33、器 反相 驅(qū)動(dòng)器 8 圖2.5 單片機(jī)與8279的接口電路 2.4 數(shù)據(jù)傳輸模塊 2.4.1 CH375芯片簡(jiǎn)介 1、概述 CH375 是一個(gè)USB總線的通用接口芯片,支持USB-HOST主機(jī)方式和USB-DEVICE/SLAVE 設(shè)備方式。在本地端,CH375 具有8 位數(shù)據(jù)總線和讀、寫(xiě)、片選控制線以及中斷輸出,可以方便地掛接到單片機(jī)/DSP/MCU/MPU等控制器的系統(tǒng)總線上。在USB 主機(jī)方式下,CH375還提供了串行通訊方式,通過(guò)串行輸入、串行輸出和中斷輸出與單片機(jī)/DSP/MCU/MPU 等相連接。 CH375 的USB 設(shè)備方式與CH372 芯片完全兼容,C
34、H375 包含了CH372 的全部功能。 CH375 的USB主機(jī)方式支持常用的USB全速設(shè)備,外部單片機(jī)可以通過(guò)CH375按照相應(yīng)的USB 協(xié)議與USB 設(shè)備通訊。CH375 還內(nèi)置了處理Mass-Storage 海量存儲(chǔ)設(shè)備的專用通訊協(xié)議的固件,外部單片機(jī)可以直接以扇區(qū)為基本單位讀寫(xiě)常用的USB 存儲(chǔ)設(shè)備(包括USB 硬盤/USB 閃存盤/U 盤)。 2、特點(diǎn) ﹡ 全速USB-HOST 主機(jī)接口,兼容USB V2.0,外圍元器件只需要晶體和電容。 ﹡ 主機(jī)端點(diǎn)輸入和輸出緩沖區(qū)各64 字節(jié),支持常用的12Mbps 全速USB 設(shè)備。 ﹡ 支持USB 設(shè)備的控制傳輸、批量傳輸、中斷傳
35、輸。 ﹡ 自動(dòng)檢測(cè)USB 設(shè)備的連接和斷開(kāi),提供設(shè)備連接和斷開(kāi)的事件通知。 ﹡ 內(nèi)置控制傳輸?shù)膮f(xié)議處理器,簡(jiǎn)化常用的控制傳輸。 ﹡ 通過(guò)U 盤文件級(jí)子程序庫(kù)實(shí)現(xiàn)單片機(jī)讀寫(xiě)USB 存儲(chǔ)設(shè)備中的文件。 ﹡ 并行接口包含8 位數(shù)據(jù)總線,4 線控制:讀選通、寫(xiě)選通、片選輸入、中斷輸出。 ﹡ 串行接口包含串行輸入、串行輸出、中斷輸出,支持通訊波特率動(dòng)態(tài)調(diào)整。 ﹡ 支持5V 電源電壓和3.3V 電源電壓,CH375A 芯片還支持低功耗模式。 ﹡ 采用SOP-28 封裝,可以提供SOP28 到DIP28 的轉(zhuǎn)換板。 3、封裝 圖2.6 CH375引腳圖 表2.2 CH375封
36、裝說(shuō)明 封裝形式 塑體寬度 引腳間距 封裝說(shuō)明 訂貨型號(hào) SOP-28 7.62mm 300mil 1.27mm 50mil 標(biāo)準(zhǔn)的28腳貼片 CH375S/A 4、引腳 表2.3 CH375引腳說(shuō)明 引腳號(hào) 引腳名稱 類型 引腳說(shuō)明 28 VCC 電源 正電源輸入端,需要外接0.1uF電源退耦電容 12、23 GND 電源 公共接地端,需要連接USB總線的地址 9 V3 電源 在3.3V電源電壓時(shí)連接VCC輸入外部電源 在5V電源電壓時(shí)外接容量為0.01uF退耦電容 13 X1 輸入 晶體振蕩的輸入端,需要外接晶體及振蕩
37、電容 14 X0 輸出 晶體振蕩的反相輸出端,需要外接晶體及振蕩電容 10 UD+ 雙向三態(tài) USB總線的D+數(shù)據(jù)線,內(nèi)置可控的上拉電阻 11 UD- 雙向三態(tài) USB總線的D-數(shù)據(jù)線 22~15 D7~D0 雙向三態(tài) 8位雙向數(shù)據(jù)總線,內(nèi)置上拉電阻 4 RD# 輸入 讀選通輸入,低電平有效,內(nèi)置上拉電阻 3 WR# 輸入 寫(xiě)選通信號(hào),低電平有效,內(nèi)置上拉電阻 27 CS# 輸入 片選控制輸入,低電平有效,內(nèi)置上拉電阻 1 INT# 輸出 在復(fù)位完成后位中斷請(qǐng)求輸出,低電平有效 8 A0 輸入 地址線輸入,區(qū)分命令口和數(shù)據(jù)
38、口,內(nèi)置上拉電阻,當(dāng)A0=1時(shí)可以寫(xiě)命令,當(dāng)A0=0時(shí)可以讀寫(xiě)數(shù)據(jù) 24 ACT# 輸出 在內(nèi)置固件的USB設(shè)備方式下時(shí)USB設(shè)備配置完成狀態(tài)輸出,低電平有效 對(duì)于CH375A芯片,在USB主機(jī)方式下時(shí)USB設(shè)備連接狀態(tài)輸出,低電平有效 5 TXD 輸入 輸出 僅用于USB主機(jī)方式,設(shè)備方式只支持并口,在復(fù)位期間為輸入引腳,內(nèi)置上拉電阻,如果在復(fù)位期間輸入低電平那么輸入低電平那么使能并口,否則使能串口,復(fù)位完成后為串行數(shù)據(jù)輸出 6 RXD 輸入 串行數(shù)據(jù)輸入,內(nèi)置上拉電阻 2 RST1 輸入 外部復(fù)位輸入,高電平有效,內(nèi)置下拉
39、電阻 25 RST 輸出 電源上電復(fù)位和外部復(fù)位輸出,高電平有效 26 RST# 輸出 電源上電復(fù)位和外部復(fù)位輸出,低電平有效 7 NC 空腳 空腳,必須懸空 2.4.2 數(shù)據(jù)傳輸模塊設(shè)計(jì) 數(shù)據(jù)的傳輸采用 USB接口芯片CH375。圖2.7 給出了80C51單片機(jī)讀寫(xiě)U盤的電路原理圖,如果CH375芯片的TXD引腳懸空或者沒(méi)有通過(guò)下接電阻接地,那么CH375工作于串口方式。在串口方式下,CH375只需要與單片機(jī)連接2路信號(hào)線,TXD引腳和RXD引腳,其他引腳都可以懸空。 80C51 圖2.7 CH375在單片機(jī)讀寫(xiě)U盤中的電路原理圖 2.5 看
40、門狗復(fù)位電路 利用兩片CD4040 十二位二進(jìn)制串行計(jì)數(shù)器構(gòu)成的“看門狗”電路如圖2.8所示。計(jì)數(shù)器在下降沿進(jìn)行計(jì)數(shù),將RESET 輸入端置于高電平或正脈沖,可使計(jì)數(shù)器的輸出全部為低電平。若單片機(jī)時(shí)鐘振蕩頻率fosc =6MHz, ALE 輸出的頻率為1/6fosc, 則ALE 信號(hào)周期為1μs, 第一個(gè)計(jì)數(shù)器Q12 端脈沖出現(xiàn)時(shí)間為1μs212=4.096ms, 第二個(gè)計(jì)數(shù)器Q8 端的脈沖出現(xiàn)時(shí)間為4.096ms28=1.048s。測(cè)控系統(tǒng)應(yīng)用程序在循環(huán)過(guò)程中, P1 口的P1.3 發(fā)出定時(shí)周期小于1.048s 清零脈沖信號(hào), 就能保證第二個(gè)計(jì)數(shù)器Q8 端輸出為零, 不影響測(cè)控系統(tǒng)的正常運(yùn)
41、行。當(dāng)測(cè)控系統(tǒng)受到干擾進(jìn)入死循環(huán), P1 口的P1.3 不能正常送出清零信號(hào)超過(guò)1.048s 時(shí), 第二個(gè)計(jì)數(shù)器的Q8 端輸出高電平產(chǎn)生復(fù)位信號(hào)使測(cè)控系統(tǒng)復(fù)位并脫離死循環(huán)。 圖2.8 計(jì)數(shù)器型“看門狗”電路 3.系統(tǒng)的軟件實(shí)現(xiàn) 3.1 軟件的總體結(jié)構(gòu) 主程序是系統(tǒng)的監(jiān)控程序,主要對(duì)系統(tǒng)中的各部分進(jìn)行初始化工作,使整個(gè)系統(tǒng)在上電后進(jìn)入初始化狀態(tài),并監(jiān)控系統(tǒng)按照設(shè)計(jì)者的設(shè)計(jì)意圖進(jìn)行工作。主要工作流程是:系統(tǒng)在上電后首先完成 CPU 和外部端口的初始化,顯示器顯示“字母P”,表示程序開(kāi)始,此時(shí)進(jìn)入等待鍵盤接口中斷狀態(tài),若某功能鍵被按下,則轉(zhuǎn)相應(yīng)鍵功能處理子程序,若“COLL”鍵及
42、“COLLECT1”~“COLLECT6”中任意鍵被按下則開(kāi)外部中斷進(jìn)行數(shù)據(jù)采集并進(jìn)行A/D轉(zhuǎn)換,然后調(diào)用數(shù)據(jù)處理子程序,并由LED顯示通道和采集頻段號(hào)等信息。 軟件采用模塊化結(jié)構(gòu)設(shè)計(jì),各種功能都由相應(yīng)的子程序完成,系統(tǒng)軟件主要由以下幾部分組成: 1) 數(shù)據(jù)采集子程序; 2) 指令采集處理子程序; 3) 數(shù)據(jù)傳輸子程序; 系統(tǒng)軟件總體結(jié)構(gòu)如圖3.1所示: “TRAN”鍵 N Y 非“COLL”鍵 與“TRAN”鍵 “COLL”鍵 開(kāi)始 初始化 顯示提示符 有鍵按下 等待鍵盤接口中斷 功能鍵處理 數(shù)據(jù)采集與存儲(chǔ) 數(shù)據(jù)傳輸 顯示提示符”C”鍵入”col
43、lectx”鍵 功能鍵判斷 圖3.1系統(tǒng)軟件總體結(jié)構(gòu)圖 3.2 數(shù)據(jù)采集子程序 3.2.1 采樣頻率 數(shù)據(jù)的采集是系統(tǒng)軟件中最重要的一個(gè)部分,它決定整個(gè)檢測(cè)單元是否能達(dá)到預(yù)期的性能指標(biāo),而采樣頻率的選擇是關(guān)鍵。采樣頻率越高越能如實(shí)反映原信號(hào)的變化,但是采樣頻率取得過(guò)高,勢(shì)必增加 CPU的負(fù)擔(dān),為了確保檢測(cè)的實(shí)時(shí)性,根據(jù)采樣定理,采樣頻率應(yīng)大于或等于最大信號(hào)頻率的兩倍,但不能大于采樣程序的運(yùn)行時(shí)間及ADC0809的A/D轉(zhuǎn)換時(shí)間(約為)。依據(jù)這一原則,為了對(duì)不同的測(cè)試系統(tǒng)具有一定的通用性,設(shè)計(jì)采用六種可選采樣頻率(實(shí)為采樣時(shí)間間隔)(0.2ms~625ms,以5為倍數(shù)遞增)。在采樣
44、開(kāi)始前及采樣過(guò)程中,均可通過(guò)采樣頻段按鍵調(diào)整采樣頻率。由于時(shí)間間隔均為0.2ms的倍數(shù),這里0.2ms的定時(shí)通過(guò)定時(shí)器T0實(shí)現(xiàn),而倍數(shù)則通過(guò)鍵盤控制R2中內(nèi)容實(shí)現(xiàn)??紤]到0.2~625跨度太大,而R2是8位的,不能裝載這么大的倍數(shù),這里另由T1設(shè)置5ms的定時(shí)。 現(xiàn)在通過(guò)計(jì)算對(duì)計(jì)數(shù)初值、TMOD內(nèi)容進(jìn)行確定: ① 計(jì)算計(jì)數(shù)初值:對(duì)于定時(shí)0.2ms來(lái)說(shuō),用定時(shí)器方式2(8位定時(shí)器)就可實(shí)現(xiàn)。 機(jī)器周期為: 時(shí)間常數(shù)為: 計(jì)數(shù)初值為: 故TH0=38H,TL0=38H。 同理,對(duì)于5ms的定時(shí),可用定時(shí)方式0,時(shí)間常數(shù)為: 計(jì)數(shù)初值為: 則高五位為14H,低8
45、位為48H,故TH1=14H,TL1=48H。 ② 確定TMOD方式字:對(duì)于定時(shí)器T0來(lái)說(shuō),、、;對(duì)于定時(shí)器T1,、、。于是 3.2.2 數(shù)據(jù)采集 A/D采樣程序采用外部中斷方式,地址為5FFFH,當(dāng)模擬信號(hào)從ADC0809轉(zhuǎn)換為數(shù)字信號(hào)之后,ADC0809發(fā)出中斷信號(hào),單片機(jī)響應(yīng)中斷,其處理過(guò)程如圖3.2所示。 Y N “COLLETx”鍵按下 開(kāi)外中斷1 等中斷 關(guān)中斷 數(shù)據(jù)采集與存儲(chǔ) 時(shí)鐘溢出中斷 置計(jì)數(shù)初值 結(jié)束否 通道、頻段等的顯示 顯示結(jié)束 圖3.2 數(shù)據(jù)采集子程序流程圖 3.3指令采集處理子程序 3.3.1 8279的初始化 8279的
46、操作方式是通過(guò)CPU對(duì)8279寫(xiě)入命令字來(lái)確定的。8279共有8條命令,其定義的格式及功能如表3.1所示: 表3.1 8279命令功能表 命令 命令特征位 命令功能特征位 D7D6D5 D4 D3 D2 D1 D0 鍵盤/顯示器工作方式 000 0 左端送入 0 88顯示 00(雙鍵鎖定) 0 編碼方式 01(N鍵輪回) 1 右端送入 1 168顯示 10(傳感器矩陣) 1 譯碼掃描 11(選通輸入顯示掃描) 時(shí)鐘編程 001 對(duì)CLK引線輸入的時(shí)鐘分頻的分頻系數(shù)(1~31),復(fù)位31 讀FIFO/傳感器RAM 010 1
47、自動(dòng)加1 8字節(jié)顯示RAM的地址 讀顯示RAM 011 1 自動(dòng)加1 16字節(jié)顯示RAM的地址 寫(xiě)顯示RAM 100 1 自動(dòng)加1 16字節(jié)顯示RAM的地址 顯示器寫(xiě)禁止/消隱 101 禁止寫(xiě)A組 禁止寫(xiě)B(tài)組 消隱A組 消隱B組 清除(清除顯示寄存器A組和B組的輸出) 110 1 允許清除 0 FIFO設(shè)置空狀態(tài),中斷復(fù)位,傳感器讀出地址置0 總清除 10 11 結(jié)束中斷/錯(cuò)誤方式設(shè)置 111 1 特殊工作方式 在方案中,8279的命令字地址為7FFFH。初始化程序如下: MOV P2,#7F;接至8279
48、的命令口 MOV R0,#FF MOV A,#10H;左端送入,88顯示,雙鍵鎖定,譯碼掃描 MOVX @R0,A MOV A,#25H;5分頻,得100KHZ MOVX @R0,A MOV A,#0A0H;不滅顯示,允許寫(xiě)入 MOVX @R0,A MOV A,#090;寫(xiě)入RAM,從零地址開(kāi)始,地址自動(dòng)加1 MOVX @R0,A MOV A,#50H;讀FIFO RAM,從0地址開(kāi)始,地址自動(dòng)加1 MOV @R0,A 3.3.2 指令采集程序的設(shè)計(jì) 鍵盤在微處理系統(tǒng)中是必不可少的鍵盤是人機(jī)相對(duì)話的橋梁,性能良好的鍵功能有助于監(jiān)控系統(tǒng)作用的充分發(fā)揮。系統(tǒng)根據(jù)設(shè)計(jì)的
49、要求,設(shè)計(jì)采用16鍵構(gòu)成28矩陣鍵盤,并通過(guò)8279與CPU 相連。 任何種類的鍵盤輸入都會(huì)遇到觸頭抖動(dòng)以及在操作時(shí)按下多余鍵的誤操作等現(xiàn)象。8279芯片在內(nèi)部設(shè)置了消除觸頭抖動(dòng)以及消除重鍵的電路,這就為用戶帶來(lái)了很大的方便。因此,程序的設(shè)計(jì)顯得比較簡(jiǎn)單。 指令采集子程序流程圖如圖3.3所示。 關(guān)中斷 接收閉合鍵號(hào) 鍵相應(yīng)功能處理 返回 圖3.3 子令采集子程序流程圖 3.4 數(shù)據(jù)傳輸子程序 數(shù)據(jù)傳輸模塊是用來(lái)和計(jì)算機(jī)之間進(jìn)行數(shù)據(jù)傳送的,由于CH375的運(yùn)用,使得軟件的設(shè)計(jì)變得十分簡(jiǎn)單,相當(dāng)于異步串行通信方式。采用中斷方式進(jìn)行傳送,首先送入一個(gè)數(shù)據(jù)到發(fā)送緩沖器(SBUF)
50、,然后等待中斷,程序流程如圖3.4。 N Y 等待中斷 送第一個(gè)數(shù)據(jù)到SBUF 關(guān)中斷 取下一個(gè)數(shù)據(jù)送入SBUF 結(jié)束否 顯示該數(shù)據(jù)值 顯示結(jié)束 圖3.4 數(shù)據(jù)傳輸子程序流程圖 4.系統(tǒng)抗干擾設(shè)計(jì) 所謂干擾就是外在的或內(nèi)在的噪聲對(duì)有用信號(hào)的不良作用。而噪聲可概括地認(rèn)為是目的信號(hào)以外所有電信號(hào)的總稱。在分析或設(shè)計(jì)一個(gè)具體的數(shù)據(jù)采集系統(tǒng)時(shí),必須考慮到可能存在的干擾對(duì)電路的影響。評(píng)價(jià)一個(gè)系統(tǒng)的質(zhì)量好壞的一個(gè)重要指標(biāo)就是它可能達(dá)到的信噪比。換句話說(shuō),一個(gè)系統(tǒng)的抗干擾能力直接關(guān)系到系統(tǒng)質(zhì)量或性能的優(yōu)劣。所以必須把抗干擾問(wèn)題作為系統(tǒng)設(shè)計(jì)中一個(gè)至關(guān)重要的內(nèi)容,貫徹在整個(gè)設(shè)計(jì)工作中
51、,從硬件、軟件上采取相應(yīng)的措施以增強(qiáng)其抗干擾能力。 4.1 干擾源及其傳播途徑 系統(tǒng)真實(shí)工作環(huán)境中干擾源很多,按類型可分為: 1.內(nèi)部干擾源 如電路中的電阻熱噪聲;晶體管、場(chǎng)效應(yīng)管器件內(nèi)部的分配噪聲和閃爍噪聲;放大電路正反饋引起的自激振蕩等。 2.外部干擾源 如汽車的汽缸點(diǎn)火引起的火花放電;電路的脈沖開(kāi)關(guān)接觸所產(chǎn)生的電磁信號(hào)以及自然界的雷電、太陽(yáng)系行星輻射的電磁波等均屬于外部干擾源。 干擾信號(hào)在電路中的傳播途徑大致有以下幾類。 a.電導(dǎo)通路耦合干擾 電導(dǎo)通路泛指構(gòu)成電回路的通路。電導(dǎo)通路耦合干擾是由各單元回路間的公共阻抗產(chǎn)生的。由于接地電位不同而造成的干擾是這類干擾的主要表現(xiàn)
52、形式。例如遠(yuǎn)距離信號(hào)傳輸中,由于大地的電位間存在電位差而產(chǎn)生的干擾;直流電源供電時(shí),除直流成分外,還混有不同頻率的交流電壓,這些交流電壓饋入電路形成干擾。 b.磁場(chǎng)干擾 由磁耦合引起的電噪聲干擾稱磁場(chǎng)干擾。在連接信號(hào)源的傳輸線所經(jīng)過(guò)的空間中總存在著交變電磁場(chǎng),這主要是由 50MHZ 的市電產(chǎn)生。這些交變磁場(chǎng)穿過(guò)傳輸線形成的回路將在傳輸線或閉合導(dǎo)線上感應(yīng)出交流干擾電壓。 c.電場(chǎng)干擾 由電耦合引起的電噪聲干擾稱電場(chǎng)干擾。從電路理論可知,電流流經(jīng)導(dǎo)體時(shí)會(huì)產(chǎn)生電場(chǎng),這個(gè)電場(chǎng)可交連到附近的導(dǎo)體中,使它們感生出電位,此電位就是干擾電位。當(dāng)元件與導(dǎo)線間存在交流電壓時(shí)會(huì)相互耦合形成干擾。 4.2
53、系統(tǒng)抗干擾措施 系統(tǒng)抗干擾措施采用硬件和軟件結(jié)合的方法。硬件抗干擾方法采用計(jì)數(shù)器型“看門狗”電路,這在2.5節(jié)已經(jīng)有過(guò)介紹,就不贅述了。本節(jié)主要講軟件抗干擾方法。在設(shè)計(jì)中,主要用到:1、軟件陷阱技術(shù);2、冗余指令技術(shù)。 1.設(shè)置軟件陷阱 由于系統(tǒng)干擾可能破壞程序指針 PC,PC 一旦失控,使程序“跑飛”,可能進(jìn)入非程序區(qū),造成系統(tǒng)運(yùn)行的一系列錯(cuò)誤。設(shè)置軟件陷阱可防止程序“亂飛”。軟件陷阱是在程序模塊間和程序之后,增設(shè)由若干個(gè)空操作指令和一條無(wú)條件跳轉(zhuǎn)指令組成的“陷阱”,一旦程序跑飛,跌落“陷阱”,便轉(zhuǎn)入初始程序或有關(guān)的失控恢復(fù)處理程序,從而恢復(fù)程序的正確流程。該方法無(wú)需增加任何硬件,適用
54、性較強(qiáng)。 通常在EPROM中非程序區(qū)填入以下指令作為軟件陷阱: NOP NOP LJMP 0000H 2.設(shè)置冗余指令 CPU 執(zhí)行指令的順序是先取操作碼,再取操作數(shù),然后使PC 加“1”(該1 表示當(dāng)前指令的字節(jié)長(zhǎng)度) .當(dāng)PC(程序計(jì)數(shù)器) 受干擾出現(xiàn)錯(cuò)誤,程序便脫離正常軌道“亂飛”. 當(dāng)亂飛到某多字節(jié)指令,若取指令時(shí)刻落在操作數(shù)上,誤將操作數(shù)當(dāng)作操作碼,程序?qū)⒊鲥e(cuò). 合理設(shè)置冗余指令將會(huì)有效避免程序亂飛. 通常是在雙字節(jié)指令和三字節(jié)指令后插入兩個(gè)字節(jié)以上的NOP (空操作) ,這樣既使亂飛程序飛到操作數(shù)上,由于NOP 的存在,可避免后面的指令被當(dāng)作操作數(shù)執(zhí)行,程序會(huì)自動(dòng)納入正
55、軌. 對(duì)控制系統(tǒng)流向指令如RET、RETI、LCALL 、LJMP、JC 等指令之前插入兩條NOP ,也可將亂飛程序納入正軌,確保這些重要指令的執(zhí)行. 5.結(jié)論 課題通過(guò)分析傳統(tǒng)加速度測(cè)試系統(tǒng)的使用現(xiàn)狀及存在的缺陷,對(duì)系統(tǒng)集成化進(jìn)行了研究,提出了一種集成加速度測(cè)試系統(tǒng)的方案。 論文完成的主要工作有: 1、設(shè)計(jì)系統(tǒng)硬件結(jié)構(gòu) 硬件部分為傳感器電路模塊和單片機(jī)主控模塊。單片機(jī)主控部分包括A/D轉(zhuǎn)換模塊、鍵盤/顯示接口電路、數(shù)據(jù)傳輸模塊、看門狗復(fù)位電路。 2、編寫(xiě)系統(tǒng)軟件 軟件采用模塊化設(shè)計(jì)的思路,給出了主程序流程圖,并對(duì)數(shù)據(jù)采集、指令采集、數(shù)據(jù)傳輸子程序進(jìn)行了設(shè)計(jì)。其中數(shù)據(jù)采集子程序?qū)?/p>
56、現(xiàn)數(shù)據(jù)采集和存儲(chǔ),指令采集子程序接收鍵盤指令并進(jìn)行相應(yīng)處理,數(shù)據(jù)傳輸子程序?qū)⒉杉降臄?shù)據(jù)傳送到計(jì)算機(jī)。 方案具有集成度高、價(jià)格便宜、抗干擾能力強(qiáng)的優(yōu)點(diǎn),具有較好的推廣價(jià)值。 系統(tǒng)仍然有需要改進(jìn)的地方,如系統(tǒng)精度不高,不適宜采集頻率過(guò)高的振動(dòng)信息等方面。 致 謝 首先感謝我的各級(jí)母校在我十多年的學(xué)海生涯中給予我的培養(yǎng)和關(guān)懷,感謝我所有的老師對(duì)我孜孜不倦的教誨! 本文是在劉念聰老師的悉心指導(dǎo)下完成的。在這幾個(gè)月的畢業(yè)設(shè)計(jì)中,我從劉念聰老師身上,不僅學(xué)到了相關(guān)的專業(yè)知識(shí),而且劉老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和辛勤的工作作風(fēng)深深地感染了我,使我終身受益,在此對(duì)
57、老師表示衷心的感謝。 感謝我的同班同學(xué),與他們一起生活,帶給我很多快樂(lè),與他們一起討論,使我受益匪淺,感謝和我一起學(xué)習(xí)、生活的所有同學(xué),他們的關(guān)心和幫助使我感受到集體的溫暖。 衷心感謝所有給予過(guò)我?guī)椭椭С值娜恕? 參考資料: [1]張毅坤等.單片微型計(jì)算機(jī)原理及應(yīng)用.西安:西安電子科技大學(xué)出版社.1998. [2]朱定華等.單片微機(jī)原理與應(yīng)用.北京:北方交通大學(xué)出版社.2003 [3]師明珠.嵌入式應(yīng)用系統(tǒng)軟件設(shè)計(jì)技術(shù)研究.計(jì)算機(jī)工程與應(yīng)用.2002.7. [4]王幸之等.單片機(jī)應(yīng)用系統(tǒng)抗干擾技術(shù).北京航空航天大學(xué)出版社.2
58、000. [5]陳德山等.單片機(jī)測(cè)控系統(tǒng)“看門狗”技術(shù)的軟件與實(shí)現(xiàn).福建電腦.2006年第2期. [6]董玉杰等.工業(yè)用單片機(jī)系統(tǒng)中的軟件抗干擾技術(shù).河南理工大學(xué)學(xué)報(bào).2006.12. [7]王中訓(xùn)等.遠(yuǎn)程多路數(shù)據(jù)采集系統(tǒng).煤礦機(jī)械.2006.3. 附件(程序): ORG 0000H LJMP MAIN;跳至主程序 ORG 0003H NOP NOP SJMP KEYB;接受鍵盤指令 ORG 000BH NOP NOP SJMP INTT0;T0中斷處理(數(shù)據(jù)采集) ORG 0013 NOP NOP LJMP COLLECT;跳至數(shù)據(jù)采集處 ORG 0
59、01BH NOP NOP MOV TH1,#14H;T1的初值重載 MOV TL1,#48H LJMP COLLECT;跳至數(shù)據(jù)采集處 ORG 0023H NOP NOP LJMP INT;跳至數(shù)據(jù)傳輸處 RESTART: POP R1 POP R1 PUSH 00H PUSH 00H NOP NOP RETI INTT0 : MOV DPTR,#7F00;啟動(dòng)A/D轉(zhuǎn)換 MOV A,R1 MOV @DPTR,A RETI ;接收鍵盤指令 KEYB:
60、 CLR IE0 MOV DPTR,#7FFEH;數(shù)據(jù)指針指向鍵盤端口處 MOVX A,@DPTR RL A MOV DPTR ,#JT JMP @A+DPTR;轉(zhuǎn)向各功能鍵處理 COLL: CLR ES SETB EX1 ;開(kāi)始數(shù)據(jù)的采集 MOV P2,#7F;指向鍵盤顯示器數(shù)據(jù)口 MOV R0,#FE MOV A,#00H MOVX @R0,A MOVX @R0,A MOVX @R0,A MOV A,#39H;顯示“C”,提示鍵入“COLLECTx” MOVX @R0,A RETI TRAN:
61、 CLR TR0 CLR ET0 CLR TR1 CLR ET1 CLR EX1 SETB ES;允許串行口中斷(數(shù)據(jù)傳輸) CLR DPTR;取第一個(gè)發(fā)送數(shù)據(jù) MOVX A,@DPTR MOV SBUF,A;送入發(fā)送緩沖器 RETI RESET: SJMP $;利用延時(shí)情況下,硬件看門狗復(fù)位功能 ROAD1: MOV R1,#00H NOP NOP RETI ROAD2: MOV R1,#01H NOP NOP
62、RETI ROAD3: MOV R1,#02H NOP NOP RETI COLLECT1: CLR ET1 SETB ET0 SETB TR0;啟動(dòng)T0 MOV R2,#01H;采集頻率設(shè)為0.2ms MOV R3,#01H MOV R6,#01H NOP NOP RETI C
63、OLLECT2: CLR ET1 SETB ET0 SETB TR0;啟動(dòng)T0 MOV R2,#05H;采集頻率設(shè)為1ms MOV R3,#05H MOV R6,#02H NOP NOP RETI COLLECT3: CLR ET0 SETB ET1 SETB TR1;啟動(dòng)T1 MOV R2,#1H;采集頻率設(shè)為5ms MOV R3,#1H MOV R6,#03H NOP NOP
64、 RETI COLLECT4: CLR ET0 SETB ET1 SETB TR1;啟動(dòng)T1 MOV R2,#5H;采集頻率設(shè)為25ms MOV R3,#5H MOV R6,#04H NOP NOP RETI COLLECT5: CLR ET0 SETB ET1 SETB TR1;啟動(dòng)T1 MOV R2,#19H;采集頻率設(shè)為125ms MOV R3,#19H MOV R6,#05H NOP NOP RETI COLLECT6: CLR
65、 ET0 SETB ET1 SETB TR1;啟動(dòng)T1 MOV R2,#7DH;采集頻率設(shè)為625ms MOV R3,#7DH MOV R6,#06H NOP NOP RETI ;各功能鍵意義(RESET復(fù)位;ROAD:通道選擇;COLLECT:采集分頻選擇) JT: DW COLL,TRAN,RESET DW ROAD1,ROAD2,ROAD3 DW COLLECT1,COLLTCT2,COLLECT3 DW COLLECT4,COL
66、LECT5,COLLECT6 BOX: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H ;數(shù)據(jù)的采集與存儲(chǔ) COLLECT: CLR IE1 DJNZ R3,RET0;若 R3不為零則退出 MOV A,R2 MOV R3,A MOV A,R4;接數(shù)據(jù)存儲(chǔ)區(qū) MOV DPH,A MOV A,R5 MOV DPL,A MOV P2,#5FH;接至A/D轉(zhuǎn)換器 MOVX A,@R1;接至通道口 MOVX @DPTR,A;數(shù)據(jù)的存儲(chǔ) ;存貯地址的顯示(只顯示高位地址,前面兩位用于顯示通道和采集頻率段) NOP NOP CJNE R5,#00F,NEXT MOV P2,#7F;指向鍵盤顯示器數(shù)據(jù)口 MOV R0,#FE MOV A,R1 ACALL WR;顯示通道 MOV A,R6 ACALL WR;顯示采集頻率段 MOV A,R4 SWA
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 教育學(xué)第七章教學(xué)
- 1.古詩(shī)詞三首
- 周期問(wèn)題PPT(精品)
- 合作使生活之路更寬暢(精品)
- 向量數(shù)乘運(yùn)算及其幾何意義
- 硬筆書(shū)法-第四課時(shí)-基本筆畫(huà)——捺
- 廉潔文化進(jìn)校園課件
- 招投標(biāo)法律制度解析
- 2011備戰(zhàn)高考第三部分 第1節(jié) 識(shí)記文學(xué)常識(shí)1
- 采購(gòu)計(jì)劃與預(yù)算
- 果園機(jī)器人第二次
- 某數(shù)據(jù)庫(kù)公司品牌戰(zhàn)略規(guī)劃課件
- 家電物流培訓(xùn)課件
- 房顫血栓危險(xiǎn)度評(píng)分與出血風(fēng)險(xiǎn)評(píng)估標(biāo)準(zhǔn)
- 糖皮質(zhì)激素的常見(jiàn)副作用(1)