標題: 遙控玩具車的制作體會 [打印本頁]

作者: 9geren    時間: 2014-4-1 02:46
標題: 遙控玩具車的制作體會
       經(jīng)過三個月的努力 終于攻克了 遙控車的主要程序,在這三個月中,不知道失敗多少次。報廢的電子元器件數(shù)不清,但總起來說,汗水沒有白流,總算有所收獲!
        總結(jié)一下自己從中得到的教訓(xùn),
在硬件制作過程中,有點馬虎大意,細微之處總能考慮到,但是大局問題卻考慮不周全。一。一次竟然將正負電源接反。致使鉭電容(為了提高電路品質(zhì),舍棄鋁電解,全部用鉭電容)當場爆炸,碎片差點傷到我。為了防止發(fā)生類似事件,以后的電路雖然都加入二極管防止電源接反。但是問題只是暫時的,在以后的設(shè)計中,如果電路要求嚴謹 要考慮二極管的 壓降和電流。如果電路中要用到更大的電流,自然二極管的體積就變得很大,占用了板子的很大的面積,此不是萬全之策,多考慮加熔絲或者自恢復(fù)式保險電阻。二。在考慮遙控模塊的使用過程中,忽略了供電電壓的問題,盡管說明書中提到1.5-12V,自己用了5V,結(jié)果還是燒掉?偨Y(jié)一下,國產(chǎn)產(chǎn)品不是很牢靠,應(yīng)該往最小值方向來考慮,比如這次 用3.6V 也許就能避免這個錯誤。三,要使用第三方產(chǎn)品的時候 一定要注意電源的正負極 和一些關(guān)鍵點的點位,這次LCD12864 中,竟然把 并行口和串行口的控制管腳給短路了,原版在出廠時已經(jīng)將此控制腳接成 低電平,也就是串行口狀態(tài),而我做的電路中要做成并口數(shù)據(jù)接口,需要將此腳接成高電平。結(jié)果短路。幸好電源是自己設(shè)計的帶自保護功能,否則燒掉一大片元器件。由此可見 在用第三方開發(fā)的產(chǎn)品中一定要注意細節(jié)問題。比如信號電平的匹配,電源電壓,各種控制引腳的電平。自己現(xiàn)在用的是5V的電壓及信號,也許將來涉及到3V 或者其他電壓信號,注意協(xié)調(diào)和匹配。
在軟件考慮過程中,對C語言還是的學(xué)習(xí)還是不夠深刻,沒有語感,代碼不夠簡潔。一,遙控車前后左右四個狀態(tài),分別寫了四條相同的代碼驅(qū)動,如果合理使用指針的話,只寫一個指針子程序,然后四個狀態(tài)分別調(diào)用就能很好的完成。二,對C特有的庫函數(shù)了解的太少,在LCD12864顯示過程中,送出的時間 年月周日時分秒 用一個數(shù)組 然后 用一條SPrentf 皆可掃描成字符串直接送出,結(jié)果自己以前還是挨個 把16進制換算成ASIIC碼 然后 再挨個調(diào)用顯示函數(shù),7個數(shù)據(jù) 調(diào)用了13個顯示函數(shù),廢話太多,造成程序運行緩慢。在單片機中,資源甚少,惜字如金。不像在個人電腦中那樣隨便寫,寫多少都可以。三,多多用好仿真軟件ISIS, 由于自己沒有做成功AVR JTAG仿真器,買一個又嫌棄太貴,不能硬件仿真,這次多虧用了仿真軟件 解決了不少問題。 還有就是系統(tǒng)比較龐大的時候,按照部分來試驗。比如這次 電子時鐘, 分三步, 第一步是單片機控制液晶屏 ,第二步單片機的按鍵控制 ,第三步 單片機和DS1302的控制。同樣制作遙控車的步驟也如此, 先用單片機控制步進電機試驗, 然后手控板的  按鍵與單片機   再是手控板單片機的輸出控制信號,今天終于做到手控板與步進電機驅(qū)動主板的直線通訊問題,以后需要考慮 遙控信號傳輸問題。四,多讀多考別人寫的程序,看了葉大鵬的教學(xué)視頻后,需要感覺葉大師教會了我AVR單片機,的確哈佛結(jié)構(gòu)的單片機比馮洛伊曼結(jié)構(gòu)(學(xué)校學(xué)的51)的好用多了,竟然寫的代碼像他了,應(yīng)該博眾人之多長,創(chuàng)造出一套自己的寫作風(fēng)格。感覺寫一套好的代碼,跟寫一篇號的文章一樣。別人讀了 就能體會到作者的水平。創(chuàng)造出自己的一套庫函數(shù),到用時隨用隨調(diào)出,省的自己重新,浪費時間和精力,比如這次延時函數(shù) 宏定義 和 兩套液晶屏的函數(shù) 都編在頭文件里。用時 直接掉用,省事又省力!三。寫代碼程序要細心,雖然編譯器能指出格式書寫錯誤,但是不能指出控制對象的錯誤, 比如 驅(qū)動一個液晶屏, 漏掉使能函數(shù),編譯器是不會報錯的,但是液晶屏就是不顯示,讓你很難去排查。五,匯編語言不可棄,匯編是硬件語言,雖說自己寫用C語言,但是大師級別的仍然對匯編情有獨鐘,效率最高,做到會讀 就了不起了,做到讀匯編寫C 就能無敵了。
   硬件和軟件協(xié)調(diào)問題,因為自己對硬件的熟悉程度 遠遠超越軟件,致使早早的焊出了板子,程序一直出不來,最近才慢慢啃出來,以后翻過來 加深自己的軟件學(xué)習(xí)力度,先做軟件,然后考慮硬件!電子的最高境界猶如浩瀚的大海,自己只是一頁扁舟只能在岸邊邊緣徘徊,為了兒時的夢想,奮發(fā)圖強!





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1