第一篇:第十屆飛思卡爾參賽題目及相關要求(小編推薦)
第十屆全國大學生飛思卡爾杯智能汽車大賽校內選拔賽
參賽題目及相關要求
1、題目A低頻功率放大器
設計并制作低頻功率放大器。其原理示意圖如下:
要求:
1)基本要求
在放大通道的正弦信號輸入電壓幅度為(5~700)mVpp,采用雙電源供電,不大于±20V;等效負載電阻RL為8Ω下,放大器應滿足:
①最大不失真輸出功率POR≥8W;(波形無明顯失真)②帶寬BW≥(40~20000)Hz;(功放部分)③在POR下的效率≥50%;
④在前置放大級輸入端交流短接到地時,RL=8Ω上的交流聲VPP≤400mV。⑤具有音量調節功能。
(功放部分只能采用分立元件或運放,若采用專用集成功放將酌情扣分)2)發揮部分
①制作數字音量控制電路(可以使用專用音響音量控制集成電路,也可用通用數字電路及單片機控制電路實現),用兩只輕觸開關分別實現音量的加減,控制等級不小于8級。
②制作兩路音源選擇電路,用一只輕觸開關實現音源轉換。③功能顯示:音源選擇顯示,音量等級顯示。④其它。
2、題目B電能收集充電器
設計并制作一個電能收集充電器,充電器及測試原理示意圖如圖1。該充電器的核心為直流電源變換器,它從一直流電源中吸收電能,以盡可能大的電流充入一個可充電池。直流電源的輸出功率有限,其電動勢Es在一定范圍內緩慢變化,當Es為不同值時,直流電源變換器的電路結構,參數可以不同。監測和控制電路由直流電源變換器供電。由于Es的變化極慢,監測和控制電路應該采用間歇工作方式,以降低其能耗。可充電池的電動勢Ec=3.6V,內阻Rc=0.1Ω。R sRc 充電器(包括監控電路和直流電源 變換器)Es IcRdEc 直流電源模擬可充電池 圖1 測試原理示意圖(Es和Ec用穩壓電源提供,Rd用于防止電流倒灌)????要求:?1)基本要求
①在Rs=100Ω,Es=10V~20V時,充電電流Ic大于(Es-Ec)/(Rs+Rc)。②在Rs=100Ω時,能向電池充電的Es盡可能低。
③Es從0逐漸升高時,能自動啟動充電功能的Es盡可能低。
④Es降低到不能向電池充電,最低至0時,盡量降低電池放電電流。⑤監測和控制電路工作間歇設定范圍為 0.1 s~5s。2)發揮部分
①在Rs=1Ω,Es=1.2V~3.6V時,以盡可能大的電流向電池充電。②能向電池充電的Es盡可能低。當Es≥1.1V時,取Rs =1Ω; 當Es<1.1V時,取Rs =0.1Ω。
③電池完全放電,Es從0逐漸升高時,能自動啟動充電功能(充電輸出端開路電壓
>3.6V,短路電流>0)的Es盡可能低。當Es≥1.1V時,取Rs =1Ω;當Es<1.1V時,取Rs=0.1Ω。
④降低成本。⑤其他。
說明
1.測試最低可充電Es的方法:逐漸降低Es,直到充電電流Ic略大于0。當Es高于3.6V時,Rs為100Ω;Es低于3.6V時,更換Rs為1Ω;Es降低到1.1V以下時,更換Rs為0.1Ω。然后繼續降低Es,直到滿足要求。
2.測試自動啟動充電功能的方法:從0開始逐漸升高Es,Rs為0.1Ω;當Es升高到高于1.1V時,更換Rs為1Ω。然后繼續升高Es,直到滿足要求。
3、題目C 紅外光通信裝置
設計并制作一個紅外光通信裝置。要求
1.基本要求
(1)紅外光通信裝置利用紅外發光管和紅外光接收模塊作為收發器件,用來定向傳輸語音信號,傳輸距離為2m,如圖1所示。
(2)傳輸的語音信號可采用話筒或Φ3.5mm的音頻插孔線路輸入,也可由低頻信號源輸入;頻率范圍為300~3400Hz。
(3)接收的聲音應無明顯失真。當發射端輸入語音信號改為800Hz單音信號時,在8Ω電阻負載上,接收裝置的輸出電壓有效值不小于0.4V。不改變電路狀態,減小發射端輸入信號的幅度至0V,采用低頻毫伏表(低頻毫伏表為有效值顯示,頻率響應范圍低端不大于10Hz、高端不小于1MHz)測量此時接收裝置輸出端噪聲電壓,讀數不大于0.1V。如果接收裝置設有靜噪功能,必須關閉該功能進行上述測試。
(4)當接收裝置不能接收發射端發射的信號時,要用發光管指示。
第二篇:飛思卡爾實驗報告
中南大學
Central South University
飛思卡爾實驗報告
學生姓名:葉吉東
指導老師:王擊
學院:信息科學與工程學院
專業班級:自動化1204班
完成日期:2014年09月21日
目錄
實驗1.1 流水燈………………………………..………………………………...3 實驗1.2 撥碼開關控LED 燈…………………....…………………………........4 實驗1.3 動態數碼管顯示…………………………….………………………....5 實驗1.4 矩陣鍵盤……………………………………………………………....6 實驗1.5 LCD(0802)顯示………………………………………………………..8 實驗1.6 LCD(12864)顯示…………………………………….………………..10 實驗1.7 蜂鳴器驅動………………………………………………………..….11 實驗1.8 繼電器驅動…………………………………..……………………….12
實驗1.1 流水燈
一、實驗目的:
1、掌握GPIO 口基本寄存器的使用,掌握如何將GPIO 作為輸出口。
2、初步了解如何使用C 語言編寫飛思卡爾單片機程序。
二、實驗內容
利用PORTB 口的低4 位驅動4 位LED 燈,實現4 位LED 燈明燈流水操作。
三、實驗電路圖
四、實驗說明
1、PORTB 口寄存器初始化。
2、送數據給PORTB 口顯示,并延時一定時間。
3、改變數據,重復2。
五、實驗方法及步驟
1、接線說明:
本實驗無需外部接線,只需要使用跳線帽短接核心板上JP_1 處標號為PB0~ PB3 的跳線即可。
2、運行程序,觀察LED 燈亮滅情況。
六、心得體會
這是我利用單片機進行的第一次實驗,之前也沒有接觸過單片機,通過這次實驗我大概了解了單片機的編程方法。它跟我們上個學期學過的微機原理很像,編程方法非常類似,這使得我也很容易看懂這個程序。最后我還做了課后思考題,發現只要延時時間縮短就可以達到閃爍的效果了。通過這一次實驗讓我對單片機有了初步的了解。為接下來的實驗打下了基礎。實驗1.2 撥碼開關控LED 燈
一、實驗目的:
1、掌握GPIO 口的讀寫操作。
2、進一步了解C 語言在飛思卡爾單片機中的編程規范及技巧。
二、實驗內容:
讀取PORTB 口高4 位連接的4 位撥碼開關狀態,將讀取到的撥碼開關狀態用 PORTB 口低4 位連接的LED 燈顯示。
三、實驗電路圖:
四、實驗說明:
1、PORTB 口寄存器初始化;
2、讀取PORTB 數據,將數據右移4 位;送PORTB 口顯示;
3、重復2。
五、實驗方法及步驟:
1、接線說明:
本實驗無需外部接線,只需要使用跳線帽短接核心板上JP_1 處標號為PB0~ PB7 的跳線即可。
2、運行程序,改變撥碼開關的狀態,觀察LED 燈的顯示變化。
六、心得體會
這一次的實驗跟第一次的實驗基本類似,知識這次所需要連的線要多一些而已。通過這一次的實驗,進一步了解GPIO 口的讀寫操作。進一步了解C 語言在飛思卡爾單片機中的編程規范及技巧。
實驗1.3 動態數碼管顯示
一、實驗目的:
1、了解數碼管動態顯示的方法。
2、掌握2803 的驅動原理。
二、實驗內容:
系統上電后首先單8 左移顯示,然后0-7 順次左移顯示,緊接著7-0 順次 右移顯示,再 0-7 全部閃爍顯示,并重復以上動作。
三、實驗電路圖:
四、實驗說明:
1、GPIO 相關寄存器初始化;
2、選中數碼管第一位,送段碼顯示第一個數據;
3、移動位碼,送下個數據的段碼,以此類推,實現移位顯示與動態顯示。
五、實驗方法及步驟:
1、接線說明: 實驗系統底板的8 位8 段數碼管模塊的段碼接線說明: J_SEG-1(A)----IO065(PA0)J_SEG-2(B)----IO066(PA1)J_SEG-3(C)----IO067(PA2)J_SEG-4(D)----IO068(PA3)J_SEG-5(E)----IO069(PA4)J_SEG-6(F)----IO070(PA5)J_SEG-7(G)----IO071(PA6)J_SEG-8(DP)----IO072(PA7)8 位8 段數碼管模塊的位碼接線說明: J_DIG-1(COM0)----IO046(PH7)J_DIG-2(COM1)----IO045(PH6)J_DIG-3(COM2)----IO048(PH5)J_DIG-4(COM3)----IO047(PH4)J_DIG-5(COM4)----IO050(PH3)J_DIG-6(COM5)----IO049(PH2)J_DIG-7(COM6)----IO052(PH1)J_DIG-8(COM7)----IO051(PH0)
六、心得體會:
這次的實驗連線比較復雜,這使得我第一次的連線并沒有連正確,演示的時候出來的是亂碼。然后我就慢慢檢查,終于發現了錯誤所在,是我并沒有看清實驗指導書連線而是憑著自己的感覺經驗然后連線的,結果就出錯了,所以我們做實驗額時候一定得細心,要不然就會容易出錯。看著實驗箱上的實驗結果,就聯想到了我們日常生活中到處可見的LED燈。這讓我越來越覺得單片機實現的功能在生活中到處可見。
實驗1.4 矩陣鍵盤
一、實驗目的:
1、了解矩陣鍵盤掃描原理。
2、掌握矩陣鍵盤編程方法。
二、實驗內容:
編寫鍵盤掃描程序,當矩陣鍵盤模塊有按鍵按下時,讀取鍵值,并利用數碼 管顯示鍵值。系統上電后8 位數碼管以5-4-3-2-1 倒計數顯示,待顯示值為1 后,數碼管清除顯示,此時按下矩陣鍵盤按鍵,數碼管顯示對應鍵值。
三、實驗電路圖:
四、實驗說明:
1、GPIO 相關寄存器的初始化。2、8 位數碼管以5-4-3-2-1 倒計數顯示。
3、掃描按鍵,鍵值送數碼管顯示。
4、重復操作3。
五、實驗方法及步驟:
1、接線說明:
實驗系統底板的4x4 矩陣鍵盤接線說明: J_Key-1(R0)-----IO092(PS0)J_Key-2(R1)-----IO091(PS1)J_Key-3(R2)-----IO094(PS2)J_Key-4(R3)-----IO093(PS3)J_Key-5(C0)-----IO096(PS4)J_Key-6(C1)-----IO095(PS5)J_Key-7(C2)-----IO098(PS6)J_Key-8(C3)-----IO097(PS7)實驗系統底板的8 位8 段數碼管模塊的段碼接線說明: J_SEG-1(A)----IO065(PA0)J_SEG-2(B)----IO066(PA1)J_SEG-3(C)----IO067(PA2)J_SEG-4(D)----IO068(PA3)J_SEG-5(E)----IO069(PA4)J_SEG-6(F)----IO070(PA5)J_SEG-7(G)----IO071(PA6)J_SEG-8(DP)----IO072(PA7)8 位8 段數碼管模塊的位碼接線說明: J_DIG-1(COM0)----IO046(PH7)J_DIG-2(COM1)----IO045(PH6)J_DIG-3(COM2)----IO048(PH5)J_DIG-4(COM3)----IO047(PH4)J_DIG-5(COM4)----IO050(PH3)J_DIG-6(COM5)----IO049(PH2)J_DIG-7(COM6)----IO052(PH1)J_DIG-8(COM7)----IO051(PH0)
2、運行程序,觀察數碼管顯示變化。按下按鍵,觀察數碼管顯示變化。
六、心得體會:
這次做的是矩陣鍵盤的實驗,通過前幾次實驗,對單片機實驗有了一定的了解,所以我這次并沒有一開始就連線,我先打開程序然后花了好長一段時間了解矩陣鍵盤掃描原理,發現程序是通過不斷循環掃描的方法來檢測按鍵是否按下。通過這次試驗我基本了解矩陣鍵盤的編程方法。
實驗1.5 LCD(0802)顯示
一、實驗目的:
1、掌握GPIO 口控制外設的方法。
2、熟悉LCD(0802)的指令系統。
二、實驗內容: 利用LCD(0802)液晶顯示器,顯示兩排數字。
三、實驗電路圖:
四、實驗說明:
1、驅動LCD(0802)GPIO 口相關寄存器初始化;
2、LCD(0802)初始化;
3、在LCD 屏上分行顯示“01234567”和“ABCDEFGH”。
五、實驗方法及步驟:
1、接線說明:
實驗系統底板0802 液晶模塊的LCD 數據口信號接線說明: J_0802B_1-5(DB0)----IO065(PA0)J_0802B_1-6(DB1)----IO066(PA1)J_0802B_1-7(DB2)----IO067(PA2)J_0802B_1-8(DB3)----IO068(PA3)J_0802B_1-9(DB4)----IO069(PA4)J_0802B_1-10(DB5)----IO070(PA5)J_0802B_1-11(DB6)----IO071(PA6)J_0802B_1-12(DB7)----IO072(PA7)
實驗系統底板0802 液晶模塊的LCD 控制口信號接線說明: J_0802B_1-1(RS)-----IO013(PK5)J_0802B_1-2(R/W)----IO014(PK4)J_0802B_1-3(EN)-----IO015(PK3)
2、運行程序,觀察實驗現象。
六、心得體會:
這次實驗我還是像上次一樣,先把實驗內容看一下,然后就直接看程序。剛開始的程序是LCD(0802)GPIO 口相關寄存器初始化和LCD(0802)初始化,看了半個多小時也是似懂非懂,接下來看的是LCD顯示“01234567”和“ABCDEFGH”的程序,這些程序應該都是應該查表得出來的,我也沒有必要看懂,所以我就連線進行實驗了,通過這次試驗我還是能夠初步掌握GPIO 口控制外設的方法和熟悉LCD(0802)的指令系統。
實驗1.6 LCD(12864)顯示
一、實驗目的:
1、掌握GPIO 口控制外設的方法。
2、熟悉LCD(12864)的指令系統。
二、實驗內容:
使用OCM12864-2 液晶顯示器,顯示漢字。
三、實驗電路圖:
四、實驗說明:
1、驅動LCD(12864)的GPIO 相關寄存器初始化;
2、LCD(12864)控制器的初始化,延時及清屏;
3、在LCD 屏上顯示“歡迎使用”。
五、實驗方法及步驟:
1、接線:
實驗系統底板128x64 液晶模塊的液晶數據口信號接線說明: J_12864-4(DB0)-----IO065(PA0)J_12864-5(DB1)-----IO066(PA1)J_12864-6(DB2)-----IO067(PA2)J_12864-7(DB3)-----IO068(PA3)J_12864-8(DB4)-----IO069(PA4)J_12864-9(DB5)----IO070(PA5)J_12864-10(DB6)---IO071(PA6)J_12864-11(DB7)---IO072(PA7)實驗系統底板128x64 液晶模塊的液晶控制口信號接線說明: J_12864-1(D/I)-----IO011(PK6)J_12864-2(R/W)-----IO013(PK5)J_12864-3(E)-------IO014(PK4)J_12864-12(CS1)----IO015(PK3)J_12864-13(CS2)----IO016(PK2)實驗1.7 蜂鳴器驅動
一、實驗目的:
了解蜂鳴器的使用和驅動方法。
二、實驗內容:
利用GPIO 端口中的某一位驅動蜂鳴器。
三、實驗電路圖:
四、實驗說明:
1、相應端口寄存器初始化;
2、送數據到相應I/O 口,間斷驅動蜂鳴器。
五、實驗方法及步驟:
1、接線說明:
實驗系統底板的蜂鳴器控制模塊區域的蜂鳴器控制端接線說明: J_ Beep(Beep)----IO061(PE3)
2、運行程序,觀察現象。
六、心得體會:
通過本次實驗,熟悉了實驗板中蜂鳴器工作原理,掌握編程控制蜂鳴器播 放音樂。掌握單片機編程控制蜂鳴器發出不同頻率聲音的方法;雖然在本次試驗中遇到了的問題,都在同學和老師的幫助下解決了,同時還進一步了解了單片機方面的有關知識。
實驗1.8 繼電器驅動
一、實驗目的:
了解繼電器的使用和驅動方法。
二、實驗內容:
利用GPIO 端口中的某一位驅動蜂鳴器。
三、實驗電路圖:
四、實驗說明:
1、相應端口寄存器初始化;
2、送數據到相應I/O 口,驅動繼電器間歇動作。
五、實驗方法及步驟:
1、接線說明:
實驗系統底板的繼電器控制模塊的繼電器控制端接線說明: J_Relay(Relay)----IO061(PE3)使用跳線帽短接實驗系統底板繼電器控制模塊JP_LED 處的跳線。使用跳線帽短接實驗系統底板繼電器控制模塊JP_Power 處的跳線。
2、運行程序,觀察現象。
六、心得體會:
通過這八天的實驗和八次實驗,讓我學會了很多新的知識。能夠利用該軟件熟練地編譯下載程序。通過這幾天的學習,讓我對飛思卡爾試驗箱也有了一定的了解,而且這八個實驗做下來也感覺很有意思,每次對代碼進行一些小的改動出來效果以后,都感覺挺有趣的。不過在這幾天的學習,我也發現了一些問題,那就是才編程方面的缺陷,有些以前的知識都已經忘了,有些程序都看不太懂了,我覺得以后我應該好好復習一下,把以前學的知識都拿回來。
第三篇:飛思卡爾實習報告
中南大學
Central South University
飛思卡爾實驗報告
學生姓名:應曉偉 指導老師:李志民 學院:信息科學與工程學院 專業班級:自動化1106班 完成日期:2013年9月12日
目錄
一、實驗目的………………………………………………………..2
二、實驗內容………………………………………………………..2
三、實驗電路圖…………………………………………………….3
四、實驗說明………………………………………………………..6
五、實驗方法及步驟…………………………………………....7
六、實驗總結……………………………………………………….10
一、實習目的
1、熟悉飛思卡爾試驗箱的操作。
2、掌握codewarrierr軟件的使用方法。
3、初步了解如何使用c語言編寫飛思卡爾單片機程序。
二、實驗內容
實驗1.1
流水燈
利用PORTB 口的低4 位驅動4 位LED 燈,實現4 位LED 燈明燈流水操作。
實驗1.2
撥碼開關控LED 燈
讀取PORTB 口高4 位連接的4 位撥碼開關狀態,將讀取到的撥碼開關狀態用 PORTB 口低4 位連接的LED 燈顯示。
實驗1.3
動態數碼管顯示
系統上電后首先單8 左移顯示,然后0-7 順次左移顯示,緊接著7-0 順次 右移顯示,再 0-7 全部閃爍顯示,并重復以上動作。
實驗1.4 矩陣鍵盤
編寫鍵盤掃描程序,當矩陣鍵盤模塊有按鍵按下時,讀取鍵值,并利用數碼 管顯示鍵值。系統上電后8 位數碼管以5-4-3-2-1 倒計數顯示,待顯示值為1 后,數碼管清除顯示,此時按下矩陣鍵盤按鍵,數碼管顯示對應鍵值。
實驗1.5 LCD(0802)顯示
利用LCD(0802)液晶顯示器,顯示兩排數字。
實驗1.6 LCD(12864)顯示
使用OCM12864-2 液晶顯示器,顯示漢字。
實驗1.7 蜂鳴器驅動
利用GPIO 端口中的某一位驅動蜂鳴器。
實驗1.8 繼電器驅動
利用GPIO 端口中的某一位驅動繼電器。
三、實驗電路圖
實驗1.1 流水燈
實驗1.2 撥碼開關控LED 燈
實驗1.3 動態數碼管顯示
實驗1.4 矩陣鍵盤
實驗1.5 LCD(0802)顯示
實驗1.6 LCD(12864)顯示
實驗1.7 蜂鳴器驅動
實驗1.8 繼電器驅動
四、實驗說明
實驗1.1 流水燈
1、PORTB 口寄存器初始化。
2、送數據給PORTB 口顯示,并延時一定時間。
3、改變數據,重復2。
實驗1.2 撥碼開關控LED 燈
1、PORTB 口寄存器初始化;
2、讀取PORTB 數據,將數據右移4 位;送PORTB 口顯示;
3、重復2。
實驗1.3 動態數碼管顯示
1、GPIO 相關寄存器初始化;
2、選中數碼管第一位,送段碼顯示第一個數據;
3、移動位碼,送下個數據的段碼,以此類推,實現移位顯示與動態顯示。
實驗1.4 矩陣鍵盤
1、GPIO 相關寄存器的初始化。2、8 位數碼管以5-4-3-2-1 倒計數顯示。
3、掃描按鍵,鍵值送數碼管顯示。
4、重復操作3。
實驗1.5 LCD(0802)顯示
1、驅動LCD(0802)GPIO 口相關寄存器初始化;
2、LCD(0802)初始化;
3、在LCD 屏上分行顯示“01234567”和“ABCDEFGH”。
實驗1.6 LCD(12864)顯示
1、驅動LCD(12864)的GPIO 相關寄存器初始化;
2、LCD(12864)控制器的初始化,延時及清屏;
3、在LCD 屏上顯示“歡迎使用”。
實驗1.7 蜂鳴器驅動
1、相應端口寄存器初始化;
2、送數據到相應I/O 口,間斷驅動蜂鳴器。
實驗1.8 繼電器驅動
1、相應端口寄存器初始化;
2、送數據到相應I/O 口,驅動繼電器間歇動作。
五、實驗步驟與方法
實驗1.1 流水燈
1、接線說明:
本實驗無需外部接線,只需要使用跳線帽短接核心板上JP_1 處標號為PB0~ PB3 的跳線即可。
2、運行程序,觀察LED 燈亮滅情況。
實驗1.2 撥碼開關控LED 燈
1、接線說明:
本實驗無需外部接線,只需要使用跳線帽短接核心板上JP_1 處標號為PB0~ PB7 的跳線即可。
2、運行程序,改變撥碼開關的狀態,觀察LED 燈的顯示變化。
實驗1.3 動態數碼管顯示
實驗系統底板的8 位8 段數碼管模塊的段碼接線說明: J_SEG-1(A)----IO065(PA0)J_SEG-2(B)----IO066(PA1)J_SEG-3(C)----IO067(PA2)J_SEG-4(D)----IO068(PA3)J_SEG-5(E)----IO069(PA4)J_SEG-6(F)----IO070(PA5)J_SEG-7(G)----IO071(PA6)J_SEG-8(DP)----IO072(PA7)* 注1:J_SEG-1 表示插座的標識名稱,后面括號中的A 表示該引腳的作用,后文均使用該方法描述,就不再重復說明了。
*注2:IO065 后括號中的PA0 表示當HF-ExBoard 實驗系統使用 HF-MC9S12XS128EVB-A 核心板時,實驗系統底板 的IO065 接口對應 MC9S12XS128EVB 的PA0,后文均使用該方法描述,就不再重復說明了。8 位8 段數碼管模塊的位碼接線說明: J_DIG-1(COM0)----IO046(PH7)J_DIG-2(COM1)----IO045(PH6)J_DIG-3(COM2)----IO048(PH5)J_DIG-4(COM3)----IO047(PH4)J_DIG-5(COM4)----IO050(PH3)J_DIG-6(COM5)----IO049(PH2)J_DIG-7(COM6)----IO052(PH1)J_DIG-8(COM7)----IO051(PH0)*注3:IO051(PH7)對應的COM0 為8 位數碼管中最左邊第一位。
2、運行程序,觀察數碼管的顯示。
實驗1.4 矩陣鍵盤
實驗系統底板的4x4 矩陣鍵盤接線說明: J_Key-1(R0)-----IO092(PS0)J_Key-2(R1)-----IO091(PS1)J_Key-3(R2)-----IO094(PS2)J_Key-4(R3)-----IO093(PS3)J_Key-5(C0)-----IO096(PS4)J_Key-6(C1)-----IO095(PS5)J_Key-7(C2)-----IO098(PS6)J_Key-8(C3)-----IO097(PS7)實驗系統底板的8 位8 段數碼管模塊的段碼接線說明: J_SEG-1(A)----IO065(PA0)J_SEG-2(B)----IO066(PA1)J_SEG-3(C)----IO067(PA2)J_SEG-4(D)----IO068(PA3)J_SEG-5(E)----IO069(PA4)J_SEG-6(F)----IO070(PA5)J_SEG-7(G)----IO071(PA6)J_SEG-8(DP)----IO072(PA7)8 位8 段數碼管模塊的位碼接線說明: J_DIG-1(COM0)----IO046(PH7)J_DIG-2(COM1)----IO045(PH6)J_DIG-3(COM2)----IO048(PH5)J_DIG-4(COM3)----IO047(PH4)J_DIG-5(COM4)----IO050(PH3)J_DIG-6(COM5)----IO049(PH2)J_DIG-7(COM6)----IO052(PH1)J_DIG-8(COM7)----IO051(PH0)
2、運行程序,觀察數碼管顯示變化。按下按鍵,觀察數碼管顯示變化。
實驗1.5 LCD(0802)顯示
實驗系統底板0802 液晶模塊的LCD 數據口信號接線說明: J_0802B_1-5(DB0)----IO065(PA0)J_0802B_1-6(DB1)----IO066(PA1)J_0802B_1-7(DB2)----IO067(PA2)J_0802B_1-8(DB3)----IO068(PA3)J_0802B_1-9(DB4)----IO069(PA4)J_0802B_1-10(DB5)----IO070(PA5)J_0802B_1-11(DB6)----IO071(PA6)J_0802B_1-12(DB7)----IO072(PA7)實驗系統底板0802 液晶模塊的LCD 控制口信號接線說明: J_0802B_1-1(RS)-----IO013(PK5)J_0802B_1-2(R/W)----IO014(PK4)J_0802B_1-3(EN)-----IO015(PK3)
2、運行程序,觀察實驗現象。
實驗1.6 LCD(12864)顯示 實驗系統底板128x64 液晶模塊的液晶數據口信號接線說明: J_12864-4(DB0)-----IO065(PA0)J_12864-5(DB1)-----IO066(PA1)J_12864-6(DB2)-----IO067(PA2)J_12864-7(DB3)-----IO068(PA3)J_12864-8(DB4)-----IO069(PA4)J_12864-9(DB5)----IO070(PA5)J_12864-10(DB6)---IO071(PA6)J_12864-11(DB7)---IO072(PA7)實驗系統底板128x64 液晶模塊的液晶控制口信號接線說明: J_12864-1(D/I)-----IO011(PK6)J_12864-2(R/W)-----IO013(PK5)J_12864-3(E)-------IO014(PK4)J_12864-12(CS1)----IO015(PK3)J_12864-13(CS2)----IO016(PK2)注:實驗指導書提供的接線說明根據金鵬OCM12864-2 型液晶編寫,如果 使用其它型號的12864 液晶模塊,可能液晶模塊的引腳定義有差異,只需要依據
具體使用的液晶引腳修改接線即可完成該實驗。
2、運行程序,觀察實驗現象。
實驗1.7 蜂鳴器驅動
實驗系統底板的蜂鳴器控制模塊區域的蜂鳴器控制端接線說明: J_ Beep(Beep)----IO061(PE3)
2、運行程序,觀察現象。
實驗1.8 繼電器驅動
實驗系統底板的繼電器控制模塊的繼電器控制端接線說明: J_Relay(Relay)----IO061(PE3)使用跳線帽短接實驗系統底板繼電器控制模塊JP_LED 處的跳線。使用跳線帽短接實驗系統底板繼電器控制模塊JP_Power 處的跳線。
2、運行程序,觀察現象。
六、實驗總結
通過這幾天的上機實驗,讓我學會了很多新的知識。基本掌握了codewarrierr的使用方法,能夠利用該軟件熟練地編譯下載程序。通過這幾天的學習,讓我對飛思卡爾試驗箱也有了一定的了解,而且這八個實驗做下來也感覺很有意思,每次對代碼進行一些小的改動出來效果以后,都感覺挺有趣的。不過在這幾天的學習,我也發現了一些問題,那就是才編程方面的缺陷,有些以前的知識都已經忘了,有些程序都看不太懂了,我覺得以后我應該好好復習一下,把以前學的知識都拿回來。
第四篇:單片機(飛思卡爾)課程設計報告
2011年 6 月
1設計要求:
LCD的第一行顯示運算式,第二行顯示運算結果。比如要計算機12+34,在鍵盤上按下相應鍵后,LCD的第一行顯示“12+34”,按下“=”號后,LCD的第二行顯示“=46”。其他功能參考普通計算器。
擴展功能:負數、小數運算、復合運算。連續運算、2進制、8進制運算。
亦可直接在LCD上顯示一個計算器,用觸摸屏操作。
2設計思路
在LCD上顯示一個與鍵盤功能相同的計算器,可實現用鍵盤、觸摸屏混合操作。
1、在LCD顯示屏上按下某一個符號或者在鍵盤上某一個按鍵符號時,將相應字符存入數組中
并顯示在LCD上。
2按下“=”就運算處理并在第二行顯示計算結果。
3、按下“C”就進行退格操作。
4、按下“=”后顯示結果,并且能連續運算,其中,將操作數和操作碼全部顯示在第一行,第二行顯示當前計算結果。
5、當出現連續按兩個操作符、按等號前一個字符為操作符、最開始按下的不是操作數等非法輸
入時,自動在LCD屏幕上報錯并實現清屏重啟計算器。
3設計步驟
1、添加基本計算器的+、-、*、/ 四則運算和退格功能;
2、在1的基礎上實現復合運算和連續操作;
3、在LCD上通過調用函數在下方畫出計算器的按鍵圖畫并實現與鍵盤同等的功能;
4、綜合調試并進行優化。
4程序流程(含流程圖及詳細步驟解釋)
詳細步驟解釋
程序運行時即進行初始化,在LCD顯示屏上顯示計算器界面。接著判斷是否有鍵盤按鍵按下或者有觸屏,沒有就繼續掃描判斷,有則將按下的鍵所對應的字符存入數組savedata。在此之中,也在判斷鍵入的字符是否是退格鍵,如果是則將上一個字符清除掉。當檢測到字符“=”時,將savedata數組中所存儲的字符分離,其中,數值存在操作數數組op1中,操作符存在操作符數組op2中,然后進行運算。運算開始時,先掃描op2數組,當檢測到操作符則將op1數組中對應操作符前后的兩個操作數進行運算(先乘除后加減),結果放在兩個操作數的前一個的位置,將op1和op2數組向前移動一個位置以覆蓋已經運算過的操作數和操作符。當繼續進行連續運算時,將字符繼續存到savedata數組后面,否則清除op1的值,將字符存到savedata數組第一個開始的位置。
程序中考慮了各種非法輸入的情況:當連續輸入兩個操作符時、當按“=”時檢測到前一個字符是操作符時、當程序第一個字符不是操作數時,都報錯,自動清屏并重啟計算器。
按照實際中計算器的原則,當按下“=”后,退格鍵不能清除,比如1+2=3;不能將“2”、“+”、“1”退格。如果是連續運算,繼續按下“-3+8/2”時,退格鍵有效,能清“-3+8/2”中的字符。清除后繼續連續運算。
5操作步驟及方法
下載完程序后:
1、普通計算:例如計算123+456,直接在顯示屏上連續觸發“123+456”,然后觸“=” 就可以在第二行顯示=579;
2、連續運算。例如先計算123+456,結果為579,此時再按下“+” “1” 先在第一行顯示123+456+1,在第二行就會顯示=580,再按下“-” “9”,第一行顯示123+456+1-9,在第二行就會顯示=571,依次類推。
3、當輸入的字符是非法輸入時,在LCD第三行顯示 illeagle enter!然后自動清屏重啟計算器。
6設計過程遇到的問題、原因及解決方法
第五篇:飛思卡爾直立車經驗總結
飛思卡爾直立車經驗總結
1.車模運動任務分解:車模平衡、車模速度、車模方向。其中,車模的平衡是通過電機的正反向運動實現的;車模的速度是通過控制電機的轉速(實質是通過輸出不同占空比的PWM波來實現的);車模的方向控制則是通過電機的轉動差速來實現的。其中,車模的直立控制是關鍵,車模的速度控制在小車上表現為調節自身車模傾角達到以給定速度運行的目的。歸根結底,車模的三種控制最終都要回歸到通過調節PWM波分別控制兩個電機的轉速來實現。
2.陀螺儀和加速度計的安裝問題:兩傳感器最好安裝在車模中心或偏下位置,稍微偏上或偏一側也可以,偏一側的話會使方向陀螺儀在左右轉向時輸出有差異,造成不對稱的輸出,對于車模的方向調節會有一定的影響。另外需要注意:陀螺儀輸出的模擬電壓值很小,一般需要放大10倍左右,而加速度計的輸出相對陀螺儀而言較大,并且也符合AD轉換的模擬電壓的范圍,無需再放大。由于購買的陀螺儀和加速度計模塊都是廠家集成處理好的,外接的放大電路已經連接好了,故只需買現成的模塊使用就行了,無需再自個搭建陀螺儀的外接放大電路了。
3.陀螺儀和加速度計的功能:陀螺儀是用來測量車模的角加速度的,其輸出是與車模前傾或后仰的角速度成正比的模擬電壓值。加速度計是用來測量車模傾角的,其輸出是與車模傾斜角度成正比的模擬電壓值。注意,兩個傳感器的輸出的模擬電壓值都是正值,如果使用12位的AD轉換精度,那么它們輸出的電壓值都在0~4095之間,且都是整數。
4.車模的三種控制之間的關系:由于車模的直立控制是關鍵,因此,在控制其他兩個量時,應盡量減少對車模直立控制的干擾。三種控制最終都是通過控制車模的兩個電機來實現,故它們之間存在著一定的聯系。在分析一種控制時,可以先假設另外兩種控制都以達到平衡。從控制的角度看,車模作為一個控制對象,其控制輸入量是兩個電機的轉動速度。
5.傳感器極性問題:傳感器安裝在車模的前面或后面(在同一面正著按或反著按)時車模前傾或后仰對應的模擬電壓值可能會相反,這就是傳感器的極性問題。比如在車模的轉向控制中使用的車模轉向陀螺儀的Z軸朝上與朝下,對應的車模轉向角速度的極性恰相反,從而影響車模方向控制微分控制量與比例控制量之間的加減關系。測量車模傾角的陀螺儀應該水平安裝(必須注意),而測量車模轉向的陀螺儀則應該豎直安裝。車模在轉彎時既有平動又有轉動,如果陀螺儀安裝的不水平,就會在Z軸方向存在一個分量,該分量可能正也可能負,從而使車模控制仿佛感覺是在上下坡,引起車模的加減速運動。
6.電機控制的注意事項:對電機的控制要有一個過渡階段,不能一下子使其電壓從正變為負,否則輸出電流變化太大對電機不利。另外也要注意電機的死區電壓(在0的正負附近區域內)。電機控制中的PWM波的占空比值總是正的,最小為0.7.軟件部分說明:由于牽涉到車模的直立控制,算法的實現對時間要求較為苛刻,可用定時中斷實現相應的控制,但應注意每一步的用時都不應超過定時周期的最小劃分時間(如果是1ms定時,就不能超過1ms)。為了達到平滑控制的目的,可以將速度控制劃分在20*5的控制周期內來實現。算法的優化有時候也很重要,注意編程時的靈活性。
8.傳感器采集信息的處理:模擬量的采集的處理方法是多次采集求均值作為最終有效值,有時還要舍去前面剛上電時的幾個壞值。對采集回來的模擬電壓值要做單位的統一,故需要經過一定的系數的乘除的轉換才行。
9.直立控制中涉及到的幾個待定參數:車模的角度補償時間常數Tz(Tg)、陀螺儀比例系數Rgyro、加速度計比例系數Rz、直立陀螺儀的零偏值GyroZeroOffset_stand、方向陀螺儀的零偏值GyroZeroOffset_direction、加速度計的零偏值AccZeroOffset、加速度計的最大值ACC_MAX、最小值ACC_MIN、角度PID參數的P值和D值、速度PID參數的P值和I值、方向PID參數的P值和D值以及電機的死區電壓(也可以不管)等。建議以上各參數盡量都使用動態測量值,比如零偏值可以采用在當前環境下實時采集的值作為有效零偏值,這比預先在一種環境下采集好,到另一種環境下使用效果好,因為可以有效地抑制陀螺儀的溫漂所帶來的影響。
10.角度補償時間常數Tz的整定:該參數決定了抑制陀螺儀積分漂移的能力,也決定了車模速度控制中角度跟蹤的速度,同時決定了抑制重力加速度中干擾信號的能力。該參數的調整會同時影響到角度和速度的控制,其中對角度的影響較為顯著。一般取Tz在1~4之間的某個數值(可以是小數),最好取得稍微大一點,開始時可以取3~4秒左右。如果陀螺儀零點漂移很小,可以適當增加該補償時間常數;如果陀螺儀零點漂移大,那么可以逐步減小這個補償時間常數。在減小時間補償常數時,會發現車模會出現來回擺動的現象。這個現象和車模角度控制時,比例值過大時產生的車模擺動現象一致。故此時可以適當增加角度控制參數中微分參數D來抑制車模擺動的現象。其他參數的整定見官方方案及視頻。
11.程序中變量的管理:全局變量的定義形式為:g_fGyroscopeAngleSpeed(陀螺儀角速度變量),打頭的g表示global,全局的意思;下劃線后面的f表示float,單精度浮點型數據,后面的即為要定義的變量,使用英文定義,簡單、易讀。其中f可以換成c:char,n:int,lf:double,ln:long int。12.關于濾波的研究:傳感器采集回來的模擬電壓值總會摻雜很多干擾信號,為了濾除這些干擾必須進行合理的濾波處理。濾波可以采用軟件濾波和硬件濾波。兩種濾波方法各有優劣,但我們一般采用軟件濾波。軟件濾波常用的有互補濾波和卡爾曼濾波。互補濾波的效果不及卡爾曼濾波,但對于車模的直立控制已經足夠,為取得更好地濾波效果可以對卡爾曼濾波進行研究。看懂理論不難,關鍵是如何用程序去實現,這才是關鍵。
13.角度和速度PID參數正定的說明:角度調節:先調P后調D,P值過大,車模震蕩,此時增加D值,D過大,車模高頻抖動,此時再增加P值。P參數相當于倒立擺的回復力,這個參數必須大于重力加速度g的等效數值時車模才能夠保持直立。微分參數D相當于阻尼力,它會使車模盡快恢復穩定,保持靜止。速度調節:先調I后調P,I參數可以加快調速速度,過大則會造成車模的震蕩,車模來回擺動,此時增加P值,P過大車模前后震蕩。P參數的作用是抑制速度調節過程中的過沖,該參數過大會反過來削弱角度調節的P參數的作用。車模的各個參數分別整定完畢后,在車模進入賽道運行時有可能還要調節個別參數以使車模運行的效果更佳。
14.硬件部分介紹:硬件部分主要分為三個模塊:電源模塊、驅動模塊、控制模塊(主板部分<最小系統>)。設計電路時一定要考慮共地問題,設計的電路板必須要做到所有的元器件的參考地是同一個地。最好為每一個模塊設計一個開關,并配上指示燈。電路結構盡量精巧緊湊,充分利用空間。盡量減少杜邦線的使用,避免車模連線的復雜性。? 感悟:做一輛精致漂亮的小車是一門藝術,所以一開始就要為它的結構布局做好考慮,美的東西自己也
會喜歡,做工粗糙、瑕疵就會影響小車的整體美感,這無形中也影響到了自己對待所做小車的態度。車模的制作
過程喜悅與失落交替,但每個問題的解決都在證明著你的進步,你在收獲。做自己喜歡的,喜歡自己做的。
奮斗吧,騷年!