藍牙小車作品展示_第1頁
藍牙小車作品展示_第2頁
藍牙小車作品展示_第3頁
藍牙小車作品展示_第4頁
藍牙小車作品展示_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、河南理工大學電器開發(fā)部電子作品設計報告題目:手機控制的藍牙小車2015年 4月24日摘要本設計是做成這樣的一款藍牙小車,靈感來自于無線電-一本偶然碰到的書,書中對車的制作勾起了我對童年的回憶。我曾經(jīng)玩 過四驅(qū)賽車,也玩過遙控車,但還沒有玩過通過手機便可控制的藍牙 小車,所以頭腦發(fā)熱從京東上買了一輛小遙控車決定自己改裝一下。 當各種模塊都做好之后,我先仔細研究了幾天L298N電路原理,然后我下載了好幾種手機藍牙軟件通過比較確定了一款好用的。然后我對51單片機最小系統(tǒng)進行了簡化,只留下了晶振電路,這樣不僅不 影響整體功能的實現(xiàn),也減少了投入成本和工作量。通過改裝買來的遙控小車,將其遙控設備用手機藍

2、牙代替, 將從 360助手上下載的藍牙小車軟件作為上位機,將擁有hc06藍牙模塊的藍牙小車作為下位機,將 L298作為小車的電機驅(qū)動。可以實現(xiàn)小 車的前進、后退、左拐、右拐、剎車、重力感應、加速、減速等功能。 做完這件作品我的收獲有很多,對單片機的一些知識有了更深一步的 理解。同時給了我一種暢想,我暢想著未來我們將會用手機控制我們 所有的家用電器,不再需要那么多的遙控器了,我們的生活將會更便 捷。這也是我的夢想,用科技改變生活。目錄1概述42系統(tǒng)總體方案及硬件設計52.1 L298N 電機驅(qū)動模塊 52.2 HC06 藍牙模塊說明52.3 最小系統(tǒng)板說明53課程設計體會6附1:源程序代碼7附2

3、:系統(tǒng)原理圖231概述通過改裝買來的遙控小車,將其遙控設備用手機藍牙代替, 將從 360助手上下載的藍牙小車軟件作為上位機,將擁有hc06藍牙模塊的藍牙小車作為下位機,將 L298作為小車的電機驅(qū)動。可以實現(xiàn)小 車的前進、后退、左拐、右拐、剎車、重力感應、加速、減速等功能。在我眼里沒有完美的東西,只有更完美的東西,而快樂就在追 求完美的路上。小車能動后我發(fā)現(xiàn)從網(wǎng)上下載的程序有錯誤,導致小車的左拐右拐相反,并且前進后退都會拐彎,沒有加速減速。這樣的 作品我怎么能拿的出手?剛好那時電開給我們培訓中斷,定時器等內(nèi)容,再加上寒假我學了點C語言,便對程序進行了大刀闊斧的改革。 終于前進后退左拐右拐正常了

4、,可加減速怎么辦呢?之前通過學長我 稍微了解了 pwm,隨后我對pwm的原理深入了解了一下,我先通過 借用延時函數(shù)模擬pwm讓led燈漸亮漸滅隨后我應用到直流電機上, 結果,成功了!當然對于目前的作品,我還是覺得不太完美,我準備 再給他加上轉(zhuǎn)向燈、喇叭甚至更多功能。做完這件作品我的收獲有很多,對單片機的一些知識有了更深一 步的理解。同時給了我一種暢想,我暢想著未來我們將會用手機控制 我們所有的家用電器,不再需要那么多的遙控器了,我們的生活將會 更便捷。這也是我的夢想,用科技改變生活。2系統(tǒng)總體方案及硬件設計2.1 L298N電機驅(qū)動模塊298n是直流電機驅(qū)動集成電路,內(nèi)部包含4通道邏輯驅(qū)動電路

5、,可 以方便地驅(qū)動兩個直流電機,或一個兩相步進電機。1298n可接受標準ttl邏輯電平信號vss , 9腳vss可接4.5 7v的電壓。4腳vs接電 源電壓,vs電壓范圍vih為+ 2.546v2。1腳和15管腳下的發(fā)射 極分別單獨引出以便接入電流采樣電阻,形成電流傳感信號。1298可驅(qū)動2個電動機,此時outl , out2和out3 , out4之間可分別接電 動機。5、7、10、12腳接輸入控制電平,控制電機正反轉(zhuǎn);ena ,enb腳接控制使能端,控制電機的停轉(zhuǎn)3。l298n采取輸入輸出并聯(lián)的連接方式,即in1與in4 (5腳和12 腳)、in2 與 in3 (7 腳和 10 腳)、ou

6、t1 與 out4 (2 腳和 14 腳)、 out2與out3 (3腳和13腳)分別連接在一起。(電路圖見附錄 2)2.2 HC06藍牙模塊說明本作品使用的是hc06從機,設置其波特率為96002.3最小系統(tǒng)板說明經(jīng)過多次修改簡化本作品只使用了晶振電路,這樣不僅對作品的功能沒有影響而且減少了成本與工作量。(電路圖見附錄2)3課程設計及體會做成這樣的一款藍牙小車,靈感來自于無線電-一本偶然碰 到的書,書中對車的制作勾起了我對童年的回憶。 我曾經(jīng)玩過四驅(qū)賽 車,也玩過遙控車,但還沒有玩過通過手機便可控制的藍牙小車,所 以頭腦發(fā)熱從京東上買了一輛小遙控車決定自己改裝一下。買回來的當天我就把它拆了(

7、一副很敗家的樣子)。當時我對單片機知識還是 零基礎,對于串口、中斷、定時器什么的都不懂,于是我就去問負責 我的學長,我說:“我要做這么個車,但我對單片機還什么都不懂, 你說我可以嗎?”他說:“趕緊做吧,做好的話就可以進實驗室了。 ” 激情再一次被點燃,本來只想自己做個玩的,沒想到做好還能進實驗 室,下定決心get it!從圖書館借了基本單片機入門的書,便瘋狂的搞 起。做完這件作品之后我的收獲有很多,首先我對單片機的一些知識 有了更深一步的理解。同時給了我一種暢想,我暢想著未來我們將會 用手機控制我們所有的家用電器,不再需要那么多的遙控器了,我們 的生活將會更便捷。這也是我的夢想,用科技改變生活

8、。成功的道路是被無數(shù)的失敗鋪就的。當各種模塊都做好之后,我 迫不及待的將它們連接起來,連接藍牙之后卻發(fā)現(xiàn)小車沒像預想的那 樣動起來。我百度了藍牙模塊的連接方式后發(fā)現(xiàn) RXD與TXD應交叉 連接,交換之后,還是不能動。我又仔細研究了幾天L298N電路原理,發(fā)現(xiàn)原來自己的電路驅(qū)動連接有錯誤,改過之后小車還是沒反應, 再次陷入絕望。我又懷疑是不是手機軟件的是我又換了好幾個軟件, 都不行。持續(xù)一個星期沒有任何進展。有一天我在單片機上的txd上加了一個上拉電阻,小車奇跡般的動了,我簡直欣喜若狂,趕緊跑到 實驗室告訴丁柯學長,可到實驗室怎么連藍牙也連不上。 沮喪地又回 到宿舍研究了一下午用萬用表測量到底哪

9、的問題,可什么也沒發(fā)現(xiàn)。我又一次絕望。躺在床上想既然能動一次就一定能再動一次。 我要從 頭再來!我把原來的最小系統(tǒng)板扔掉,重新再焊一個,這次我把復位 電路甩掉,只留下晶振電路,重新連接,這一次沒再讓我失望藍牙連 接非常順利。在我眼里沒有完美的東西,只有更完美的東西,而快樂就在追求 完美的路上。小車能動后我發(fā)現(xiàn)從網(wǎng)上下載的程序有錯誤, 導致小車 的左拐右拐相反,并且前進后退都會拐彎,沒有加速減速。這樣的作 品我怎么能拿的出手?剛好那時電開給我們培訓中斷,定時器等內(nèi) 容,再加上寒假我學了點C語言,便對程序進行了大刀闊斧的改革。 終于前進后退左拐右拐正常了,可加減速怎么辦呢?之前通過學長我 稍微了解

10、了 pwm,隨后我對pwm的原理深入了解了一下,我先通過 借用延時函數(shù)模擬pwm讓led燈漸亮漸滅隨后我應用到直流電機上, 結果,成功了!當然對于目前的作品,我還是覺得不太完美,我準備 再給他加上轉(zhuǎn)向燈、喇叭甚至更多功能。*作品名稱:藍牙小車*作者:王懷江(新加入劉丁柯)*功能:實現(xiàn)通過手機藍牙控制小車*#i nclude #in elude #defi ne uchar un sig ned char#defi ne uint un sig ned int uchar Buffer 10 = 1;從串口接收的數(shù)據(jù)sbit en1 =P2A4;/* L298的 Enable A */sbit

11、en2 =P2A5;/* L298的 Enable B */sbits1 =P2A0;/* L298的 In put 1*/sbits2 =P2A1;/* L298的 In put 2*/sbits3 =P2A2;/* L298的 In put 3*/sbits4 =P2A3;/* L298的 In put 4*/uchart :=0;/*中斷計數(shù)器*/uchar m1=0;/*電機1速度值*/uchar m2=0;/*電機2速度值*/uint i,j;uchar tmp1, tmp2;/*電機當前速度值 */* 參數(shù)范圍:1us65535us(0.001ms65.535ms)* 運行環(huán)境:S

12、TC1232.000MHz*最大誤差:0.00%*作者日期:電器開發(fā)部-(2015-2-23)函數(shù)功能:微秒級精確延時*/# pragma optimize(4, SPEED)附1源程序代碼*void delay_us( un sig ned int n)exter n void _n op_(void);register un sig ned char i = n, j = (n 8);_nop_(); _ nop_(); _ nop_();if (-i) | j)do_n op_(); _ nop_(); _ no p_(); _ nop_(); _ nop_(); _ nop_(); _

13、nop_(); _nop_();if (OxFF = (i-) j-; else _n op_(); _inop_(); _ nop_(); _ nop_(); _ nop_(); _ nop_(); while (i | j);/*毫秒延時函數(shù)*/void delay_ms( un sig ned int n) while (n-) delay_us(1000);*名稱:Init()系統(tǒng)初始化*功能:初始化,晶振11.0592,波特率9600,使串口中斷,同時定時器0控制PWM ?*輸入:無*輸出:無*/void In it()TMOD = 0x22;/T/c方式寄存器PCON = 0x00

14、;/電源控制寄存器SCON = 0x50;/UART串口控制寄存器,此處為10位異步收發(fā)TH0 = 0x9b;高八位TL0 = 0x9b;/低八位TH1 = 0xFd;設置波特率9600TL1 = OxFd;T/c1計數(shù)寄存器低八位TR1 = 1;ET0 = 1;/*啟動定時器1/* ET0時定時計數(shù)器0溢出中斷允許控制位ET1時定時計數(shù)器1溢出中斷允許控制位*/開串口中斷/開總中斷m1 = abs(speed);/取速度的絕對值(返回數(shù)字的絕對值)TR0 = 1;ES = 1;EA = 1;void motorL( char speed)if(speed 0)s1 = 0;s2 = 1;el

15、se if(speed = 0)s1 = 1;s2 = 1;elses1 = 1;s2 = 0;void motorR( char speed)m2 = abs(speed);/*電機2的速度控制*/if(speed 0)s3 = 0;s4 = 1;else if(speed = 0)s3 = 1;s4 = 1;elses3 = 1;s4 = 0; void GO(void)motorL(50);motorR(O);void BACK()motorL(-20);motorR(O);void TR(void)motorL(20); motorR(-20);void TL(void)motorL(

16、-20);motorR(20);void STOP(void)si = 1;s2 = 1;S3 = 1;s4 = 1;void SPEED1(void)通過不同的速度,實現(xiàn)加減速 s2 = 1; s3 = 1; s4 = 1;si = 0; delay_us(1);si = 1; delay_us(10000);void SPEED2(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(100);s1 = 1; delay_us(1000);void SPEED3(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(2

17、00);s1 = 1; delay_us(1000);void SPEED4(void)s2 = 1; s3 = 1; s4 = 1; s1 = 0; delay_us(300);si = 1; delay_us(100);void SPEED5(void)s2 = 1; s3 = 1; s4 = 1;si = 0; delay_us(400);s1 = 1; delay_us(100);void SPEED6(void)s2 = 1; s3 = 1; s4 = 1; s1 = 0; delay_us(500); s1 = 1; delay_us(100);void SPEED7(void)s

18、2 = 1; s3 = 1; s4 = 1; s1 = 0; delay_us(600); s1 = 1; delay_us(100);void SPEED8(void)s2 = 1; s3 = 1; s4 = 1; si = 0; delay_us(700); si = 1; delay_us(100);void SPEED9(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(800);s1 = 1; delay_us(100);void SPEED10(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(900)

19、;s1 = 1; delay_us(100);void SPEED11(void)s2 = 1; s3 = 1; s4 = 1;si = 0; delay_us(1000);si = 1; delay_us(100);void SPEED12(void)s2 = 1; s3 = 1; s4 = 1; s1 = 0; delay_us(1100);s1 = 1; delay_us(100);void SPEED13(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(1200);s1 = 1; delay_us(100);void SPEED14(void)

20、s2 = 1; s3 = 1; s4 = 1; s1 = 0; delay_us(1300);void SPEED15(void)s2 = 1; s3 = 1; s4 = 1;si = 0; delay_us(1400);si = 1; delay_us(100);void SPEED16(void)s2 = 1; s3 = 1; s4 = 1; s1 = 0; delay_us(1500);s1 = 1; delay_us(100);void SPEED17(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(1600);s1 = 1; delay_us

21、(100);void SPEED18(void) si = 1; delay_us(100);void SPEED19(void)s2 = 1; s3 = 1; s4 = 1; si = 0; delay_us(1900);s1 = 1; delay_us(100);void SPEED20(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(2000);s1 = 1; delay_us(100);void SPEED21(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(2100);s1 = 1; delay_us

22、(100);void SPEED22(void)s2 = 1; s3 = 1; s4 = 1;si = 0; delay_us(2200);si = 1; delay_us(100);void SPEED23(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(2300);s1 = 1; delay_us(100);void SPEED24(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(2400);s1 = 1; delay_us(100);void SPEED25(void)s2 = 1; s3 = 1; s4

23、 = 1;s1 = 0; delay_us(2500);void SPEED26(void)s2 = 1; s3 = 1; s4 = 1; si = 0; delay_us(2600);si = 1; delay_us(100);void SPEED27(void)s2 = 1; s3 = 1; s4 = 1;s1 = 0; delay_us(2700);s1 = 1; delay_us(100);void mai n(void)delay_ms(100);初始化In it();while(1)switch(BufferO)case 1: STOP();break;case 4: G0();b

24、reak;case 5: TL();break;case 7: BACK(); break;case 6: TR();break;case 0x7D:SPEED1(); break;case 0x82:SPEED2(); break;case 0x87:SPEED3(); break;case 0x8C:SPEED4(); break;case 0x91:SPEED5(); break;case 0x96:SPEED6(); break;case 0x9B:SPEED7(); break;case 0xA0:SPEED8(); break;case 0xA5:SPEED9(); break;case 0xAA:S

溫馨提示

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

最新文檔

評論

0/150

提交評論