基于單片機(jī)系統(tǒng)開(kāi)發(fā)的C程序設(shè)計(jì)教學(xué)方法探討
論文關(guān)鍵詞:C程序設(shè)計(jì) 單片機(jī)系統(tǒng)開(kāi)發(fā) 教學(xué)方法
論文摘要:“C程序設(shè)計(jì)”課程是電子類專業(yè)基礎(chǔ)必修課,主要是為單片機(jī)編程服務(wù),該課程的教學(xué)效果直接影響到后續(xù)單片機(jī)課程的學(xué)習(xí)。本文結(jié)合單片機(jī)系統(tǒng)開(kāi)發(fā)的特點(diǎn),探討了C程序設(shè)計(jì)教學(xué)方法,為后續(xù)單片機(jī)課程的學(xué)習(xí)打下基礎(chǔ)。
隨著微電子技術(shù)的發(fā)展和廣泛應(yīng)用,基于單片機(jī)上的系統(tǒng)開(kāi)發(fā),C語(yǔ)言作為一種高級(jí)的編程語(yǔ)言,越來(lái)越受到人們的關(guān)注,F(xiàn)在,無(wú)論是嵌入式系統(tǒng)開(kāi)發(fā)企業(yè)還是電子設(shè)計(jì)競(jìng)賽、畢業(yè)設(shè)計(jì)等,一般都以C語(yǔ)言為主要開(kāi)發(fā)工具。結(jié)合單片機(jī)的系統(tǒng)資源,用C語(yǔ)言開(kāi)發(fā)符合實(shí)際工程需要的單片機(jī)系統(tǒng),對(duì)于編程者來(lái)說(shuō)就有重要的意義。
1.C在單片機(jī)教學(xué)中的地位
C語(yǔ)言作為一種結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言,它是程序開(kāi)發(fā)工具中使用最廣泛一門(mén)編程語(yǔ)言。C語(yǔ)言具有很強(qiáng)的功能性、結(jié)構(gòu)性、可移植性。用C語(yǔ)言編寫(xiě)程序比匯編更符合人們的思考習(xí)慣,程序開(kāi)發(fā)者可以擺脫與硬件不必要的接觸,更專心地考慮程序的功能和算法而不是考慮一些細(xì)節(jié)問(wèn)題,這樣就減少了開(kāi)發(fā)和調(diào)試的時(shí)間。由于它具有良好的程序結(jié)構(gòu),適用于模塊化程序設(shè)計(jì),因此采用C語(yǔ)言設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)程序時(shí),采用結(jié)構(gòu)化的、自頂向下、逐步求精的程序設(shè)計(jì)方法,將功能模塊化,由不同的模塊完成不同的功能。這樣可使整個(gè)應(yīng)用系統(tǒng)程序結(jié)構(gòu)清晰,易于調(diào)試和維護(hù)。
2.單片機(jī)教學(xué)現(xiàn)狀
單片機(jī)技術(shù)是現(xiàn)代電子工程領(lǐng)域一門(mén)飛速發(fā)展的技術(shù),是現(xiàn)代電子技術(shù)中的一項(xiàng)不可缺少的重要技術(shù)。隨著技術(shù)的不斷進(jìn)步和日益普及,單片機(jī)技術(shù)已滲透到各個(gè)領(lǐng)域,影響著我們的日常生活和工作。因此電子技術(shù)及相關(guān)專業(yè)的學(xué)生學(xué)習(xí)單片機(jī)技術(shù)越來(lái)越成為社會(huì)發(fā)展的需求。當(dāng)前,各大高校的電子、計(jì)算機(jī)類專業(yè)均開(kāi)設(shè)單片機(jī)課程。
《單片機(jī)》是我院電子系一門(mén)實(shí)踐性極強(qiáng)的專業(yè)主干課程,是我校電子系重點(diǎn)建設(shè)課程之一,是本專業(yè)學(xué)生的必修課程。為了提高我系單片機(jī)教學(xué)效果,我們對(duì)單片機(jī)教學(xué)進(jìn)行了大膽改革,使用C語(yǔ)言開(kāi)發(fā)單片機(jī),且課程的設(shè)計(jì)打破了學(xué)科體系的框架,將單片機(jī)和C語(yǔ)言的相關(guān)知識(shí)和技能按“項(xiàng)目”進(jìn)行整合,并將《C程序設(shè)計(jì)》課程列為電子類專業(yè)核心基礎(chǔ)課程之一。因此,《C程序設(shè)計(jì)》課程教學(xué)效果的好壞,將直接影響學(xué)生后續(xù)專業(yè)課程的學(xué)習(xí)。
從近幾年我系《C程序設(shè)計(jì)》課程的教學(xué)效果來(lái)看,學(xué)生普遍反映該課程的學(xué)習(xí)比較困難,課程的語(yǔ)法知識(shí)較多,理解和記憶都不太容易,即使記住了語(yǔ)法知識(shí)也不能靈活應(yīng)用;不知道學(xué)習(xí)C語(yǔ)言究竟有何用處,學(xué)完C后不能很好地利用C進(jìn)行單片機(jī)小型系統(tǒng)的開(kāi)發(fā),缺乏知識(shí)的靈活應(yīng)用能力。因此,根據(jù)以往單片機(jī)教學(xué)所得經(jīng)驗(yàn),我覺(jué)得教師有必要在《C程序設(shè)計(jì)》課程的教學(xué)過(guò)程中在以下幾個(gè)方面引起足夠的重視,并在教學(xué)中加以改進(jìn),為后續(xù)單片機(jī)課程的學(xué)習(xí)打下堅(jiān)實(shí)的基礎(chǔ)。
3.《C程序設(shè)計(jì)》課程教學(xué)方法探索
3.1上好每堂課,激發(fā)學(xué)生的學(xué)習(xí)興趣
語(yǔ)言程序設(shè)計(jì)教學(xué)被認(rèn)為是一種需要師生雙方改進(jìn)的一門(mén)課程,因?yàn)榇蠖鄶?shù)語(yǔ)言教材中通常先給出一般的語(yǔ)法格式,然后逐步講解語(yǔ)法要點(diǎn),再給出實(shí)例。這種順序灌輸會(huì)使學(xué)生失去學(xué)習(xí)的興趣,所以我認(rèn)為在課堂教學(xué)環(huán)節(jié)應(yīng)采取以學(xué)生為主體、以教師為主導(dǎo)的教學(xué)模式,要求學(xué)生自己先看有關(guān)知識(shí)點(diǎn),并識(shí)記。教師采取精講實(shí)例,在這過(guò)程中引出相關(guān)知識(shí)點(diǎn),然后再舉一類似實(shí)例讓學(xué)生自己分析,鞏固知識(shí)點(diǎn)。教師應(yīng)把主要精力放在算法的分析和各語(yǔ)句語(yǔ)法的具體應(yīng)用上,同時(shí)培養(yǎng)學(xué)生自學(xué)能力,采取互動(dòng)機(jī)制,迫使學(xué)生主動(dòng)學(xué)習(xí)。
3.2注重演示,強(qiáng)化實(shí)驗(yàn),提高實(shí)踐操作能力
因?yàn)槭谡n對(duì)象是一年級(jí)新生,所以教師多用通俗易懂的語(yǔ)言進(jìn)行講解,多舉實(shí)例,使學(xué)生容易理解和消化。在教學(xué)過(guò)程中,盡量采用講解、演示方法,如在講解經(jīng)典算法后,按照理論方法所述,用DEV C++軟件進(jìn)行編程演示,從而加深學(xué)生對(duì)教學(xué)內(nèi)容的理解。
在教學(xué)過(guò)程中,教師應(yīng)將理論知識(shí)與實(shí)驗(yàn)內(nèi)容進(jìn)行整合,根據(jù)教學(xué)內(nèi)容并結(jié)合實(shí)際應(yīng)用設(shè)置實(shí)驗(yàn)題目,讓每個(gè)學(xué)生獨(dú)立完成。遇到學(xué)生不能解決的問(wèn)題,教師應(yīng)利用多媒體進(jìn)行演示解決問(wèn)題的過(guò)程,從而加深學(xué)生對(duì)教學(xué)內(nèi)容的理解并提高實(shí)踐操作能力。
3.3培養(yǎng)良好的編程風(fēng)格
3.3.1優(yōu)化程序
由于在許多工業(yè)測(cè)控領(lǐng)域中的嵌入式系統(tǒng)都采用單片機(jī)開(kāi)發(fā),它們所需要的計(jì)算和控制工作日趨復(fù)雜,其中軟件的設(shè)計(jì)是最復(fù)雜和困難的,工作量大,特別是對(duì)于控制系統(tǒng),設(shè)計(jì)人員需要考慮單片機(jī)的軟硬件資源分配,但是單片機(jī)系統(tǒng)是一種資源十分有限的系統(tǒng)。這主要表現(xiàn)在CPU和片內(nèi)結(jié)構(gòu)簡(jiǎn)單、程序存儲(chǔ)器資源的不足。因此在用C語(yǔ)言進(jìn)行單片機(jī)開(kāi)發(fā)時(shí),如何使用好這些有限的資源就顯得十分重要。雖然C語(yǔ)言具有許多的優(yōu)點(diǎn),但是生成的代碼相對(duì)要長(zhǎng),基本多占用存儲(chǔ)空間20%—50%。因而,在“C程序設(shè)計(jì)”課程教學(xué)中,教師不僅要教會(huì)學(xué)生如何編寫(xiě)程序,而且應(yīng)在教學(xué)過(guò)程中向?qū)W生灌輸優(yōu)化代碼的思想,讓學(xué)生從大一開(kāi)始就有開(kāi)發(fā)項(xiàng)目的一些經(jīng)驗(yàn)。
3.3.2合理選用數(shù)據(jù)類型
C語(yǔ)言在程序開(kāi)發(fā)中提供了的豐富的數(shù)據(jù)類型,尤其是關(guān)于用戶界面開(kāi)發(fā)和一些動(dòng)畫(huà)與圖像技術(shù)的實(shí)現(xiàn)。但是在開(kāi)發(fā)單片機(jī)系統(tǒng)時(shí),我們要按照實(shí)際需要,合理地選用數(shù)據(jù)類型。C語(yǔ)言中有Char等少數(shù)的數(shù)據(jù)類型是機(jī)器語(yǔ)言直接支持的數(shù)據(jù)類型,用此類數(shù)據(jù)類型的語(yǔ)句所生成的代碼較短,而其它的數(shù)據(jù)類型如整型、浮點(diǎn)型等數(shù)據(jù)要有一定的內(nèi)部程序或內(nèi)部函數(shù)的支持,相對(duì)來(lái)說(shuō)較復(fù)雜的數(shù)據(jù)類型的語(yǔ)句生成的代碼也復(fù)雜,不利于轉(zhuǎn)化成單片機(jī)的代碼。因此,在“C程序設(shè)計(jì)“教學(xué)過(guò)程中,要向?qū)W生適當(dāng)說(shuō)明選擇合適數(shù)據(jù)類型的好處,并盡可能地減少程序中使用的數(shù)據(jù)類型的種類,為以后學(xué)生的單片機(jī)學(xué)習(xí)打好基礎(chǔ)。
3.3.3灌輸模塊化程序設(shè)計(jì)思想
在普通微型計(jì)算機(jī)上進(jìn)行C語(yǔ)言程序開(kāi)發(fā)設(shè)計(jì)時(shí),只需考慮程序功能實(shí)現(xiàn),而不必考慮程序代碼的長(zhǎng)短。但是在單片機(jī)上進(jìn)行C語(yǔ)言程序設(shè)計(jì)就必須考慮系統(tǒng)的硬件資源,要求設(shè)計(jì)的軟件程序結(jié)構(gòu)是合理、緊湊和高效的。同一任務(wù),有時(shí)用主程序完成是合理的,但有時(shí)需子程序效率最高,占用資源最少;有時(shí)并不是程序的算法越簡(jiǎn)單、長(zhǎng)度越短越好,由于有一些算法要調(diào)用一些內(nèi)部的子程序和函數(shù),生成的機(jī)器代碼質(zhì)量反而較低。不同的算法對(duì)程序代碼效率影響很大。因此,在進(jìn)行“C程序設(shè)計(jì)”教學(xué)時(shí),教師應(yīng)適當(dāng)向?qū)W生灌輸模塊化程序設(shè)計(jì)的思想,在不影響程序功能實(shí)現(xiàn)的情況下可以采用一些優(yōu)化算法,并且把程序分成若干個(gè)功能獨(dú)立的模塊,為學(xué)生今后的單片機(jī)項(xiàng)目開(kāi)發(fā)做好鋪墊。
4.結(jié)語(yǔ)
單片機(jī)系統(tǒng)采用C語(yǔ)言開(kāi)發(fā)與設(shè)計(jì),極大地促進(jìn)了單片機(jī)在生產(chǎn)、生活各個(gè)領(lǐng)域的應(yīng)用,提高了程序開(kāi)發(fā)效率。因而,C語(yǔ)言學(xué)習(xí)效果的好壞,對(duì)今后單片機(jī)課程的學(xué)習(xí)具有深遠(yuǎn)的影響。除了講解C語(yǔ)言的基本語(yǔ)法外,更重要的是改善教學(xué)方法,利用各種方法培養(yǎng)學(xué)生的學(xué)習(xí)興趣,并向?qū)W生灌輸良好的編程風(fēng)格與編程方法,為今后的單片機(jī)課程的學(xué)習(xí)打下良好的基礎(chǔ)。
參考文獻(xiàn):
[1]向艷.“C程序設(shè)計(jì)”課程教學(xué)體系和模式探討[J].計(jì)算機(jī)教育,2010,(3):112-114.
[2]董蘊(yùn)寶,潘旭君.淺談C語(yǔ)言在單片機(jī)中的程序設(shè)計(jì)[J].科技信息,2009,(13):59-67.
[3]張洪靜.電類專業(yè)C語(yǔ)言教學(xué)探討[J].電腦知識(shí)與技術(shù),2010,(29):8280-8281.
[4]林益平,趙福建.單片機(jī)C語(yǔ)言課程教學(xué)的探索與實(shí)踐[J].電氣電子教學(xué)學(xué)報(bào),2007,(2):104-106.
[5]石愛(ài)榮.C語(yǔ)言程序設(shè)計(jì)課程教學(xué)探析[J].警官教育認(rèn)論壇,2007.2:158-160.
[6]譚浩強(qiáng).C語(yǔ)言程序設(shè)計(jì)[M].清華大學(xué)出版社,2004.
相關(guān)論文查閱:大學(xué)生論文、工商財(cái)務(wù)論文、經(jīng)濟(jì)論文、教育論文 熱門(mén)畢業(yè)論文
【基于單片機(jī)系統(tǒng)開(kāi)發(fā)的C程序設(shè)計(jì)教學(xué)方法探討】相關(guān)文章:
關(guān)于的C語(yǔ)言程序設(shè)計(jì)與企業(yè)崗位對(duì)接探討02-27
基于創(chuàng)新實(shí)踐的單片機(jī)教學(xué)方法分析論文02-28
探討職業(yè)中專數(shù)學(xué)教學(xué)方法07-04
關(guān)于高中音樂(lè)教學(xué)方法的探討12-06
基于單片機(jī)的倒車?yán)走_(dá)設(shè)計(jì)開(kāi)題報(bào)告11-21
基于單片機(jī)的水箱水位控制開(kāi)題報(bào)告11-20
目前護(hù)理專業(yè)教學(xué)方法的應(yīng)用分析與探討12-06
教學(xué)方法多樣化探討論文02-26
- 相關(guān)推薦