999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ARM Cortex-M4的PLC結(jié)構(gòu)化框架研究

2022-02-28 04:14:20陳占標(biāo)
電子元器件與信息技術(shù) 2022年12期
關(guān)鍵詞:功能設(shè)計(jì)

陳占標(biāo)

泉州市天志智能科技有限公司,福建 泉州 362000

0 引言

ARM Cortex-M4主要應(yīng)用于傳感、決策、中斷驅(qū)動等領(lǐng)域,具有功耗低、成本低、性能高、擴(kuò)展性好等特征[1]。但與C語言相比,基于ARM Cortex-M4的PLC結(jié)構(gòu)化框架不夠直觀,編程難度較大,對基于ARM Cortex-M4的PLC結(jié)構(gòu)化框架應(yīng)用發(fā)展產(chǎn)生不利影響。對此,本文構(gòu)建PLC結(jié)構(gòu)化匯編框架模型,根據(jù)框架設(shè)計(jì)原則,設(shè)計(jì)具有可移植性,包括CAN模塊擴(kuò)展站點(diǎn)分配功能和PID功能的框架,并對PLC框架進(jìn)行測試分析,旨在為學(xué)習(xí)者有效學(xué)習(xí)及提升編程效率提供借鑒與參考。

1 PLC結(jié)構(gòu)化匯編框架模型構(gòu)建

PLC結(jié)構(gòu)化匯編框架可應(yīng)用于匯編編程,在具體編程時,可以應(yīng)用硬件抽象層、軟件構(gòu)件層、應(yīng)用層三層邏輯架構(gòu)[2],具體如圖1所示。

圖1 結(jié)構(gòu)化匯編框架

硬件抽象層應(yīng)用嵌入式系統(tǒng),該系統(tǒng)可以將硬件與軟件系統(tǒng)融合,有利于明確硬件與軟件之間的關(guān)系[3]。在具體應(yīng)用中,硬件層應(yīng)用于芯片上電后復(fù)位啟動與編譯鏈接中,可以對設(shè)備外設(shè)的硬件寄存器地址和異常進(jìn)行自整定處理。

軟件構(gòu)件層具有可重復(fù)性、規(guī)范性、嵌入性特征,是組織嵌入式系統(tǒng)的功能單位[4]。需要注意的是,應(yīng)用構(gòu)建是封裝而成的,所以在編程過程中,需要調(diào)用底層驅(qū)動構(gòu)件。應(yīng)用層包括中斷服務(wù)例程、用戶主程序等。

2 PLC結(jié)構(gòu)化匯編框架設(shè)計(jì)原則

基于軟件工程理論的分析可知,保證結(jié)構(gòu)的清晰性是PLC結(jié)構(gòu)化匯編框架設(shè)計(jì)的基本點(diǎn)。在文件內(nèi)容安排方面,應(yīng)保證其具有合理性、易修改性、可擴(kuò)展性等特征[5]。為保證軟件開發(fā)效率與質(zhì)量,在設(shè)計(jì)PLC結(jié)構(gòu)化匯編框架過程中,

應(yīng)遵循以下幾點(diǎn)原則,即可復(fù)用、可維護(hù)、可移植等基本思想原則。

每款芯片都有其自身的初始化文件,為保證框架匯編的有效性,可以將這些芯片的初始文件組織在一起,避免在對某款芯片開發(fā)過程中,特意修改某一文件[6]。

PLC結(jié)構(gòu)化匯編框架設(shè)計(jì)需要對芯片相關(guān)程序框架文件、軟件構(gòu)件文件、主程序文件等進(jìn)行匯編。為提升匯編效率,提升閱讀清晰度,需要將這些文件分類,并將分類號的文件組織放在統(tǒng)一的文件夾下,實(shí)現(xiàn)目錄結(jié)構(gòu)的合理分類。

不同的開發(fā)環(huán)境需要不同的配置,在設(shè)計(jì)PLC結(jié)構(gòu)化匯編框架時,需要將所有工程配置文件,如鏈接文件等,組織在一起,避免在同一開發(fā)環(huán)境下,進(jìn)行重復(fù)配置,并提升不同環(huán)境下查找配置文件的便利性[7]。

在設(shè)計(jì)PLC結(jié)構(gòu)化匯編框架時,應(yīng)根據(jù)軟件商的分層思想,將軟件構(gòu)件分為底層驅(qū)動構(gòu)件、應(yīng)用構(gòu)件、高層軟件構(gòu)件[8]。同時,在設(shè)計(jì)過程中,可以將不同層次的構(gòu)件存放在不同文件夾中,保證文件的功能明確,結(jié)構(gòu)清晰。另外,在制作構(gòu)件過程中,應(yīng)對構(gòu)件的共性、特征進(jìn)行分析,在提取構(gòu)件屬性的基礎(chǔ)上,使構(gòu)件移植到不同的環(huán)境中,最大程度避免源程文件的修改。

在編譯鏈接過程中,源程序?qū)a(chǎn)生機(jī)器碼文件,用戶可以通過下載該文件的方式,在目標(biāo)板中運(yùn)行,經(jīng)過重新編譯后,文件極有可能發(fā)生改變,這些新文件需要單獨(dú)存儲[9]。

3 PLC結(jié)構(gòu)化匯編框架結(jié)構(gòu)與設(shè)計(jì)

3.1 框架的結(jié)構(gòu)組織

PLC結(jié)構(gòu)化匯編框架的技術(shù)參數(shù)如表1所示。基于技術(shù)參數(shù)分析,根據(jù)框架模型中的相應(yīng)順序,對框架中的文件夾進(jìn)行編號,為明確程序的運(yùn)行情況,通常設(shè)置LED閃爍功能,加入了LED閃爍相關(guān)指示文件[10]。當(dāng)主機(jī)功能不夠用的情況,增加了CAN擴(kuò)展功能,當(dāng)主機(jī)與擴(kuò)展模塊通信正常時:主機(jī)處于STOP時,擴(kuò)展的RUN燈間隔1.5s閃爍一次;當(dāng)主機(jī)處于RUN時,擴(kuò)展的RUN燈基本與主機(jī)閃爍一致;當(dāng)主機(jī)與擴(kuò)展模塊通信當(dāng)通信中斷時:擴(kuò)展的RUN燈熄滅,并關(guān)閉所有輸出。在此基礎(chǔ)上,添加了CAN模塊擴(kuò)展站點(diǎn)分配功能(表2)和PID功能(功能選擇見表3)。

表1 PLC結(jié)構(gòu)化匯編框架的技術(shù)參數(shù)

表2 CAN模塊擴(kuò)展站點(diǎn)分配

表3 PID功能選擇說明

3.2 框架設(shè)計(jì)分析

在框架設(shè)計(jì)過程中,需要注重分析工程文件夾的內(nèi)容情況,文件夾內(nèi)除基礎(chǔ)編程環(huán)境需要保留的文件夾外,添加編號的子文件夾的個數(shù)、名稱應(yīng)固定[11]。同時,框架設(shè)計(jì)應(yīng)保證框架能夠在不同的CPU、芯片與開發(fā)環(huán)境中移植,并對移植時修改的內(nèi)容進(jìn)行說明。

3.3 主程序文件設(shè)計(jì)

整體而言,PLC結(jié)構(gòu)化匯編要包含名為main.s的匯編主程序文件,同時要保證匯編程序具有簡潔性和清晰性。主程序文件main.s包括以下幾點(diǎn)。

(1)工程描述:工程名、版本、日期等。若在調(diào)試過程中有新的添加內(nèi)容,可以在原有基礎(chǔ)上進(jìn)行補(bǔ)充,目的在于便于使用,且能夠提供備忘信息。

(2)總頭文件:對頭文件、宏定義(主程序文件中)等進(jìn)行聲明[11]。

(3)主程序:本框架中,將主程序設(shè)計(jì)為初始化與主循環(huán)兩部分。其中,主循環(huán)代表的是程序工作循環(huán)。在實(shí)際運(yùn)行中,可以根據(jù)實(shí)際需求進(jìn)行設(shè)計(jì),但程序段不宜過長,具體功能需要在調(diào)試后實(shí)現(xiàn)。

(4)內(nèi)部直接調(diào)用子程序:若存在不能單獨(dú)存RAM的子程序,可以存放在內(nèi)部直接調(diào)用子程序中[11]。若有多個子程序,需要單獨(dú)存在外部Flash,并進(jìn)行獨(dú)立校驗(yàn)。

(5)外部子程序:若外部子程序使用的是獨(dú)立存RAM的子程序,可以使用“.include”包含[12]。

(6)程序加密:下載程序時自動讀取ARM Cortex-M4芯片與外部Flash自帶的ID號,并且進(jìn)行無序打散,從二進(jìn)制轉(zhuǎn)換成十六進(jìn)制,無序存放在ARM 芯片與Flash的某些位置,再次上電后,系統(tǒng)自動驗(yàn)證該配套ID號。

4 PLC結(jié)構(gòu)化匯編框架測試

首先,在開發(fā)環(huán)境中導(dǎo)入?yún)R編框架,創(chuàng)建需要測試的工程內(nèi)容,并調(diào)用GPIO構(gòu)件,實(shí)現(xiàn)LED燈閃爍功能[12]。其次,根據(jù)上述主程序的設(shè)計(jì)方法編制主程序。最后,將測試工程編譯鏈接后,下載到目標(biāo)板上,重新通電運(yùn)行,能夠觀察到LED燈間隔閃爍,RS485、RS232、CAN通信正常,且運(yùn)行穩(wěn)定。通過測試結(jié)果分析可知,PLC結(jié)構(gòu)化匯編框架規(guī)范、有效,能夠?yàn)槲⑻幚砥魃顚哟蔚膽?yīng)用開發(fā)和匯編語言研究提供便利途徑。

5 結(jié)語

本研究主要介紹了基于ARM Cortex-M4的PLC結(jié)構(gòu)化匯編框架,設(shè)計(jì)了層次性框架模型,闡述了框架設(shè)計(jì)原則,并對設(shè)計(jì)進(jìn)行詳細(xì)分析。通過框架測試,結(jié)果表明框架具有實(shí)用性,可以提升匯編程序的可移植性,并能夠降低相關(guān)人員學(xué)習(xí)基于ARM Cortex-M4-PLC結(jié)構(gòu)化匯編程序的難度,具有現(xiàn)實(shí)應(yīng)用價值。

猜你喜歡
功能設(shè)計(jì)
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
瞞天過海——仿生設(shè)計(jì)萌到家
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
關(guān)于非首都功能疏解的幾點(diǎn)思考
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達(dá)功能
中西醫(yī)結(jié)合治療甲狀腺功能亢進(jìn)癥31例
主站蜘蛛池模板: 亚洲视频无码| 亚洲黄色网站视频| 免费毛片a| 欧美色视频网站| a亚洲天堂| 福利在线一区| 精品伊人久久久香线蕉| 精品国产成人a在线观看| 97se亚洲综合在线| 日韩一区二区在线电影| 中文字幕伦视频| 免费国产一级 片内射老| 亚洲首页国产精品丝袜| 国产午夜无码专区喷水| 国产在线视频自拍| 国产成人精品综合| 毛片基地美国正在播放亚洲 | 亚洲国产成人麻豆精品| 国产不卡一级毛片视频| 国产在线高清一级毛片| 国产成人调教在线视频| 成人毛片在线播放| 四虎成人在线视频| 五月激激激综合网色播免费| 激情乱人伦| 在线精品自拍| 国产99在线| 91成人在线免费视频| 国产小视频a在线观看| 99ri国产在线| yjizz视频最新网站在线| 亚洲AⅤ无码国产精品| 视频一区视频二区中文精品| 亚洲六月丁香六月婷婷蜜芽| 日韩东京热无码人妻| 伊人国产无码高清视频| 国产自在线播放| 亚洲全网成人资源在线观看| 在线毛片网站| a级毛片在线免费观看| 亚洲久悠悠色悠在线播放| 色偷偷一区二区三区| 欧美亚洲一区二区三区在线| 一级毛片在线免费看| 71pao成人国产永久免费视频| 无码aaa视频| 国产三级视频网站| 国产精品流白浆在线观看| 国产精品手机在线播放| 免费看av在线网站网址| 又黄又湿又爽的视频| 欧美激情视频一区| 精品久久蜜桃| 欧美97欧美综合色伦图| 亚洲男人在线| 永久毛片在线播| 国产成人一区免费观看 | 国产第一色| 欧美另类图片视频无弹跳第一页| 亚洲天堂网在线观看视频| 国产精品成人一区二区不卡| av天堂最新版在线| 午夜不卡福利| 精品国产中文一级毛片在线看 | 激情成人综合网| 亚洲视频色图| 日本国产在线| 蜜桃视频一区| 久久香蕉国产线| 欧美亚洲欧美| 99精品热视频这里只有精品7| 国产激爽爽爽大片在线观看| 国产激情第一页| 免费一级成人毛片| 黄色a一级视频| 亚洲一区国色天香| 扒开粉嫩的小缝隙喷白浆视频| 亚洲一区无码在线| 免费人成视网站在线不卡| 免费观看精品视频999| 97超碰精品成人国产| 国产黄色视频综合|