朱新波
摘要:分析了高校C語言課程教學(xué)現(xiàn)狀和存在的問題,提出了基于教學(xué)機器人的C語言教學(xué)方式,通過教學(xué)機器人的運用,調(diào)動學(xué)生學(xué)習(xí)的積極性,增強學(xué)生的實踐能力,提高教學(xué)成效。
關(guān)鍵詞:C語言;教學(xué)機器人;單片機;教學(xué)改革
中圖分類號:G642? ? ?文獻標識碼:A
文章編號:1009-3044(2021)30-0164-02
開放科學(xué)(資源服務(wù))標識碼(OSID):
Teaching Reform and Exploration of C Language Based on Teaching Robot
ZHU Xin-bo
(Lijiang College, Guangxi Normal University, Guilin 541006, China)
Abstract:This paper analyses the current situation and existing problems of C language teaching in Colleges and universities, and puts forward a C language teaching method based on teaching robots. Through the application of teaching robots, students enthusiasm of learning can be mobilized, students' practical ability can be enhanced and teaching effectiveness can be improved.
Key words:C language; teaching robot; MCU; Teaching Reform
C語言程序設(shè)計是許多高校計算機、電子等工科專業(yè)的必修課,其目標是培養(yǎng)學(xué)生的計算機思維能力以及解決問題的能力。作為一門實踐性較強的課程,C語言在培養(yǎng)學(xué)生的創(chuàng)新能力、團隊協(xié)作能力上,也有著很強的促進作用,因此如何在教學(xué)過程中突出實踐,鞏固學(xué)生對基礎(chǔ)知識的理解與應(yīng)用,對教學(xué)效果有著更好的促進作用。
1 C語言教學(xué)現(xiàn)狀及存在的問題
目前大部分高校C語言教學(xué)依然采取的是傳統(tǒng)模式,主要表現(xiàn)在“教師講解,學(xué)生聽課、練習(xí)操作”,課堂教學(xué)依然圍繞以基礎(chǔ)知識、語法為中心,以控制結(jié)構(gòu)、數(shù)組、字符串、函數(shù)、指針、位處理等內(nèi)容來實施,這種教學(xué)方式強調(diào)以老師和課本為主體,關(guān)注的是理論知識,側(cè)重的是教師的教,但是對于學(xué)生來說,往往容易陷入被動學(xué)習(xí)的狀態(tài),缺點主要有以下兩個方面:
(1)知識枯燥,學(xué)習(xí)動力不足:傳統(tǒng)教學(xué)方式更方便教師很好地講授編程思想,傳授語法細節(jié)、程序設(shè)計的技巧和方法,但過度語法化的教學(xué)形式,會使學(xué)生失去了應(yīng)用能力的塑造,且沉迷于理論技巧的局限,更不利于學(xué)生的創(chuàng)新能力的培養(yǎng)。另外,大部分獨立學(xué)院的學(xué)生基礎(chǔ)知識相對薄弱,偏理論的教學(xué)形式也會降低學(xué)生們對課程學(xué)習(xí)的興趣。
(2) 實踐性差:以作者所在的獨立學(xué)院為例,超過半數(shù)的學(xué)生覺得,他們的基礎(chǔ)語法知識學(xué)了很多,但大部分卻不知道如何實際運用,尤其是不知道如何把C語言和自己所學(xué)專業(yè)或興趣愛好相關(guān)聯(lián),不少學(xué)生覺得這是一門純思維訓(xùn)練課,跟著老師過完了課本知識,無法實踐落地,最終影響了學(xué)習(xí)的效果。
2教學(xué)實驗平臺搭建
針對上述當(dāng)前C語言教學(xué)中遇到的問題,不難發(fā)現(xiàn)如何激發(fā)學(xué)生學(xué)習(xí)熱情,并能學(xué)以致用,是課程改革的關(guān)鍵。
隨著科技的進步,以C語言為主要開發(fā)語言的嵌入式系統(tǒng)被廣泛運用到各行各業(yè),如機器人、四旋翼飛行器、物流無人車等,因此設(shè)計一種基于嵌入式平臺的C語言項目式教學(xué)系統(tǒng),通過實踐操作的方式來引導(dǎo)學(xué)生,在操作中傳授理論,在項目中培養(yǎng)創(chuàng)新能力,不僅能解決學(xué)生們學(xué)無所用的困惑,還能在實踐中鍛煉學(xué)生的創(chuàng)新應(yīng)用能力,受到越來越多高校和培訓(xùn)機構(gòu)的青睞。
2.1 硬件平臺搭建
教學(xué)機器人平臺的選擇是教學(xué)改革探索的關(guān)鍵,如今市場上的處理器種類繁多,性能各異,高端的ARM處理器不僅硬件結(jié)構(gòu)復(fù)雜,使用成本高,還往往交叉了多個學(xué)科的知識點,如Cortex-A系列處理器,應(yīng)用平臺綜合了操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)、控制工程等課程的知識,這些對于還在學(xué)習(xí)C語言的大學(xué)低年級學(xué)生來說不切實際,而C51單片機不僅硬件電路簡單、軟件編程容易,經(jīng)濟實惠又具備良好的穩(wěn)定性,是C語言教學(xué)的首選平臺。
經(jīng)過對比分析,我們選用了C51系列單片機家族中Atmel公司生產(chǎn)的AT89S52單片機為核心的C語言教學(xué)機器人,其內(nèi)含8k 字節(jié)ISP,可反復(fù)擦寫次數(shù)多達1000多次,其兼容標準的MCS-51指令系統(tǒng),是當(dāng)前高校單片機課程試驗平臺和眾多嵌入式應(yīng)用系統(tǒng)的首選處理器。本文的教學(xué)平臺系統(tǒng)框架如下圖1所示。
該機器人平臺通過搭配紅外傳感器、觸覺傳感模塊、顏色傳感模塊、通信模塊等,使得該教學(xué)機器人具備串口通信、紅外收發(fā)、循跡、避障等功能。
2.2 軟件庫函數(shù)
為了方便學(xué)生使用,特別是我校的計算機類學(xué)生的課程主要偏向上層應(yīng)用軟件,對底層硬件涉及不足,因此必須事先準備好關(guān)鍵庫函數(shù)以方便調(diào)用,讓學(xué)生把精力集中在上層應(yīng)用軟件設(shè)計,從而無須過多涉及底層硬件電路即可輕松控制機器人。設(shè)計好的庫函數(shù)均放置在工程中的uart.h文件中,部分庫函數(shù)如下表1所示:
3 C語言機器人教學(xué)方案設(shè)計
3.1設(shè)計原則
趣味性原則:只有激發(fā)學(xué)習(xí)興趣,才能充分調(diào)動學(xué)生學(xué)習(xí)積極性,使得他們主動融入課堂并提升動手能力的教學(xué)目的。
實踐性原則:通過實踐操作的方式,使學(xué)生能把理論知識運用于項目當(dāng)中,在應(yīng)用中體會到C語言的實用性。
3.2設(shè)計內(nèi)容
課堂教學(xué)的形式是:教師課堂講授原理、基本知識及應(yīng)用注意事項,學(xué)生則主要集中在是編碼、測試等實踐操作上,整個教學(xué)過程體現(xiàn)“做中學(xué)、學(xué)中做”教學(xué)思想。圍繞著項目,自己動手完成代碼編寫、編譯、燒寫、調(diào)試等環(huán)節(jié),把枯燥的概念與鮮活的實物緊密結(jié)合,以達到學(xué)以致用的目的。
教學(xué)設(shè)計的目標是:根據(jù)教學(xué)大綱的要求,結(jié)合教學(xué)機器人平臺的資源,達到實踐教學(xué)目的,培養(yǎng)創(chuàng)新性應(yīng)用型人才。表2為作者在教學(xué)中所使用的教學(xué)項目與C語言知識點對照表:
通過上述6個實踐項目,以C語言教學(xué)機器人為對象,充分覆蓋了C語言教學(xué)大綱,還能設(shè)計創(chuàng)新性拓展項目,不僅學(xué)習(xí)了C語言知識,鍛煉了實踐能力,還提高了創(chuàng)新思維,進一步提升了學(xué)生的綜合素質(zhì)。
4結(jié)論
本文分析了當(dāng)前高等院校傳統(tǒng)C語言課程教學(xué)中存在的問題,設(shè)計了C語言機器人項目式教學(xué)新模式,將C語言的理論知識和教學(xué)機器人的實際運行效果相關(guān)聯(lián),激發(fā)了學(xué)生的學(xué)習(xí)興趣,提高了學(xué)生編程能力和創(chuàng)新能力,經(jīng)過近2年的實際運行,教學(xué)效果明顯,基本實現(xiàn)預(yù)期教學(xué)目標,對計算機及電子類相關(guān)專業(yè)的應(yīng)用型課程的教學(xué)改革具備一定的示范作用。
參考文獻:
[1] 譚浩強.C語言程序設(shè)計教程[M].3版.北京:清華大學(xué)出版社,2013.
[2] 熊中剛,羅素蓮.基于單片機的“C語言”教學(xué)方法探討[J].教育教學(xué)論壇,2014(10):66-67.
[3] 鞠陽.基于C語言的單片機與接口技術(shù)課程教學(xué)改革探索[J].中國教育技術(shù)裝備,2012(24):80-82.
[4] 黃建燈.《C語言程序設(shè)計》教學(xué)改革探討[J].電子世界,2012(23):172.
【通聯(lián)編輯:梁書】