朱新波



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