彭皆彩 楊安德
嵌入式軟件編程作為導航工程專業的核心課程,具有很強的理論性和實踐性。隨著單片機應用領域對單片機功耗、運算性能、開發工具、系統整合等方面的要求越來越高,意法半導體(ST)公司推出的STM32F1 系列微處理器得到越來越多的應用。其采用Cortex-M3 內核,具有較低的電壓范圍、高速的運算能力、優異的實時性能、杰出的功耗控制、極低的開發成本、豐富的外設,在嵌入式系統中、低端領域應用日漸廣泛。因此許多高校進行了嵌入式課程的教學改革,引入STM32F1 系列微處理器的教學,該課程教學過程中實驗和實踐環節非常重要。但受新冠肺炎疫情影響,難以開展線下實驗課程,因此提出基于Proteus 的STM32 嵌入式線上課堂教學模式,將大量應用實例通過軟件仿真實現,將工程實例貫穿理論教學過程,增強學生的感性認識,降低理論學習的難度,并且提高學生的學習興趣,從而提高教學質量。
Proteus 8 軟件是英國Lab Center Electronics 公司開發的電路設計與分析、電路實物仿真以及印制電路板設計軟件,它可以仿真、分析各種模擬電路、集成電路和單片機及外圍器件。
目前,Proteus 支持主流的CPU 類型,如8051/52、AVR、PIC10/12、PIC16/18/24/33、HC11、BasicStamp、MSP430、8086、DSP Piccolo、ARM7、CortexM3、Cortex- M0、Arduino等,并且隨著Proteus 版本升級支持的CPU 類型還在繼續增加。Proteus 也支持嵌入式系統的常見外圍電路的系統仿真:SPI 調試、RS232 動態調試仿真、LCD 系統仿真、I2C 模擬調試、輸出LED、輸入鍵盤等。

圖1 STM32F103R6 實驗系統電路圖
Proteus 提供了豐富的器件庫,豐富的器件庫:超過50000種元器件,可以輕易完成電路原理圖的編輯。圖1 是在Proteus仿真軟件中搭建的基于STM32F103R6 芯片的嵌入式系統電路圖,系統包括STM32 的最小系統電路、AD 采樣、按鍵、LED、并口lcd1602 顯示等。

圖2 Keil 編程環境下編寫程序

圖3 測試效果圖
在Keil 編程環境下編寫STM32F103R6 應用程序,并將編譯產生的可執行HEX 文件下載到Proteus 中已經搭建好的仿真平臺中運行。
本文介紹了一種基于Proteus 平臺的“嵌入式編程”課程教學的方法,Proteus 可以憑借其強大的仿真和在線調試能力在嵌入式的教學和嵌入式系統的人才培養過程中發揮較大的作用。學生可以在沒有硬件平臺的情況下學習相關的實驗系統。實踐證明基于Proteus 的STM32 的仿真在教學和實際開發中具有較大的使用價值,提高了嵌入式線上課堂教學質量,提升了學生嵌入式系統軟硬件綜合開發能力。