一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

干貨分享 | 《使用面向?qū)ο蟮乃枷刖帉憜纹瑱C(jī)程序》

瑞薩MCU小百科 ? 來源:未知 ? 2023-07-17 12:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

2297a9b8-2457-11ee-962d-dac502259ad0.gif

本文內(nèi)容轉(zhuǎn)自百問科技,原文:百問網(wǎng)新作《使用面向?qū)ο蟮乃枷刖帉?a target="_blank">單片機(jī)程序》

自2005年以來,我一直從事Linux開發(fā),但對(duì)于單片機(jī)始終沒有產(chǎn)生興趣,原因是覺得單片機(jī)太過簡(jiǎn)單了,F(xiàn)lash和RAM只有幾十KB,感覺就像是在螺螄殼里面打坐,能展現(xiàn)出什么新花樣呢?直到最近兩年,我經(jīng)歷了一次震撼。

我有幸在某機(jī)器人公司看到了一個(gè)基于單片機(jī)和rtos開發(fā)的貓砂機(jī)器人代碼,拋開rtos內(nèi)核源碼,他們自己實(shí)現(xiàn)的源文件就超過了3000個(gè)。這讓我意識(shí)到,單片機(jī)也可以用于開發(fā)大型項(xiàng)目!我開始思考如何管理如此龐大的代碼量?

在Linux項(xiàng)目中,我們不需要關(guān)注寄存器級(jí)別的操作,那么在單片機(jī)領(lǐng)域是否也可以做到呢?

在Linux項(xiàng)目中,我們將項(xiàng)目拆分為多個(gè)子系統(tǒng),并進(jìn)一步將子系統(tǒng)拆分為多個(gè)層級(jí),編程時(shí)要么使用C++的類,要么使用C語言的結(jié)構(gòu)體,那么在單片機(jī)領(lǐng)域,這種做法可行嗎?

隨著單片機(jī)性能的提升,我們能夠?qū)崿F(xiàn)的項(xiàng)目功能也越來越多,對(duì)單片機(jī)工程師的要求也越來越高。過去,我們只需要一個(gè)while循環(huán)來處理所有事情;現(xiàn)在,我們引入了RTOS,使用多任務(wù)系統(tǒng)。過去,我們以面向過程的方式編寫程序,需要什么就寫什么;現(xiàn)在,我們以面向?qū)ο蟮姆绞骄帉懗绦颍瘸橄蟪鲆粋€(gè)類或結(jié)構(gòu)體,再進(jìn)行編程。

剛接觸面向?qū)ο缶幊虝r(shí),你可能會(huì)覺得:這是什么鬼?明明一個(gè)簡(jiǎn)單的功能,為什么要?jiǎng)?chuàng)建多個(gè)結(jié)構(gòu)體并進(jìn)行注冊(cè)?

過去只需要幾行代碼就能解決問題,現(xiàn)在卻分散到2、3個(gè)文件中了!然而,在我的教學(xué)生涯中,一旦學(xué)生們掌握了面向?qū)ο蟮木幊趟枷?,他們就再也回不去了:他們無法忍受過去的代碼。

我一直想在單片機(jī)領(lǐng)域推廣“面向?qū)ο蟮木幊趟枷搿?,但一直沒有找到合適的單片機(jī)以及對(duì)應(yīng)的軟件庫來支持我的想法。直到我開始使用瑞薩ARM內(nèi)核的RA MCU及其軟件包FSP,我確信這就是講解面向?qū)ο缶幊虝r(shí)需要用到的單片機(jī)和軟件包。瑞薩MCU的軟件包FSP就是基于面向?qū)ο蟮乃枷刖帉懙摹?/p>

對(duì)于每個(gè)設(shè)備,我們可以定義好接口,抽象出相應(yīng)的結(jié)構(gòu)體,并對(duì)其進(jìn)行實(shí)現(xiàn)。再結(jié)合FSP RASC圖形化配置工具和代碼生成工具,我們使用瑞薩MCU時(shí),變得異常簡(jiǎn)單!我們不再需要關(guān)注寄存器級(jí)別的代碼,也不再需要重復(fù)造輪子,可以將精力集中在業(yè)務(wù)邏輯和算法上。

得益于瑞薩強(qiáng)大的MCU、強(qiáng)大的軟件開發(fā)工具,也得益于瑞薩和RA生態(tài)工作室提供的支持,我們團(tuán)隊(duì)編寫了《ARM嵌入式系統(tǒng)中面向?qū)ο蟮哪K編程方法》

  • 講解面向?qū)ο缶幊淘?a target="_blank">單片機(jī)開發(fā)中的使用

  • 結(jié)合FSP軟件包實(shí)例分析外設(shè)驅(qū)動(dòng)

  • 講解如何使用RASC配置片上設(shè)備

  • 教你如何編寫面向?qū)ο缶幊?/p>

  • 更講解如何操作外接的模塊:引入大型項(xiàng)目中的編程思想

單片機(jī)工程師們,很多沒有軟件工程的概念,編寫的程序結(jié)構(gòu)不好,不易移植、不易擴(kuò)展。軟件專業(yè)的工程師們,又沒有嵌入式的基礎(chǔ),總覺得跟硬件打交道很難。

適用范圍

  • 給單片機(jī)工程師介紹軟件工程的概念,把項(xiàng)目拆分為子系統(tǒng),分層設(shè)計(jì)子系統(tǒng),編寫代碼時(shí)使用面向?qū)ο蟮乃枷?/span>

  • 給軟件專業(yè)的工程師講解硬件知識(shí)、教你編寫驅(qū)動(dòng)程序

  • 想提升編程水平的工程師:現(xiàn)在MCU的性能越來越強(qiáng),能做的項(xiàng)目越來越大,一個(gè)C文件里實(shí)現(xiàn)所有功能的方法不適合大項(xiàng)目了

目錄

22c6ae7a-2457-11ee-962d-dac502259ad0.jpg

DshanMCU-RA6M5開發(fā)板

231ca37a-2457-11ee-962d-dac502259ad0.jpg236afc50-2457-11ee-962d-dac502259ad0.jpg239fcc96-2457-11ee-962d-dac502259ad0.jpg23fd4c72-2457-11ee-962d-dac502259ad0.jpg2445571a-2457-11ee-962d-dac502259ad0.jpg

1

END

1


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17918

    瀏覽量

    362788
  • 瑞薩
    +關(guān)注

    關(guān)注

    36

    文章

    22376

    瀏覽量

    87896

原文標(biāo)題:干貨分享 | 《使用面向?qū)ο蟮乃枷刖帉憜纹瑱C(jī)程序》

文章出處:【微信號(hào):瑞薩MCU小百科,微信公眾號(hào):瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    STC單片機(jī)范例程序

    電子發(fā)燒友網(wǎng)站提供《STC單片機(jī)范例程序.zip》資料免費(fèi)下載
    發(fā)表于 06-04 16:27 ?1次下載

    完整版—單片機(jī)編程思想(推薦下載?。?/a>

    單片機(jī)的編程思想,希望能幫助大家寫出簡(jiǎn)明的代碼 內(nèi)容簡(jiǎn)介 以單片機(jī)裸環(huán)境為基礎(chǔ),為編程者定義了一個(gè)微操作系統(tǒng)(MOS)的編程環(huán)境,并面向應(yīng)用中不斷提高的需求對(duì)編程策略進(jìn)行了深度剖析與
    發(fā)表于 04-16 15:06

    單片機(jī)代碼性能起飛的七大技巧

    單片機(jī)程序比軟開少一些,真正想編寫出高效的代碼,還是要積累很多年的。? ? ? ? ?? 在做研發(fā)工程師的10年里,我經(jīng)歷過幾個(gè)公司,看過很多工程師寫的代碼,但真正能讓我跪著看完的,極少。哪怕是
    的頭像 發(fā)表于 11-16 10:21 ?1110次閱讀
    讓<b class='flag-5'>單片機(jī)</b>代碼性能起飛的七大技巧

    基于狀態(tài)機(jī)面向對(duì)象思想設(shè)計(jì)按鍵檢測(cè)模塊

    嵌入式入門學(xué)習(xí)的教程里面,按鍵原理普遍被認(rèn)為是“很簡(jiǎn)單”的知識(shí)點(diǎn)之一,按鍵輸入檢測(cè)的原理,無非就是通過CPU不斷掃描按鍵引腳的電平狀態(tài),或者采用單片機(jī)引腳外部中斷方式,然后在死循環(huán)或者中斷服務(wù)程序里面處理按鍵被按下
    的頭像 發(fā)表于 11-14 11:44 ?932次閱讀
    基于狀態(tài)<b class='flag-5'>機(jī)</b>和<b class='flag-5'>面向</b><b class='flag-5'>對(duì)象</b>的<b class='flag-5'>思想</b>設(shè)計(jì)按鍵檢測(cè)模塊

    STM8S003F的作用是什么,如何編寫單片機(jī)程序去控制?

    下STM8S003F的作用是什么,軟件控制那幾個(gè)部分,哪些是不需要軟件控制的,該如何編寫單片機(jī)程序去控制? 如何實(shí)現(xiàn)STM8 單片機(jī)與其他芯片的通訊?需要實(shí)現(xiàn)與哪些芯片的通訊?IIC
    發(fā)表于 11-05 07:46

    單片機(jī)編程語言有哪些選擇

    單片機(jī)(Microcontroller Unit,MCU)編程是指為單片機(jī)編寫程序的過程,這些程序控制單片機(jī)的行為和功能。單片機(jī)廣泛應(yīng)用于嵌
    的頭像 發(fā)表于 11-01 14:13 ?2312次閱讀

    單片機(jī)怎么寫入程序

    程序通常涉及以下幾個(gè)步驟: 選擇單片機(jī)和開發(fā)環(huán)境 : 確定項(xiàng)目需求,選擇合適的單片機(jī)型號(hào)。 安裝相應(yīng)的開發(fā)環(huán)境,如Keil、IAR、MPLAB等。 硬件連接 : 將單片機(jī)連接到開發(fā)板或
    的頭像 發(fā)表于 10-21 11:21 ?2308次閱讀

    單片機(jī)hex文件反編譯成C語言的過程

    使用C語言編寫,然后編譯成機(jī)器碼并燒錄到單片機(jī)的存儲(chǔ)器中。 Hex文件是一種用于存儲(chǔ)單片機(jī)程序的文件格式,它包含了程序的機(jī)器碼和一些附加信息
    的頭像 發(fā)表于 09-02 10:49 ?5899次閱讀

    keil可以讀出單片機(jī)程序

    表述存在一定的誤解,因?yàn)镵eil主要是用于編寫、編譯和調(diào)試單片機(jī)程序的工具,而不是直接從單片機(jī)中讀取已編程代碼的工具。 一、Keil的主要功能 編程開發(fā) :Keil允許用戶使用C語言或
    的頭像 發(fā)表于 09-02 10:32 ?2093次閱讀

    單片機(jī)燒錄程序用什么軟件

    單片機(jī)燒錄程序單片機(jī)開發(fā)過程中的一個(gè)重要環(huán)節(jié),涉及到將編寫好的程序代碼通過燒錄器寫入單片機(jī)的R
    的頭像 發(fā)表于 09-02 10:05 ?3272次閱讀

    單片機(jī)燒錄程序可以重新燒嗎

    單片機(jī)(Microcontroller Unit, MCU)是一種集成電路芯片,它將計(jì)算機(jī)的CPU、存儲(chǔ)器、輸入/輸出接口等集成在一塊芯片上,用于控制各種電子設(shè)備。單片機(jī)燒錄程序是指將編寫
    的頭像 發(fā)表于 09-02 10:04 ?3009次閱讀

    單片機(jī)燒錄程序的線比單片機(jī)上的少還能燒錄嗎

    單片機(jī)燒錄原理 單片機(jī)燒錄是指將編寫好的程序代碼通過一定的方式傳輸?shù)?b class='flag-5'>單片機(jī)的存儲(chǔ)器中,使其能夠按照程序
    的頭像 發(fā)表于 09-02 09:54 ?1027次閱讀

    單片機(jī)燒錄程序的基本步驟是什么

    單片機(jī)燒錄程序單片機(jī)開發(fā)過程中非常重要的一步,它涉及到將編寫好的程序代碼通過一定的方式傳輸?shù)?b class='flag-5'>單片機(jī)
    的頭像 發(fā)表于 09-02 09:47 ?2638次閱讀

    stm32單片機(jī)燒錄程序會(huì)擦除原來的程序

    在STM32單片機(jī)燒錄程序的過程中, 通常情況下會(huì)擦除原來的程序 ,并將新程序寫入單片機(jī)的閃存(Flash)中。這一過程是通過燒錄工具(如S
    的頭像 發(fā)表于 09-02 09:42 ?4531次閱讀

    藍(lán)牙模塊如何實(shí)現(xiàn)單片機(jī)和手機(jī)端數(shù)據(jù)互傳

    ZX-D30、ZX-D37、ZX-D32等。 藍(lán)牙模塊設(shè)置 : 將藍(lán)牙模塊與單片機(jī)連接。通常,藍(lán)牙模塊通過串口(UART)與單片機(jī)通信。 設(shè)置藍(lán)牙模塊的工作模式和參數(shù),例如波特率、名稱、停止位、數(shù)據(jù)位等。這通常通過發(fā)送特定的AT命令來完成。
    的頭像 發(fā)表于 07-24 17:59 ?5461次閱讀
    藍(lán)牙模塊如何實(shí)現(xiàn)<b class='flag-5'>單片機(jī)</b>和手機(jī)端數(shù)據(jù)互傳