版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 .PAGE32 / NUMPAGES36 .摘 要現(xiàn)代汽車中,中控門鎖越來越普與,給駕駛員帶來很大的方便。所謂中控鎖全稱是“中央控制車門鎖”,其作用是駕駛員控制駕駛側(cè)車門鎖開關(guān)的同時,全車的車門鎖受中控鎖控制,與駕駛側(cè)車門鎖同時開啟和上鎖。僅駕駛座一側(cè)的門鎖開關(guān)有中控鎖的功能,其它的門鎖在開啟和鎖上的時候,不會影響的別的車門鎖。ARM處理器體積小,低功耗,成本低,性能高,能很好兼容8位,16位器件。大量使用寄存器,指令執(zhí)行速度更快,大多數(shù)數(shù)據(jù)操作都在寄存器中完成。尋址方式靈活簡單,執(zhí)行效率高并且指令長度固定。是今后主流的處理器。本設(shè)計是利用ARM架構(gòu)的LPC2103作為主控芯片以與數(shù)碼管來模
2、擬汽車中控門直流電機控制系統(tǒng)關(guān)鍵詞:中控鎖 直流電機 ARM處理器 數(shù)碼管 uC/OS II操作系統(tǒng)目錄TOC o 1-3 h u HYPERLINK l _Toc3009 1.緒論 PAGEREF _Toc3009 1 HYPERLINK l _Toc9048 1.1課題名稱 PAGEREF _Toc9048 1 HYPERLINK l _Toc24014 1.2課題研究意義 PAGEREF _Toc24014 1 HYPERLINK l _Toc8814 1.3uC/OS II操作系統(tǒng)簡介 PAGEREF _Toc8814 1 HYPERLINK l _Toc20857 2 .中控門鎖的工
3、作原理 PAGEREF _Toc20857 2 HYPERLINK l _Toc710 3 .ARM與主控芯片LPC2103的簡介 PAGEREF _Toc710 3 HYPERLINK l _Toc21510 3.1 LPC2103特性 PAGEREF _Toc21510 3 HYPERLINK l _Toc3967 3.2 ARM管腳信息 PAGEREF _Toc3967 4 HYPERLINK l _Toc29530 3.3定時器1 PAGEREF _Toc29530 5 HYPERLINK l _Toc22819 3.3.1匹配輸出 PAGEREF _Toc22819 5 HYPERL
4、INK l _Toc14121 3.3.2PWM輸出 PAGEREF _Toc14121 7 HYPERLINK l _Toc25762 4.系統(tǒng)的硬件與軟件設(shè)技 PAGEREF _Toc25762 9 HYPERLINK l _Toc25735 4.1.器件表的生成 PAGEREF _Toc25735 9 HYPERLINK l _Toc28444 4.2按鍵電路設(shè)計 PAGEREF _Toc28444 9 HYPERLINK l _Toc1796 4.3指示LED電路的設(shè)計 PAGEREF _Toc1796 9 HYPERLINK l _Toc21765 4.4數(shù)碼管電路的設(shè)計 PAGER
5、EF _Toc21765 10 HYPERLINK l _Toc13253 4.5軟件的概述 PAGEREF _Toc13253 10 HYPERLINK l _Toc24428 4.6電機數(shù)碼管與LED模塊 PAGEREF _Toc24428 11 HYPERLINK l _Toc24113 4.7按鍵輸入模塊 PAGEREF _Toc24113 11 HYPERLINK l _Toc4200 4.8控制模塊 PAGEREF _Toc4200 11 HYPERLINK l _Toc4901 4.9顯示模塊 PAGEREF _Toc4901 12 HYPERLINK l _Toc4085 4.
6、10定時模塊 PAGEREF _Toc4085 12 HYPERLINK l _Toc22237 4.11主函數(shù) PAGEREF _Toc22237 12 HYPERLINK l _Toc9424 5.硬件電路的焊接與調(diào)試 PAGEREF _Toc9424 13 HYPERLINK l _Toc740 5.1軟件的焊接 PAGEREF _Toc740 13 HYPERLINK l _Toc16655 5.2軟件的調(diào)試 PAGEREF _Toc16655 14 HYPERLINK l _Toc11469 6.未來拓展 PAGEREF _Toc11469 16 HYPERLINK l _Toc10
7、368 6.1利用電機正反轉(zhuǎn)控制電路 PAGEREF _Toc10368 16 HYPERLINK l _Toc10016 總結(jié) PAGEREF _Toc10016 17 HYPERLINK l _Toc16547 致 PAGEREF _Toc16547 18 HYPERLINK l _Toc16421 參考文獻(xiàn) PAGEREF _Toc16421 19 HYPERLINK l _Toc29546 附錄 PAGEREF _Toc29546 201.緒論1.1課題名稱帶操作系統(tǒng)的汽車中控門直流電機控制設(shè)計在這個項目中,我的主要任務(wù)是完成直流電機對中控鎖的控制設(shè)計,設(shè)計一個模擬汽車中控門直流電機控
8、制系統(tǒng)設(shè)計的電路圖和使用器件表,包括1個汽車中控門直流電機1個數(shù)碼管,完成模擬汽車中控門直流電機控制設(shè)計。1.2課題研究意義中控門鎖控制裝置,早在上世紀(jì)70年代已經(jīng)裝配在轎車上,經(jīng)過二十余年時間,已經(jīng)應(yīng)用得比較普遍了,且功能也越來越強大。但是“中控門鎖”控制裝置在國商用車上的應(yīng)用卻發(fā)展較慢,直到上世紀(jì)90年代末才有少量幾款商用車開始裝配中控門鎖系統(tǒng)。隨著國汽車行業(yè)的飛速發(fā)展,如今中控門鎖系統(tǒng)也在商用車上得到了廣泛的應(yīng)用和發(fā)展?,F(xiàn)代汽車多數(shù)都選擇安裝了中控門鎖,他可以使駕駛員更加方便,安全的使用汽車。1.3uC/OS II操作系統(tǒng)簡介uC/OS II(Micro Control Operatio
9、n System Two)是一個可以基于ROM運行的、可裁減的、搶占式、實時多任務(wù)核,具有高度可移植性,特別適合于微處理器和控制器,適合很多商業(yè)操作系統(tǒng)性能相當(dāng)?shù)膶崟r操作系統(tǒng)(RTOS)。為了提供最好的移植性能,uC/OS II最大程度上使用ANSI C語言進(jìn)行開發(fā),并且已經(jīng)移植到近40多種處理器體系上,涵蓋了從8位到64位各種CPU(包括DSP)。 uC/OSII可以簡單的視為一個多任務(wù)調(diào)度器,在這個任務(wù)調(diào)度器之上完善并添加了和多任務(wù)操作系統(tǒng)相關(guān)的系統(tǒng)服務(wù),如信號量、等。其主要特點有公開源代碼,代碼結(jié)構(gòu)清晰、明了,注釋詳盡,組織有條理,可移植性好,可裁剪,可固化。核屬于搶占式,最多可以管理6
10、0個任務(wù)。從1992年開始,由于高度可靠性、移植性和安全性,uC/OS II已經(jīng)廣泛使用在從照相機到航空電子產(chǎn)品的各種應(yīng)用中。2 .中控門鎖的工作原理(1)當(dāng)數(shù)碼管顯示數(shù)字1是直流電機電機開始反轉(zhuǎn),意味著門鎖自動打開。(2)當(dāng)數(shù)碼管顯示數(shù)字6時電機直流電機停止轉(zhuǎn)動,意味著門鎖自動落鎖。2-1接線原理圖3 .ARM與主控芯片LPC2103的簡介ARM公司自1990年正式成立以來, 在32位RISC (Reduced Instruction Set Computer CPU)開發(fā)領(lǐng)域不斷取得突破,其結(jié)構(gòu)已經(jīng)從V3發(fā)展到V7。由于ARM公司自成立以來,一直以IP(Intelligence Prope
11、rty)提供者的身份向各大半導(dǎo)體制造商出售知識產(chǎn)權(quán),而自己從不介入芯片的生產(chǎn)銷售,加上其設(shè)計的芯核具有功耗低、成本低等顯著優(yōu)點,因此獲得眾多的半導(dǎo)體廠家和整機廠商的大力支持,在32位嵌入式應(yīng)用領(lǐng)域獲得了巨大的成功,已經(jīng)占有75%以上的32位RISC嵌入式產(chǎn)品市場。在低功耗、低成本的嵌入式應(yīng)用領(lǐng)域確立了市場領(lǐng)導(dǎo)地位。設(shè)計、生產(chǎn)ARM芯片的國際大公司已經(jīng)超過50多家,國中興通訊和華為通訊等公司也已經(jīng)購買ARM公司的芯核用于通訊專用芯片的設(shè)計。LPC2103是一個基于支持實時仿真的16/32位ARM7 TDMI-S CPU的微控制器,并帶有32kB的嵌入高速Flash存儲器,128位寬度的存儲器接口
12、和獨特的加速結(jié)構(gòu)使32位代碼能夠在最大時鐘速率下運行。 較小的封裝和極低的功耗使LPC2103適用于訪問控制器和POS機等小型應(yīng)用系統(tǒng)中;由于置了寬圍的串行通信接口(2個UART、SPI、SSP和2個I2C)和8KB的片SRAM,LPC2103也適合用在通信網(wǎng)關(guān)和協(xié)議轉(zhuǎn)換器中。32/16位定時器、增強型10位ADC、定時器輸出匹配PWM特性、多達(dá)13個邊沿、電平觸發(fā)的外部中斷、32條高速GPIO,使得LPC2103微控制器特別適用于工業(yè)控制和醫(yī)療系統(tǒng)中。 3.1 LPC2103特性(1)16/32位ARM7 TDMI-S微控制器,超小LQFP48封裝; (2)8KB的片靜態(tài)RAM和32KB的片
13、Flash程序存儲器。128位寬度接口/加速器可實現(xiàn)高達(dá)70 MHz工作頻率; (3)通過片boot裝載程序?qū)崿F(xiàn)在系統(tǒng)/在應(yīng)用編程(ISP/IAP)。單個Flash扇區(qū)或整片擦除時間為100ms,256字節(jié)編程時間為1ms; (4)嵌入式ICE RT通過片RealMonitor軟件提供實時調(diào)試; (5)10位A/D轉(zhuǎn)換器提供8路模擬輸入(每個通道的轉(zhuǎn)換時間低至2.44us),以與特定的結(jié)果寄存器來最大限度地減少中斷開銷; (6)2個32位定時器/外部事件計數(shù)器(帶7路捕獲和7路比較通道); (7)2個16位定時器/外部事件計數(shù)器(帶3路捕獲和7路比較通道); (8)低功耗實時時鐘(RTC)具有
14、獨立的電源和特定的32KHz時鐘輸入; (9)多個串行接口,包括2個UART(16C550協(xié)議標(biāo)準(zhǔn))、2個高速I2C總線(400 Kbit/s)、SPI和具有緩沖作用和數(shù)據(jù)長度可變功能的SSP; (10)向量中斷控制器(VIC),可配置優(yōu)先級和向量地址; (11)多達(dá)32個通用I/O口(可承受5V電壓); (12)多達(dá)13個邊沿、電平觸發(fā)的外部中斷管腳; 3.2 ARM管腳信息圖3-1 ARM管腳圖3.3定時器13.3.1匹配輸出定時器1匹配輸出方波示例應(yīng)用如下所示,定時時間為0.2秒。用戶需要短接JP4的P0.19端口,控制LED閃爍。 #include config.h #define L
15、ED (1 19) /* * 函數(shù)名稱:Timer1Init * 函數(shù)功能:定時器1初始化 * 輸入?yún)?shù):無 * 輸出參數(shù):無 */ void Timer1Init(void) T1TCR = 0 x02; /* 定時器1復(fù)位 */ T1PR = 0; /* 不設(shè)時鐘分頻 */ T1MCR = 0 x02; /* 設(shè)置T1MR1匹配后復(fù)位T1TC */ T1EMR = 0 x03 8; /* 匹配翻轉(zhuǎn) */ T1MR0 = Fpclk / 5; /* 設(shè)置0.2秒匹配值 */ T1IR = 0 x01; /* 清除中斷標(biāo)志 */ T1TCR = 0 x01; /* 啟動定時器1 */ /* *
16、 函數(shù)名稱:main * 函數(shù)功能:定時器1匹配輸出翻轉(zhuǎn)主程序 * 輸入?yún)?shù):無 * 輸出參數(shù):無 */ int main (void) PINSEL1 = PINSEL1 & (0 x03 6) ; /* 選擇MAT1.2輸出 */ PINSEL1 = PINSEL1 | (0 x02 6); /* 選擇MAT1.2輸出 */ Timer1Init(); /* 定時器1初始化 */ IRQEnable(); /* IRQ中斷使能 */ while(1); return 0; 圖3-2 匹配輸出波形3.3.2PWM輸出定時器0、1可匹配輸出PWM波形,波形的占空比自行設(shè)定。在本應(yīng)用示例中,P0
17、.19輸出的波形占空比為50,P0.20輸出的占空比為25。 定時器PWM輸出應(yīng)用,示例如程序清單2所示。產(chǎn)生波形如圖4.30所示。#include config.h /* * 函數(shù)名稱:Timer1Init * 函數(shù)功能:定時器1初始化 * 輸入?yún)?shù):無 * 輸出參數(shù):無 */ void Timer1Init(void) T1TCR = 0 x02; /* 定時器0復(fù)位 */ T1PR = 0; /* 不設(shè)時鐘分頻 */ PWM1CON= 0 x0C; /* 使能PWM輸出 */ T1MCR = 0 x02; /* 設(shè)置T0MR0匹配后復(fù)位T0TC */ T1MR0 = Fpclk / 20
18、00; /* 設(shè)置PWM輸出的周期 */ T1MR2 = (Fpclk / 2000) / 2; /* 設(shè)置PWM1.2輸出占空比為50 */ T1MR3 = (Fpclk / 2000) / 4) * 3; /* 設(shè)置PWM1.3輸出占空比為25 */ T1TCR = 0 x01; /* 啟動定時器0 */ /* * 函數(shù)名稱:main * 函數(shù)功能:定時器1PWM輸出 * 輸入?yún)?shù):無 * 輸出參數(shù):無 */ int main (void) PINSEL1 = (PINSEL1 & (0 x03 6) | (0 x02 6); /* 選擇MAT1.2輸出 */ PINSEL1 = (PIN
19、SEL1 & (0 x03 8) | (0 x02 8); /* 選擇MAT1.3輸出 */ Timer1Init(); /* 定時器1初始化 */ while(1); return 0; 圖3-3 匹配輸出波形4.系統(tǒng)的硬件與軟件設(shè)技4.1.器件表的生成本設(shè)計要模擬汽車中控鎖,首先需要用到1個直流電機,用這個電機代表司機旁邊的中控鎖。同時門邊用兩個LED,一個紅色,一個綠色,分別代表車門鎖的開關(guān)以與電機的狀態(tài)。門旁還有一個按鍵作為門鎖的開關(guān),司機還有一個打開所有門的按鍵。為了指示電機動作完成,我們通過數(shù)碼管顯示的數(shù)字可以直觀的看到顯示結(jié)果。據(jù)此,生成了一下器件表:表4-1 器件表器件數(shù)量器件
20、數(shù)量 LPC2013芯片1直流電機1紅色LED1數(shù)碼管1綠色LED1按鈕3焊接板1燒寫器14.2按鍵電路設(shè)計為了控制系統(tǒng),設(shè)計了幾個按鍵,這里直接把按鍵的一個引腳接在單片機的IO口上,另一個引腳接在地上。IO口設(shè)置為上拉輸入,在按鍵按下后,IO口電平就會被拉低,通過程序中檢測IO口電平狀態(tài)就能知到按鍵是否被按下4.3指示LED電路的設(shè)計由于使用的LED功率小,電流低,可以直接用IO口的電流來驅(qū)動,這里我直接把每個LED的正極接在一個IO口,負(fù)極接在地,配置IO口輸出,當(dāng)IO口輸出高時,就能點亮LED。4.4數(shù)碼管電路的設(shè)計要顯示電機是在什么時間開始轉(zhuǎn)動以與什么時間停止,需要用到數(shù)碼管,課題中我
21、需要用到一個直流電機,所以使用了一位數(shù)碼管,用來顯示電機動作是的時間,為了節(jié)約IO,這里采用動態(tài)掃描的方式,把位選接IO,所有用到的段選相應(yīng)的接在一起,再接在不同的IO口上。顯示原理是這樣的 數(shù)碼管首先從上到右,到下到左,到中間,最后到小數(shù)點分別標(biāo)記為a b c d e f g dp八段其中小數(shù)點位DP為最高位,a段為最低位,要想顯示什么字符只需要使對應(yīng)的段發(fā)光即可,一般的習(xí)慣是單片機的端口的最低位接a段,次低位接b段,.最高位(如p0.7)接dp,顯示碼從高往低表示為為 dp g f e d c b a如要顯示“1”,只需要將b、c段點亮即可,若是共陰極,片選是低電平選中,某一段輸出高電平點
22、亮,即顯示碼為00000110 即0 x06,其他的依照該方法類推圖4-2 數(shù)碼管腳圖4.5軟件的概述由于LPC2103的寄存器較多,編程起來比較復(fù)雜。官方寫了一套庫函數(shù),我就直接在官方的庫函數(shù)上進(jìn)行開發(fā)。整個系統(tǒng)用到了單片機的GPIO模塊來控制按鍵,電機和LED。為了控制電機運行的時間和數(shù)碼管顯示的時間,用到了定時中斷Tim模塊,首先把每個初始化模塊放在一起,在主函數(shù)最初調(diào)用。把控制模塊和顯示模塊分別寫成兩個函數(shù),在主函數(shù)里的大循環(huán)里調(diào)用。為了使整體程序結(jié)構(gòu)合理,代碼風(fēng)格好,穩(wěn)定性高,便于調(diào)試,我把這幾個模塊分成幾個文件來寫,每一個模塊寫一個C文件和一個H文件,只需要被調(diào)用的函數(shù)放入H文件中
23、,同時還要保證每個函數(shù)的高聚,低耦合的特性。4.6電機數(shù)碼管與LED模塊本設(shè)計里所用到的電機和LED都是利用IO口的輸出來實現(xiàn),所以我把他們放在一起。首先打開這些模塊的系統(tǒng)時鐘,然后用結(jié)構(gòu)體GPIO_InitTypeDef來初始化這些IO口為推挽輸出,輸出速度為50MHZ,然后按照結(jié)構(gòu)體初始化IO口。對于控制LED的IO口,為了使用方便,直接用一個宏定義來控制。對于控制電機的部分,把他們封裝成電機正轉(zhuǎn),電機反轉(zhuǎn)和電機停止的函數(shù),程序里用一個標(biāo)志位來表示當(dāng)前鎖的狀態(tài)。數(shù)碼管部分作出顯示每個數(shù)字所對應(yīng)的IO口狀態(tài),然后據(jù)此編寫顯示一位的函數(shù),傳入?yún)?shù)為位數(shù)和數(shù)字。4.7按鍵輸入模塊本設(shè)計里用到的按
24、鍵和撥動開關(guān)都是直接連接IO口和地的,在軟件里,首先要初始化這些IO口,為了防干擾,這里初始化為上拉輸入。首先打開相應(yīng)口的時鐘,然后利用結(jié)構(gòu)體GPIO_InitTypeDef初始化這些IO口為上拉輸入。對于模擬車速的撥動開關(guān),直接在控制函數(shù)里最初進(jìn)行檢測。4.8控制模塊整個系統(tǒng)的邏輯都在這個控制模塊里,我用一個全局變量來指示幾個個門鎖的開與鎖,首先檢測速度撥動開關(guān)是否達(dá)到高速,如果為真,再檢測指示狀態(tài)的變量,看是否全部關(guān)閉,如果沒有全部關(guān)閉,就調(diào)用每個關(guān)閉函數(shù),把沒有關(guān)閉的門鎖關(guān)閉,電機轉(zhuǎn)動一段時間,然后通過數(shù)碼管顯示的時間進(jìn)行提示。然后函數(shù)返回,這樣就禁用了按鍵。撥動開關(guān)沒有達(dá)到高速的時候,
25、才能用按鍵進(jìn)行控制,檢測到司機的門為開,并且按下按鍵時,所有門鎖全部鎖上。有鎖住的門鎖,再檢測到全部打開的按鍵按下后,就打開所有的門鎖。其余的情況,檢測到按鍵按下后,就改變門鎖的狀態(tài),更新標(biāo)志位。4.9顯示模塊為了指示當(dāng)前門鎖的狀態(tài),所有門鎖用了一個綠色LED來指示是否鎖住。當(dāng)鎖住時,綠色LED不亮,當(dāng)沒有鎖住時,綠色LED點亮。所以在這里,只需要讀取每個變量的值,然后進(jìn)行邏輯判斷,在根據(jù)結(jié)果點亮或熄滅相應(yīng)的LED就行了。為了指示當(dāng)前電機工作運行的時間,用到了一位數(shù)碼管,傳入時間和電機信號,就能在相應(yīng)的數(shù)碼管上顯示相應(yīng)的數(shù)字。當(dāng)某一數(shù)值顯示的時候電機就會轉(zhuǎn)動,同理,另一數(shù)字顯示的時候電機會停止
26、。4.10定時模塊為了精確控制電機的運行時間,這里用到了單片機的定時器1,首先初始化一組定時器,設(shè)定定時中斷,并設(shè)置相應(yīng)的參數(shù),封裝成函數(shù),并在主函數(shù)里調(diào)用,同時還要編寫定時中斷函數(shù),在中斷里對一些標(biāo)志變量和一些時間變量進(jìn)行控制。4.11主函數(shù)由于其他模塊都已經(jīng)封裝好,所以主函數(shù)里就直接調(diào)用那些函數(shù)就行,這樣顯得簡單,整齊。首先,先把三個標(biāo)志位清0,然后調(diào)用IO初始化,然后初始化數(shù)碼管不顯示數(shù)字,再初始化按鍵。這樣就初始化了所有配置,然后來一個大循環(huán),循環(huán)體放控制函數(shù)和顯示函數(shù)。這樣就能不斷檢測按鍵,進(jìn)行控制和刷新顯示。5.硬件電路的焊接與調(diào)試5.1軟件的焊接5-1 硬件結(jié)果顯示圖5-2硬件顯
27、示圖5.2軟件的調(diào)試要完成整個設(shè)計,硬件的調(diào)試必不可少,非常的重要,首先我要通過CodeWorrior for ARM Developer Suite檢測程序并燒寫到LPC2103芯片當(dāng)中圖5-3 程序檢測圖5-4 添加J-LINK5-5 配置J-LINK6.未來拓展6.1利用電機正反轉(zhuǎn)控制電路 五線馬達(dá)是主鎖,除了有馬達(dá)以外還多了一個三線的狀態(tài)開關(guān),并且是和鎖馬達(dá)聯(lián)動的,其中一根開鎖的時候和第二根導(dǎo)通,閉鎖的時候和第三根導(dǎo)通,門鎖控制器就從它的狀態(tài)得知門鎖是開還是關(guān),保證四個門同步開閉。圖6-1 直流電機接線原理圖總結(jié)本設(shè)計設(shè)利用ARM芯片模擬汽車中控門直流電機,通過GPIO的輸出控制指示L
28、ED。通過GPIO的上拉輸入來檢測按鍵和撥動開關(guān)。通過定時器TIM模塊定時中斷來確定時間。軟硬件的有機結(jié)合,使得整個系統(tǒng)能夠正常工作。設(shè)計時,首先選擇元器件,然后看元器件的數(shù)據(jù)手冊,設(shè)計硬件電路,用C語言編寫程序,調(diào)試程序直到成功實現(xiàn)功能。采用C語言的編程方式,C語言是一種結(jié)構(gòu)化的高級語言,可讀性好,移植容易,更容易模塊化,并且有嚴(yán)格的句法檢查,出錯少,便于調(diào)試。而且即使在該設(shè)計完成投入使用后,需要升級增加功能,也只需要重新燒寫程序就能夠完成,極大的方便了用戶和設(shè)計者。通過這次的努力,終于徹底做完了畢業(yè)設(shè)計當(dāng)中老師分配給我的各項任務(wù)。在老師的指導(dǎo)下,我能夠運用已經(jīng)學(xué)過的知識解決所需要的問題,最
29、終完成本課題的需求,實現(xiàn)控制如下:當(dāng)數(shù)碼管顯示1到5時,電機反轉(zhuǎn),當(dāng)數(shù)碼管顯示6到0時,電機停止轉(zhuǎn)動。在這次設(shè)計中,我查閱了很多資料,也掌握了一些查閱資料的方法,同時還豐富了我的知識儲備,提高了我的專業(yè)涵養(yǎng),使我整個能力得到不少的提高。這次的設(shè)計的硬件焊接以與軟件調(diào)試都使我受益匪淺。在硬件設(shè)計時,要考慮很多東西,需要用到哪些原件,以與整個布局都要提前想好。在設(shè)計中,我還發(fā)現(xiàn),以前在書本上學(xué)到的東西還是和實際有一點出入的,對待問題要更深入的研究,就會收獲更多知識,對問題的認(rèn)識程度也會更上一層樓??傮w來說,硬件設(shè)計還是相對簡單的,最重要的是軟件的設(shè)計。做軟件時,一定要先有一個整體的架構(gòu),要了解我的
30、整個設(shè)計總體都需要哪些模塊,整個程序的架構(gòu)要提前想好,然后還要有良好的代碼風(fēng)格,這樣不僅寫起來有條理邏輯不會亂,而且對于后期的維護(hù)以與讓他人閱讀都有很大的幫助。對于這次的設(shè)計,由于本人的經(jīng)歷和時間有限,考慮問題也不夠全面,所掌握的知識也不是很多,或多或少會存在著一些缺點,設(shè)計難免存在一些不足之處。我的這些不足,在今后學(xué)習(xí)和工作中會不斷改善。最重要的是,這次的設(shè)計使我懂得了學(xué)習(xí)的重要性,在今后,我會一直學(xué)習(xí)下去,我會一直堅持和努力。致經(jīng)過了小半年的時間,終于完成了我的畢業(yè)設(shè)計,心里還是有點小激動的,十分的渴望能在大學(xué)的最后交出一份滿意的答卷,希望這份答卷獲得一個正面的評價,能為我的大學(xué)畫上一個完
31、美的句號。在不知不覺學(xué)四年就過去了,這四年我成長了,都說大學(xué)是通往社會的一個門檻,我真的學(xué)習(xí)到了許多,還記得大一剛剛?cè)雽W(xué)時的懵懵懂懂,還記得大學(xué)的每一個清晨,終于在大學(xué)的最后交出了一份滿意的答卷。首先還是應(yīng)該感我的導(dǎo)師老師,老師給我了很多的幫助,沒有老師的幫助,這個畢設(shè)題目也沒辦法完成的這么順利,這么快。沒有老師的細(xì)心教導(dǎo),我也不可能在學(xué)到這么多,這么全的專業(yè)課程知識。同時我也需要也需要感一起做畢業(yè)設(shè)計的所有同學(xué),感陪伴我走過了大學(xué)的最后六個月的時光,同學(xué)間的友情十分珍貴。希望這份友情能夠天長地久,永遠(yuǎn)長存。我還需要感覺和我朝夕相伴四年的室友們,四年的情誼,四年的照顧彌足珍貴。愿同學(xué)們友誼長存
32、。在未來的道路上,我還會繼續(xù)努力,在科研的道路上獲得新的成就。參考文獻(xiàn)1 大欽.電子技術(shù)基礎(chǔ)實驗(第二版):機械工業(yè)。2 胡學(xué)海.單片機原理與應(yīng)用系統(tǒng)設(shè)計:京電子工業(yè)。3 廣弟.單片機基礎(chǔ):北航。4 周立功.單片機基礎(chǔ)實驗指導(dǎo)書:周立功單片機發(fā)展。5 吳黎明.單片機原理與應(yīng)用技術(shù):科學(xué)。6 光東.單片微型計算機原理與其C語言程序設(shè)計:華中理工大學(xué)。7 袁志勇 嵌入式系統(tǒng)原理與應(yīng)用 航天航空大學(xué)。8 彥文 嵌入式系統(tǒng)原理與接口技術(shù) 清華大學(xué)。9 宥謀 嵌入式系統(tǒng)開發(fā) 清華大學(xué)。10 周立功公司 嵌入式系統(tǒng)原理教程。11 波文 嵌入式實時操作系統(tǒng)uC/OS-II經(jīng)典實例 航天航空大學(xué)。12 肖廣兵
33、 ARM嵌入式開發(fā)實例基于stm32的系統(tǒng)設(shè)計 電子工業(yè) 。13 敦放 使用ARM定時器對十字路口交通燈控制的探討 科技學(xué)院學(xué)報。附錄/*Copyright (c)* * * *File Info* File name:main.c* Last modified Date: 2013-10-31* Last Version:1.0* Descriptions:The main() function example template* Created by:Chenmingji* Created date:2004-09-16* Version:1.0* Descriptions:The ori
34、ginal version* Modified by:* Modified date:* Version:* Descriptions:*/#include main.h#include config.h#define LED1 (1 0)#define LED2 (1 1)#define LED3 (1 2)#define LED4 (1 3)#define LED5 (1 4)#define LED6 (1 5)#define LED7 (1 6)#define LED8 (1 7)#define LED9 (1 8)#define LED10 (1 0; uiDly-)for(i = 0
35、; i 50000; i+);void Timer1Init(void)T1TCR = 0 x02; /* 定時器0復(fù)位 */T1PR = 0; /* 不設(shè)時鐘分頻 */PWM1CON= 0 x0C; /* 使能PWM輸出 */T1MCR = 0 x02; /* 設(shè)置T0MR0匹配后復(fù)位T0TC */T1MR0 = Fpclk / 2000; /* 設(shè)置PWM輸出的周期 */T1MR2 = (Fpclk / 2000) / 2; /* 設(shè)置PWM1.2輸出占空比為50 */T1MR3 = (Fpclk / 2000) / 4) * 3; /* 設(shè)置PWM1.3輸出占空比為25 */T1TCR
36、= 0 x01; /* 啟動定時器0 */int main (void)/PINSEL0 = PINSEL0 & (0 x03f 0); /* 將P0.0-2設(shè)置為GPIO */PINSEL1 = (PINSEL1 & (0 x03 8) | (0 x02 8); /* 選擇MAT1.3輸出 */PINSEL0 = PINSEL0 & 0 xFFF00000; /* 選擇P0.0-9為的GPIO功能 */ IO0DIR = LED1|LED2|LED3|LED4|LED5|LED6|LED7|LED8|LED9|LED10; /* 設(shè)置輸出高電平 */ IO0SET = LED1|LED2|L
37、ED3|LED4|LED5|LED6|LED7|LED8|LED9|LED10; /* 設(shè)置輸出高電平 */ /Timer1Init(); /* 定時器1初始化 */IRQEnable(); /* IRQ中斷使能 */ OSInit(); OSTaskCreateExt(TASK0, (void *)0, &TASK0_STACKTASK0_STACK_SIZE-1, TASK0_PRIO, TASK0_ID, &TASK0_STACK0, TASK0_STACK_SIZE, (void *)0, OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR); OSSt
38、art(); return 0; /* Function name: TASK0* Descriptions: None* input parameters: None* output parameters: None*/void TASK0 (void *pdata) TargetInit(); BUZZER_Set(); OSTimeDly(OS_TICKS_PER_SEC / 10); BUZZER_Clr(); OSTimeDly(OS_TICKS_PER_SEC / 10); BUZZER_Set(); OSTimeDly(OS_TICKS_PER_SEC / 10); BUZZER
39、_Clr(); OSTimeDly(OS_TICKS_PER_SEC / 10); / Timer1Init(); /* 定時器1初始化 */IRQEnable(); /* IRQ中斷使能 */pdata = pdata; OSTaskCreateExt(TASK1, (void *)0, &TASK1_STACKTASK1_STACK_SIZE-1, TASK1_PRIO, TASK1_ID, &TASK1_STACK0, TASK1_STACK_SIZE, (void *)0, OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR); OSTaskCreate
40、Ext(TASK2, (void *)0, &TASK2_STACKTASK2_STACK_SIZE-1, TASK2_PRIO, TASK2_ID, &TASK2_STACK0, TASK2_STACK_SIZE, (void *)0, OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR); OSTaskCreateExt(TASK3, (void *)0, &TASK3_STACKTASK3_STACK_SIZE-1, TASK3_PRIO, TASK3_ID, &TASK3_STACK0, TASK3_STACK_SIZE, (void *)0, OS_T
41、ASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR); while(1) OSTimeDly(OS_TICKS_PER_SEC); count+; if (count%8) = 1) IO0SET = LED1|LED2|LED3|LED4|LED5|LED6|LED7; IO0CLR = LED2|LED3; DelayNS(100); /* 點亮發(fā)光二極管 */ if (count%8) = 2) IO0SET = LED1|LED2|LED3|LED4|LED5|LED6|LED7; IO0CLR = LED1|LED2|LED4|LED5|LED7; Delay
42、NS(150); if (count%8) = 3) IO0SET = LED1|LED2|LED3|LED4|LED5|LED6|LED7; IO0CLR = LED1|LED2|LED3|LED4|LED7; if (count%8) = 4) IO0SET = LED1|LED2|LED3|LED4|LED5|LED6|LED7; IO0CLR = LED2|LED3|LED6|LED7; if (count%8) = 5) IO0SET = LED1|LED2|LED3|LED4|LED5|LED6|LED7; IO0CLR = LED1|LED3|LED4|LED6|LED7; /* 點亮發(fā)光二極管 */ if (count%8) = 6) IO0SET = LED1|LED2|LED3|LED4|LED5|LED6|LED7; IO0C
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度爆炸物運輸安全協(xié)議書3篇
- 服務(wù)行業(yè)安全管理工作總結(jié)
- 二零二五年度個人停車位使用權(quán)投資分紅協(xié)議4篇
- 二零二五年度離婚協(xié)議流程指導(dǎo)與婚姻登記服務(wù)合同2篇
- 二零二五年度智慧家居個人工程承包合同范本2篇
- 【培訓(xùn)教材】醫(yī)院消毒供應(yīng)中心(CSSD)技術(shù)操作規(guī)范解讀
- 通訊行業(yè)銷售總監(jiān)工作總結(jié)
- 二零二五年個人合伙清算協(xié)議書(清算后續(xù)合作)3篇
- 二零二五年度內(nèi)陸淡水水庫漁業(yè)開發(fā)承包合同3篇
- 二零二五年度家政服務(wù)銷售返利合同范本
- 婚介公司紅娘管理制度
- 煤礦電氣試驗規(guī)程
- DL∕T 547-2020 電力系統(tǒng)光纖通信運行管理規(guī)程
- 種子輪投資協(xié)議
- 物業(yè)客服培訓(xùn)課件PPT模板
- 員工工資條模板
- 執(zhí)行依據(jù)主文范文(通用4篇)
- 浙教版七年級數(shù)學(xué)下冊全冊課件
- 華為攜手深圳國際會展中心創(chuàng)建世界一流展館
- 2023版思想道德與法治專題2 領(lǐng)悟人生真諦 把握人生方向 第3講 創(chuàng)造有意義的人生
- 全過程工程咨詢服務(wù)技術(shù)方案
評論
0/150
提交評論