• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      Cortex-M3嵌入式系統(tǒng)課程的實(shí)踐教學(xué)方法探討

      2021-04-09 02:10:29上海理工大學(xué)機(jī)械工程學(xué)院張會林
      電子世界 2021年21期
      關(guān)鍵詞:加速度計(jì)內(nèi)核寄存器

      上海理工大學(xué)機(jī)械工程學(xué)院 張會林

      本文分析了嵌入式系統(tǒng)課程教學(xué)內(nèi)容的內(nèi)涵,闡述了在Cortex-M3嵌入式系統(tǒng)課程教學(xué)中開展理論與實(shí)驗(yàn)結(jié)合的必然性。從Cortex-M3的處理器結(jié)構(gòu)、片內(nèi)外設(shè)接口與編程、C/OS-II的移植到自平衡小車實(shí)例開發(fā)角度,分析了Cortex-M3嵌入式系統(tǒng)教學(xué)的難點(diǎn)。對電氣類本科專業(yè),開展嵌入式系統(tǒng)課程理論與實(shí)驗(yàn)教學(xué),在實(shí)驗(yàn)過程中進(jìn)行多種實(shí)踐方法探討。從教學(xué)效果來看,本文方法對嵌入式系統(tǒng)課程的理論教學(xué)、實(shí)驗(yàn)開發(fā)的實(shí)踐方法及實(shí)驗(yàn)任務(wù)安排都有很好的指導(dǎo)意義。

      ARM芯片是英國ARM公司開發(fā)的RISC結(jié)構(gòu)微處理器,它有高性能、高代碼密度、小硅片面積等優(yōu)點(diǎn),在嵌入式系統(tǒng)領(lǐng)域得到了廣泛的應(yīng)用。Cortex系列是ARM公司在ARM架構(gòu)之后推出的新型ARM處理器,有A、R、M三個(gè)系列。Cortex-M3內(nèi)核是ARM公司于2004年推出的的Cortex-M系列微控制器,是ARM V7體系結(jié)構(gòu),可用于低成本微處理器、汽車電子、消費(fèi)電子和無線技術(shù)等領(lǐng)域。Cortex-M3內(nèi)核的處理器本身資源不復(fù)雜,特別適合高等院校本科生對ARM的體系結(jié)構(gòu)學(xué)習(xí),同時(shí)可移植小型開源操作系統(tǒng)C/OS-II,能加深學(xué)生對嵌入式操作系統(tǒng)認(rèn)識。

      1 Cortex-M3嵌入式系統(tǒng)課程的教學(xué)內(nèi)容與培養(yǎng)要求

      Cortex-M3嵌入式系統(tǒng)課程是電氣工程及其自動化專業(yè)的重要基礎(chǔ)課,該課程的主要任務(wù)是:通過本課程的學(xué)習(xí),使學(xué)生對嵌入式系統(tǒng)原理與技術(shù)有系統(tǒng)的、全面的了解;掌握Cortex-M3的概念、組成和體系結(jié)構(gòu)特點(diǎn);通過對C/OS-II詳細(xì)剖析,掌握RTOS實(shí)時(shí)操作的原理,對其內(nèi)核結(jié)構(gòu)、任務(wù)調(diào)度等有深入的了解,培養(yǎng)嵌入式系統(tǒng)的設(shè)計(jì)和開發(fā)應(yīng)用能力。

      通過學(xué)習(xí)本課程后,應(yīng)達(dá)到下列基本要求:(1)熟悉Cortex-M3微處理器的體系結(jié)構(gòu)及應(yīng)用特點(diǎn);(2)熟悉UART、Timer、I2C、A/D等常用片內(nèi)外設(shè)所對應(yīng)寄存器的配置,為實(shí)際應(yīng)用開發(fā)打下基礎(chǔ);(3)熟悉C/OS-II內(nèi)核及如何進(jìn)行C/OS-II的應(yīng)用編程等技術(shù)點(diǎn)。

      2 Cortex-M3嵌入式系統(tǒng)課程的教學(xué)難點(diǎn)

      學(xué)習(xí)Cortex-M3嵌入式系統(tǒng)課程的重點(diǎn)和難點(diǎn)關(guān)鍵在片內(nèi)外設(shè)的寄存器配置及C/OS-II應(yīng)用開發(fā),如果沒有掌握片內(nèi)外設(shè),筆者認(rèn)為很難把握一個(gè)嵌入式系統(tǒng)。雖然在Cortex-M3嵌入式的開發(fā)過程中,應(yīng)用層編程幾乎可以不熟悉片內(nèi)外設(shè)也可以開發(fā),但那是浮于表面,很難深入和提高自己的層次。選擇C/OS-II這樣的操作系統(tǒng)開發(fā),對本科教學(xué)最為合適。

      本課程教學(xué)的難點(diǎn)在于以下幾點(diǎn):

      (1)Cortex-M3指令集

      ARM7、ARM9內(nèi)核都支持有ARM指令集和Thumb指令集,而Cortex-M3內(nèi)核是Thumb-2指令集。了解Thumb-2指令集,可以更深層次的理解Cortex-M3的啟動過程。

      (2)片內(nèi)外設(shè)的寄存器配置與接口技術(shù)

      Cortex-M3系列微處理器有眾多的片內(nèi)外設(shè),不同的需求要有不同的配置,它的寄存器配置是學(xué)習(xí)中的重點(diǎn)與難點(diǎn)。

      (3)μC/OS-II操作系統(tǒng)的原理及應(yīng)用

      μC/OS-II是一個(gè)有64個(gè)優(yōu)先級的搶占式微內(nèi)核實(shí)時(shí)操作系統(tǒng),它的代碼固定,便于移植,編譯后只有幾kB,系統(tǒng)代碼可裁剪,已在超過40種不同架構(gòu)的8位到64位的微處理器上運(yùn)行,在控制領(lǐng)域有著廣泛應(yīng)用。μC/OS-II的主要特點(diǎn)有:它有一個(gè)占先式的內(nèi)核,也就是已就緒的高優(yōu)先級任務(wù)可以剝奪正在運(yùn)行的低優(yōu)先級任務(wù)的CPU使用權(quán);56個(gè)用戶任務(wù)的優(yōu)先級可以動態(tài)調(diào)整;操作系統(tǒng)運(yùn)行時(shí),可以通過信號量、郵箱和消息隊(duì)列實(shí)現(xiàn)在不同任務(wù)間同步以及交換數(shù)據(jù);操作系統(tǒng)大小可裁剪,便于選擇適合系統(tǒng)的ROM和RAM的容量。

      (4)兩輪自平衡小車系統(tǒng)原理及軟硬件設(shè)計(jì)

      兩輪自平衡小車是利用自身動力使小車保持相對平衡,是一個(gè)動態(tài)平衡的過程。維持小車平衡的動力來自車輪的運(yùn)動,它由兩個(gè)步進(jìn)電機(jī)共同驅(qū)動。對小車的控制可以分解為三個(gè)任務(wù):控制小車車輪正反轉(zhuǎn),使小車保持直立平衡;控制小車的傾角,實(shí)現(xiàn)小車前后運(yùn)動和速度的控制,實(shí)質(zhì)是通過控制電機(jī)的轉(zhuǎn)速實(shí)現(xiàn);控制小車兩個(gè)電機(jī)之間的轉(zhuǎn)速差,實(shí)現(xiàn)轉(zhuǎn)向控制。兩輪自平衡小車的控制分解為三個(gè)任務(wù)后,系統(tǒng)的軟件編程更加結(jié)構(gòu)化。

      小車的硬件分為三個(gè)模塊,分別是主控模塊、小車姿態(tài)獲取模塊以及電機(jī)驅(qū)動模塊。主控模塊采用Cortex-M3的最小系統(tǒng),開發(fā)非常方便。通過加速度計(jì)和陀螺儀獲取小車姿態(tài),理論上只需要一個(gè)兩軸加速度計(jì)和一個(gè)單軸陀螺儀。兩軸加速度計(jì)可以測量出小車的傾角,但是加速度計(jì)的瞬時(shí)誤差較大;陀螺儀通過角度積分可以獲得小車角度,經(jīng)過積分會產(chǎn)生累計(jì)誤差,并且會越來越大。所以,采用卡爾滋曼濾波算法對系統(tǒng)的陀螺儀和加速度計(jì)獲得的角度進(jìn)行數(shù)據(jù)融合,計(jì)算出小車實(shí)際的傾斜角。芯片MPU6050集成了三軸加速度計(jì)和三軸陀螺儀,能得到小車的角度和角速度。小車姿態(tài)獲取模塊中,使用芯片MPU6050來獲取數(shù)據(jù),以I2C通信的方式向Cortex-M3傳遞數(shù)據(jù)。兩個(gè)電機(jī)的PWM用Cortex-M3的定時(shí)器的8個(gè)通道輸出,兩組H橋驅(qū)動電路分別控制2個(gè)直流電機(jī)。小車的軟件開發(fā),在MDK5.4開發(fā)環(huán)境上編程以及Jlink在線調(diào)試完成。

      3 Cortex-M3嵌入式系統(tǒng)課程的實(shí)踐教學(xué)方法探討

      首先,必須合理安排嵌入式系統(tǒng)課程的教學(xué)任務(wù)。因?yàn)楫?dāng)前的本科專業(yè)需要學(xué)習(xí)的課程門類已大為增加,每門專業(yè)課的學(xué)時(shí)都不多,突出要點(diǎn)才可以更加有效。建議這門課可安排48學(xué)時(shí)理論課,另加16學(xué)時(shí)實(shí)驗(yàn)課。這就要求理論教學(xué)應(yīng)與基礎(chǔ)實(shí)驗(yàn)結(jié)合來講解,例如嵌入式系統(tǒng)課程的理論教學(xué)就不能像匯編語言那樣每條指令語句講解,而是應(yīng)結(jié)合具體基礎(chǔ)實(shí)驗(yàn)講解寄存器配置與片內(nèi)外設(shè)接口技術(shù)。

      其次,注重理論教學(xué)的實(shí)踐性。本課程中有很多的實(shí)踐環(huán)節(jié),針對性實(shí)驗(yàn)應(yīng)是理論教學(xué)的重要補(bǔ)充。先熟悉開發(fā)環(huán)境,可以給后續(xù)開發(fā)帶來便利。因?yàn)橐夥ò雽?dǎo)體公司對Cortex-M3的支持,開發(fā)工具中有很多庫函數(shù),開發(fā)者熟悉后,上手快。特別適合如全國大學(xué)生電子設(shè)計(jì)競賽(時(shí)間短,編程量大),避免復(fù)雜程序結(jié)構(gòu)讓參賽者陷入困境,選擇Cortex-M3的系統(tǒng)可以加快開發(fā)。因此,嵌入式系統(tǒng)課程的實(shí)驗(yàn),讓學(xué)生先完成基礎(chǔ)性項(xiàng)目,然后在拓展實(shí)驗(yàn)中完成一些傳統(tǒng)8位單片機(jī)不能實(shí)現(xiàn)的功能,突出Cortex-M3系統(tǒng)設(shè)計(jì)的優(yōu)勢。例如TFT LCD顯示+觸摸屏,重點(diǎn)在人機(jī)界面;UART、無線或有線通信模塊接口,關(guān)注通信協(xié)議與寄存器配置;μC/OS-II應(yīng)用突出了實(shí)時(shí)操作系統(tǒng)的多任務(wù)操作實(shí)現(xiàn)等。通過這些實(shí)踐,讓學(xué)生明白諸如ISP下載方式、ARM指令與寄存器配置等只是提高動手能力,而高質(zhì)量完成實(shí)驗(yàn)開發(fā)項(xiàng)目、提高設(shè)計(jì)能動性與創(chuàng)造性最為重要,從而能夠有效提高自身工程實(shí)踐能力的教學(xué)效果。

      再次,安排多種實(shí)驗(yàn)項(xiàng)目進(jìn)行多層次的實(shí)踐教學(xué)。理論教學(xué)活動中,在課本內(nèi)容之外,安排基礎(chǔ)實(shí)驗(yàn)教學(xué),便于學(xué)生熟悉實(shí)驗(yàn)系統(tǒng)。設(shè)置的實(shí)驗(yàn)項(xiàng)目需要給出實(shí)驗(yàn)?zāi)康摹?shí)驗(yàn)原理、思考題和實(shí)驗(yàn)報(bào)告的具體要求,同時(shí)還應(yīng)包含以下3類實(shí)驗(yàn)項(xiàng)目:(1)與接口相關(guān)的基礎(chǔ)實(shí)驗(yàn)項(xiàng)目,對于該類實(shí)驗(yàn),學(xué)生只須將DEMO板提供的程序?qū)氲焦こ蹋匆缶幾g通過,并在實(shí)驗(yàn)系統(tǒng)上能觀察到現(xiàn)象即可;(2)功能性實(shí)驗(yàn)項(xiàng)目,在基礎(chǔ)實(shí)驗(yàn)上進(jìn)一步發(fā)揮;(3)系統(tǒng)開發(fā)實(shí)驗(yàn)項(xiàng)目,屬于自主設(shè)計(jì)或創(chuàng)新的實(shí)驗(yàn)項(xiàng)目。這樣安排使學(xué)生可以循序漸進(jìn),提高綜合實(shí)踐能力。

      最后,課程實(shí)踐與電氣工程專業(yè)特點(diǎn)結(jié)合。一般認(rèn)為嵌入式系統(tǒng)技術(shù)難點(diǎn)在于片內(nèi)外設(shè)的寄存器配置。對此,根據(jù)電氣類專業(yè)的特點(diǎn),教師需改進(jìn)現(xiàn)行的嵌入式系統(tǒng)教學(xué)模式,以Cortex-M3體系結(jié)構(gòu)為基點(diǎn),在基礎(chǔ)實(shí)驗(yàn)講解中引出片內(nèi)外設(shè)的寄存器配置,用少數(shù)幾個(gè)典型的實(shí)例將寄存器配置中最關(guān)鍵的內(nèi)容解釋清楚,使學(xué)生短時(shí)間內(nèi)就能有效把握片上外設(shè)寄存器的配置與接口技術(shù)之間關(guān)系,而不必用花大量的時(shí)間去學(xué)習(xí)ARM指令與接口技術(shù)。要求教師合理分配實(shí)驗(yàn)時(shí)間,提高學(xué)生的實(shí)踐能力,促進(jìn)他們的學(xué)習(xí)積極性。

      結(jié)束語:在嵌入式系統(tǒng)課程教學(xué)中進(jìn)行實(shí)踐教學(xué)方法探索,有利于培養(yǎng)電氣工程專業(yè)“寬口徑、復(fù)合型”人才。保持嵌入式系統(tǒng)教學(xué)內(nèi)容的系統(tǒng)性和完整性,使學(xué)生通過大量寄存器配置及工程實(shí)踐,掌握嵌入式系統(tǒng)理論與實(shí)驗(yàn)開發(fā)結(jié)合的方法,該模式取得了良好的效果,主要表現(xiàn)為:(1)理論課重點(diǎn)分析Cortex-M3處理器內(nèi)部結(jié)構(gòu)、Cortex-M3的最小系統(tǒng)、I/O及中斷編程、定時(shí)器原理及應(yīng)用、μC/OS-II內(nèi)核和移植、自平衡小車系統(tǒng)原理及軟硬件設(shè)計(jì)的6個(gè)主題內(nèi)容,讓學(xué)生明確學(xué)習(xí)任務(wù)。(2)通過接口實(shí)驗(yàn),初步掌握Cortex-M3系統(tǒng)最重要的應(yīng)用基礎(chǔ)。(3)通過8個(gè)典型示例的設(shè)計(jì)練習(xí),使學(xué)生能迅速學(xué)會使用Cortex-M3庫文件的編程方法和利用μC/OS-II完成多任務(wù)應(yīng)用程序開發(fā),達(dá)到創(chuàng)新型人才能力培養(yǎng)目標(biāo)。

      猜你喜歡
      加速度計(jì)內(nèi)核寄存器
      萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
      基于加速度計(jì)的起重機(jī)制動下滑量測量
      強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
      Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
      基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
      Linux內(nèi)核mmap保護(hù)機(jī)制研究
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      基于遺傳算法的加速度計(jì)免轉(zhuǎn)臺標(biāo)定方法
      常溫下硅微諧振加速度計(jì)零偏穩(wěn)定性的提高
      四加速度計(jì)組合的測試方法研究
      封丘县| 仙桃市| 竹山县| 阳城县| 黔西| 呈贡县| 腾冲县| 大英县| 莫力| 调兵山市| 德庆县| 浮山县| 沙洋县| 姚安县| 临安市| 阿鲁科尔沁旗| 陆丰市| 安多县| 页游| 虹口区| 麻江县| 哈巴河县| 赤峰市| 西乌珠穆沁旗| 修文县| 淳化县| 大渡口区| 高陵县| 洛川县| 陇川县| 左权县| 内丘县| 高台县| 巫山县| 成武县| 宁国市| 鸡东县| 响水县| 科技| 六盘水市| 淄博市|