一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲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)不再提示

今天,已經(jīng)到MCU開發(fā)人員拿起C語(yǔ)言利器的時(shí)候了

GReq_mcu168 ? 來(lái)源:玩轉(zhuǎn)單片機(jī) ? 作者:玩轉(zhuǎn)單片機(jī) ? 2020-10-17 10:59 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

將C向MCU(俗稱單片機(jī))8051上的移植始于80年代的中后期??陀^上講,C向8051 MCU移植的難點(diǎn)不少。如:

8051的非馮·諾依慢結(jié)構(gòu)(程序與數(shù)據(jù)存儲(chǔ)器空間分立),再加上片上又多了位尋址存儲(chǔ)空間;

片上的數(shù)據(jù)和程序存儲(chǔ)器空間過小和同時(shí)存在著向片外擴(kuò)展它們的可能;

片上集成外圍設(shè)備的被寄存器化(即SFR),而并不采用慣用的I/O地址空間;

8051芯片的派生門類特別多(達(dá)到了上百種之多),而C語(yǔ)言對(duì)于它們的每一個(gè)硬件資源又無(wú)一例外地要能進(jìn)行操作。

這些都是過去以MPU為基礎(chǔ)的C語(yǔ)言所沒有的。經(jīng)過Keil/Franklin、Archmeades、IAR、BSO/Tasking等公司艱若不懈的努力,終于于90年代開始而趨成熟,成為專業(yè)化的MCU高級(jí)語(yǔ)言了。過去長(zhǎng)期困擾人們的所謂“高級(jí)語(yǔ)言產(chǎn)生代碼太長(zhǎng),運(yùn)行速度太慢,因此不適合單片機(jī)使用”的致使缺點(diǎn)已被大幅度地克服。目前,8051上的C語(yǔ)言的代碼長(zhǎng)度,已經(jīng)做到了匯編水平的1.2~1.5倍。4K字節(jié)以上的程度,C語(yǔ)言的優(yōu)勢(shì)更能得到發(fā)揮。至于執(zhí)行速度的問題,只要有好的仿真器的幫助,找出關(guān)鍵代碼,進(jìn)一步用人工優(yōu)化,就可很簡(jiǎn)單地達(dá)到十分美滿的程度。如果談到開發(fā)速度、軟件質(zhì)量、結(jié)構(gòu)嚴(yán)謹(jǐn)、程序堅(jiān)固等方面的話,則C語(yǔ)言的完美絕非匯編語(yǔ)言編程所可比擬的。今天,確實(shí)已經(jīng)到MCU開發(fā)人員拿起C語(yǔ)言利器的時(shí)候了。下面結(jié)合8051介紹單片機(jī)C語(yǔ)言的優(yōu)越性:

不懂得單片機(jī)的指令集,也能夠編寫完美的單片機(jī)程序;

無(wú)須懂得單片機(jī)的具體硬件,也能夠編出符合硬件實(shí)際的專業(yè)水平的程序;

不同函數(shù)的數(shù)據(jù)實(shí)行覆蓋,有效利用片上有限的RAM空間;

程序具有堅(jiān)固性:數(shù)據(jù)被破壞是導(dǎo)致程序運(yùn)行異常的重要因素。C語(yǔ)言對(duì)數(shù)據(jù)進(jìn)行了許多專業(yè)性的處理,避免了運(yùn)行中間非異步的破壞;

C語(yǔ)言提供復(fù)雜的數(shù)據(jù)類型(數(shù)組、結(jié)構(gòu)、聯(lián)合、枚舉、指針等),極大地增強(qiáng)了程序處理能力和靈活性;

提供auto、static、const等存儲(chǔ)類型和專門針對(duì)8051單片機(jī)的data、idata、pdata、xdata、code等存儲(chǔ)類型,自動(dòng)為變量合理地分配地址;

提供small、compact、large等編譯模式,以適應(yīng)片上存儲(chǔ)器的大小;

中斷服務(wù)程序的現(xiàn)場(chǎng)保護(hù)和恢復(fù),中斷向量表的填寫,是直接與單片機(jī)相關(guān)的,都由C編譯器代辦;

提供常用的標(biāo)準(zhǔn)函數(shù)庫(kù),以供用戶直接使用;

頭文件中定義宏、說明復(fù)雜數(shù)據(jù)類型和函數(shù)原型,有利于程序的移植和支持單片機(jī)的系列化產(chǎn)品的開發(fā);

有嚴(yán)格的句法檢查,錯(cuò)誤很少,可容易地在高級(jí)語(yǔ)言的水平上迅速地被排掉;

可方便地接受多種實(shí)用程序的服務(wù):如片上資源的初始化有專門的實(shí)用程序自動(dòng)生成;再如,有實(shí)時(shí)多任務(wù)操作系統(tǒng)可調(diào)度多道任務(wù),簡(jiǎn)化用戶編程,提高運(yùn)行的安全性等等。

責(zé)任編輯:xj

原文標(biāo)題:?jiǎn)纹瑱C(jī)為什么要使用C語(yǔ)言?

文章出處:【微信公眾號(hào):玩轉(zhuǎn)單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(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)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650535
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17984

    瀏覽量

    366988
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    180

    文章

    7632

    瀏覽量

    141773

原文標(biāo)題:?jiǎn)纹瑱C(jī)為什么要使用C語(yǔ)言?

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    嵌入式軟件開發(fā)常用的軟件有哪些?

    軟件功能。 2. Visual Studio 簡(jiǎn)稱VS: 它是一個(gè)IDE,集成開發(fā)環(huán)境。驗(yàn)證C程序或是進(jìn)行c#程序開發(fā),可以用它。一些與嵌入式相關(guān)的模擬器也是基于VS的。幫助
    發(fā)表于 07-03 17:06

    Nordic PMIC全家桶,讓電源管理和節(jié)能更進(jìn)一步!

    Nordic 發(fā)布 nPM2100 PMIC 和 nPM2100 評(píng)估套件,現(xiàn)已向開發(fā)人員提供 nPM2100 評(píng)估套件、軟件和技術(shù)文檔! 此次發(fā)布公布 PMIC 的完整文檔,供開發(fā)人員
    發(fā)表于 06-29 17:19

    主流的 MCU 開發(fā)語(yǔ)言為什么是 C 而不是 C++?

    、1MROM是標(biāo)配?多數(shù)時(shí)候咱打交道的,是stm8這種8kRAM的“小矮個(gè)兒”,stm32f1的32kRAM就算是“小康家庭”。就這么丁點(diǎn)兒地方,C語(yǔ)言打個(gè)轉(zhuǎn)都
    的頭像 發(fā)表于 05-21 10:33 ?446次閱讀
    主流的 <b class='flag-5'>MCU</b> <b class='flag-5'>開發(fā)</b><b class='flag-5'>語(yǔ)言</b>為什么是 <b class='flag-5'>C</b> 而不是 <b class='flag-5'>C</b>++?

    Thingy:91 X 為開發(fā)人員提供一個(gè)經(jīng)過全球認(rèn)證的、多傳感器、電池供電的蜂窩物聯(lián)網(wǎng)原型平臺(tái)

    Thingy:91 X 為開發(fā)人員提供一個(gè)經(jīng)過全球認(rèn)證的、多傳感器、電池供電的蜂窩物聯(lián)網(wǎng)原型平臺(tái) 挪威奧斯陸 – 2024年12月10日 – 全球領(lǐng)先的低功耗無(wú)線連接解決方案提供商N(yùn)ordic
    的頭像 發(fā)表于 05-08 17:41 ?950次閱讀

    NanoEdge AI Studio 面向STM32開發(fā)人員機(jī)器學(xué)習(xí)(ML)技術(shù)

    嵌入式開發(fā)人員提供按年度的單個(gè)或團(tuán)隊(duì)許可。 為幫助用戶啟動(dòng)其項(xiàng)目,意法半導(dǎo)體推出了Edge AI Sprint包,以限制風(fēng)險(xiǎn)和投資,同時(shí)提高成功幾率。這是包括培訓(xùn)課程、N
    的頭像 發(fā)表于 04-22 11:09 ?593次閱讀
    NanoEdge AI Studio 面向STM32<b class='flag-5'>開發(fā)人員</b>機(jī)器學(xué)習(xí)(ML)技術(shù)

    基于RV1126開發(fā)板的人員檢測(cè)算法開發(fā)

    在RV1126上開發(fā)人員檢測(cè)AI算法組件
    的頭像 發(fā)表于 04-14 13:56 ?311次閱讀
    基于RV1126<b class='flag-5'>開發(fā)</b>板的<b class='flag-5'>人員</b>檢測(cè)算法<b class='flag-5'>開發(fā)</b>

    GoPoint嵌入式開發(fā)平臺(tái) 釋放i.MX潛力 簡(jiǎn)化Linux開發(fā)

    地進(jìn)行創(chuàng)新。 在快節(jié)奏的嵌入式系統(tǒng)時(shí)代,時(shí)間是開發(fā)人員最寶貴的資源。GoPoint (過去名為NXP Demo Experience) 重新定義評(píng)估和探索過程,開發(fā)人員能夠快速評(píng)估i.MX SoC在下一代項(xiàng)目中的能力。 GoP
    發(fā)表于 02-28 10:07 ?628次閱讀
    GoPoint嵌入式<b class='flag-5'>開發(fā)</b>平臺(tái) 釋放i.MX潛力 簡(jiǎn)化Linux<b class='flag-5'>開發(fā)</b>

    芯科科技全新MCU選型指南

    微控制器(MCU)是物聯(lián)網(wǎng)的核心,開發(fā)人員如何面向其應(yīng)用需求選擇最合適的設(shè)備,將是在產(chǎn)品開發(fā)過程中的一個(gè)重大決策。但是,您如何知道哪款處理器合適呢?本篇物聯(lián)網(wǎng)MCU選型指南深入介紹Si
    的頭像 發(fā)表于 02-17 16:52 ?999次閱讀
    芯科科技全新<b class='flag-5'>MCU</b>選型指南

    擁有低功耗低成本的Open開發(fā)應(yīng)用,開發(fā)人員必看!

    Open開發(fā)應(yīng)用需求,有沒有低功耗、低成本方案? 今天我們一起來(lái)聊聊Air780EP模組。 一、Air780EP實(shí)網(wǎng)功耗數(shù)據(jù) 4G-Cat.1模組支持三種功耗模式:常規(guī)模式、低功耗模式、PSM+模式
    的頭像 發(fā)表于 12-26 11:50 ?527次閱讀
    擁有低功耗低成本的Open<b class='flag-5'>開發(fā)</b>應(yīng)用,<b class='flag-5'>開發(fā)人員</b>必看!

    MSPDebugStack開發(fā)人員指南

    電子發(fā)燒友網(wǎng)站提供《MSPDebugStack開發(fā)人員指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-05 14:49 ?0次下載
    MSPDebugStack<b class='flag-5'>開發(fā)人員</b>指南

    MCU編程語(yǔ)言開發(fā)環(huán)境介紹

    MCU編程語(yǔ)言 MCU編程語(yǔ)言是用于編寫MCU程序的高級(jí)編程語(yǔ)言,它們使得
    的頭像 發(fā)表于 11-01 11:51 ?2198次閱讀

    MCU前沿市場(chǎng)趨勢(shì):8位單片機(jī)和32位單片機(jī)

    程度越來(lái)越高。這些功能豐富的設(shè)備適合一系列不同的應(yīng)用程序,這解釋為什么許多嵌入式開發(fā)人員選擇它們進(jìn)行下一步設(shè)計(jì)。設(shè)計(jì)師意識(shí),這種復(fù)雜的設(shè)備可以提供原始計(jì)算能力,豐富的外圍設(shè)備以及輕松訪問各種
    發(fā)表于 09-24 17:47

    嵌入式開發(fā)常用軟件有哪些?

    開發(fā)人員更穩(wěn)定,更有生產(chǎn)力,更易于使用Debug調(diào)試功能。 3.SourceInsight source insight Mac 最新版支持多種開發(fā)語(yǔ)言(比如說Java,c,
    發(fā)表于 09-09 15:22

    C2000 ePWM開發(fā)人員指南

    電子發(fā)燒友網(wǎng)站提供《C2000 ePWM開發(fā)人員指南.pdf》資料免費(fèi)下載
    發(fā)表于 09-07 09:45 ?0次下載
    <b class='flag-5'>C</b>2000 ePWM<b class='flag-5'>開發(fā)人員</b>指南

    CKS32F107xx系列MCU的中斷和事件

    本章節(jié)首先將以MCU開發(fā)人員常接觸到的“中斷”、“事件”和“中斷事件”三個(gè)名詞的概念展開,然后去闡述彼此的主要區(qū)別,最后借助MCU的GPIO外部中斷/事件控制器(EXTI)的傳輸路徑來(lái)加深對(duì)上述概念的理解。
    的頭像 發(fā)表于 07-22 09:29 ?949次閱讀
    CKS32F107xx系列<b class='flag-5'>MCU</b>的中斷和事件