|
來到東軟實訓(xùn)一個月啦,今天才做完一個項目,這次做的項目是有史以來最大耗時最長的一個(一個月),
但是我做的可是大大的不盡如人意。。!本人一般不隨便自己手寫日志的,轉(zhuǎn)載的倒是不少,今天有必要自己寫寫來總結(jié)一下,一切就是因為自己的體會太深啦。。我想我應(yīng)該及時記下寫什么。就算是這個項目沒白做吧。!
在這里做項目與學(xué)校有很大的不同。先說在學(xué)校吧!在學(xué)校只要項目(或者說是練習(xí)的作業(yè),借用面試的人話那是練習(xí))到手,直接敲代碼,完成了就完成了,項目都比較小。直接給老師看就可以啦,交就交工程上去,基本不要寫文檔什么的。還有就是分組好了以后一個組只有幾個在做,其他的人就不說啦。在這里我感覺到了軟件工程這門課的重要性,從一個項目的開始(需求分析),到一個項目的完成(發(fā)布)都無時不刻的有軟件工程的身影。確實,在這里做項目除了編碼我們還做了很多事情,而這些事情在學(xué)校我從來沒做過,但是確是在做項目的過程中讓人發(fā)現(xiàn)不能不沒有這些東西,(軟件工程的指導(dǎo)意義可是很實用的)。需求分析-》概要設(shè)計-》詳細設(shè)計-》編碼設(shè)計-》測試-》-》發(fā)布-》維護。在整個過程當(dāng)中編碼只是一個小的環(huán)節(jié)。其實還有很多重要的東西以前做項目的時候沒去做。我想以后在公司也會像是在這里這樣開發(fā)吧。!
下面我就談?wù)勎以谧鲰椖康倪^程當(dāng)中的心得體會啦,上面的也算是吧。呵呵。
項目的名字叫“智能家電控制系統(tǒng)”。就是利用PLC2013這種型號的ARM7開發(fā)板模擬遠程家庭當(dāng)中電器的操控,這里是上位機與下位機的交互來控制(上位機是PC是遠程控制,下位機是開發(fā)板,)通過串口協(xié)議來實現(xiàn)通信:當(dāng)連接成功后通過點擊上位機的GUI界面對應(yīng)按鈕可以讓下位機對應(yīng)的LED燈亮/ 滅。并可以實時在LCD上顯示電器的狀態(tài)信息,上位機也可以實現(xiàn)電器的定時功能,以及接受下位機反饋的信息(AD轉(zhuǎn)換信息,電器操作反饋信息等)。下位機按鍵也可以定時,可以控制電器的開關(guān),中斷模擬警報并傳給上位機。具體項目要求就不寫啦。我負責(zé)的是控制模塊,項目中還有一個重要的問題是是否使用 ucosii操作系統(tǒng)來進行控制(可以用系統(tǒng),也可以裸機開發(fā))。一開始我是想用的,并且這個想法一直延續(xù)到編碼階段。但是當(dāng)我們組把所有模塊基本做好了要整合的時候我犯了一個從詳細設(shè)計就開始的錯誤,那就是所有的操作都是在ucosii系統(tǒng)下完成的。包括我寫的控制偽代碼都是在系統(tǒng)下寫的。當(dāng)我加入 LED與按鍵的代碼時還可以沒有遇到問題,能夠達到預(yù)期的效果任務(wù)之間能夠正常的調(diào)度切換。但是當(dāng)我把LCD加入的時候就什么問題都出來啦。!剛開始連顯示都顯示不出來,當(dāng)與組員費了半天讓LCD顯示出來的時候我卻不能讓LCD通過按鍵來切換屏幕,就因為這個我糾結(jié)了2-3天,浪費了我大量的時間,這個時候已經(jīng)到了項目的整合階段啦!~·時間變得越來越緊啦。無奈只得放棄系統(tǒng),改用非系統(tǒng)的控制了,但是我開始一心在做把所有的模塊整合到系統(tǒng)里去,控制代碼只寫了偽代碼,還沒經(jīng)過測試,這時我感覺到來不及啦有點緊。最后我們組只做出了一些基本的功能。我也煩啦。我不可謂沒有發(fā)功夫,只是到最后都是無用功,有苦難言啊。到最后草草項目答辯,草草收場。
回國頭來想一下,當(dāng)初要用ucosii系統(tǒng)不能說是一種錯誤的選擇,因為學(xué)習(xí)嵌入式你必須會用嵌入式實時操作系統(tǒng)而ucosii是最典型實時操作系統(tǒng),雖然在這次的項目當(dāng)中沒有用到ucosii的精髓部分就比如:信號量啊,郵箱啊,消息隊列啊,中斷嵌套,優(yōu)先級翻轉(zhuǎn)啊等,只是利用到了簡單的任務(wù)切換而已。但是我犯了一個大的錯誤,這是當(dāng)初老師給我講的,要一切功能在裸機上實現(xiàn)再移植系統(tǒng)進去,我一開始就全部在系統(tǒng)里面做而且糾結(jié)了好久。這可以認為是項目做得不好的主要原因之一,此外還有一個重要的原因是自己的編碼能力實在是不怎么的,要有待加強。!~~還有一個原因就是我和組員之間的交流甚至是組與組之間的交流太少啦。做控制的和其他模塊交流尤其重要。當(dāng)然還有其他的一些原因,我在此就不一一列舉,不過我會吸取教訓(xùn)。
項目做得雖然不盡如人意,但是我自我覺得收獲還是蠻多的,軟件開發(fā)中的團隊精神尤為重要,一個人的能力再強,沒有團隊的支持是絕對不行的,蓋茨都是如此,何況我呢!~~以上是我對本次實訓(xùn)的一點體會,雖然已經(jīng)過去,但是我希望影響,學(xué)到的就不會過去,消失在腦海中。但是我應(yīng)該關(guān)上身后的這道門。我要學(xué)習(xí)的還有很多,我只是個菜鳥。 |
|