日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

UCOS2_STM32F1移植詳細(xì)過(guò)程 (二)

黃工的嵌入式技術(shù)圈 ? 來(lái)源:黃工的嵌入式技術(shù)圈 ? 2020-04-07 11:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Ⅰ、概述

打開(kāi)上一篇文章新建的工程,是提取的ST標(biāo)準(zhǔn)庫(kù)里面源代碼文件和UCOS工程包源代碼文件。下載過(guò)的朋友可能會(huì)知道,直接編譯那個(gè)工程會(huì)有大片的錯(cuò)誤和警告,原因在于那個(gè)工程是沒(méi)有經(jīng)過(guò)修改源代碼的工程,接下來(lái)就是講述一步一步修改源代碼的過(guò)程(也就是所謂的移植過(guò)程)。

該文接著上一篇文章來(lái)講述“UCOS移植詳細(xì)過(guò)程”,上一篇文章是講述準(zhǔn)備工作、文件提取并整理、新建UCOS工程等工作。該文講述UCOS移植過(guò)程中修改部分源代碼(底層代碼、系統(tǒng)配置等)工作。

Ⅱ、ST芯片配置

配置ST型號(hào)的方法有兩種:使用標(biāo)準(zhǔn)庫(kù)源代碼配置和工程配置

1.源代碼配置

打開(kāi)工程 -> 打開(kāi)源代碼“stm32f10x.h”文件。

使用F103大容量的芯片:取消第68行STM32F10X_MD的注釋?zhuān)@里需要和我們的啟動(dòng)代碼匹配startup_stm32f10x_hd.s。

使用標(biāo)準(zhǔn)外設(shè)庫(kù):取消第105行USE_STDPERIPH_DRIVER的注釋?zhuān)褂脴?biāo)準(zhǔn)外設(shè)庫(kù),我們使用stm32f10x_conf.h文件來(lái)配置使用到的外設(shè)庫(kù)。

2.工程配置

打開(kāi)工程-> Project -> Options for Target -> C/C++,在該選項(xiàng)預(yù)定義里面添加STM32F10X_MD,USE_STDPERIPH_DRIVER這兩個(gè)宏定義即可。

注意:兩種方法用一種即可。效果圖如下:

Ⅲ、配置系統(tǒng)滴答時(shí)鐘

系統(tǒng)的運(yùn)行離不開(kāi)系統(tǒng)滴答,就像我前面說(shuō)過(guò)的:系統(tǒng)滴答的作用,就是驅(qū)動(dòng)整個(gè)系統(tǒng)工作的心臟,如果沒(méi)有了它,就等于人沒(méi)有了心跳。

1.初始化滴答

我們使用ST的滴答SysTick來(lái)配置作為操作系統(tǒng)的滴答時(shí)鐘,芯片SysTick是屬于內(nèi)核(Cortex-M3)的一部分,所以,在初始化的時(shí)候是調(diào)用CM3里面的源代碼(SysTick_Config函數(shù))。

這里說(shuō)明一下,只要使用Cortex-M3內(nèi)核的芯片都有這個(gè)功能,可以說(shuō)SysTick是專(zhuān)門(mén)為系統(tǒng)而設(shè)計(jì)的。


系統(tǒng)滴答配置如上圖,位于app_cfg.c源文件下面。

2.滴答中斷配置

中斷函數(shù)需要調(diào)用系統(tǒng)相關(guān)的函數(shù),也就是系統(tǒng)進(jìn)行滴答相關(guān)的函數(shù),這里是規(guī)定這么調(diào)用的。

Ⅳ、裁剪系統(tǒng)(配置os_cfg.h)

對(duì)于我們常說(shuō)的系統(tǒng)可裁剪,其實(shí)就是對(duì)系統(tǒng)某些功能打開(kāi)和關(guān)閉,使用到的功能才打開(kāi),不使用的功能就關(guān)閉(即使能和失能),這個(gè)文件就集中在os_cfg.h文件里面。

這里先說(shuō)一下重要的幾個(gè)選項(xiàng):

1.最低優(yōu)先級(jí)OS_LOWEST_PRIO

這個(gè)與我們配置任務(wù)優(yōu)先級(jí)有關(guān)系,最低優(yōu)先級(jí)任務(wù)配置的最大值。我們所說(shuō)的任務(wù)優(yōu)先級(jí)關(guān)系是:優(yōu)先級(jí)越小,數(shù)值越大; 相反,優(yōu)先級(jí)越大,數(shù)值越小。

位于os_cfg.h文件第39行:

#define OS_LOWEST_PRIO 63

2.系統(tǒng)每秒滴答數(shù)OS_TICKS_PER_SEC

這個(gè)宏定義的意思就是說(shuō),系統(tǒng)每秒鐘滴答多少次,它與系統(tǒng)延時(shí)(OSTimeDly)關(guān)系比較重要,我們的例子中OS_TICKS_PER_SEC等于100,調(diào)用OSTimeDly(100);相當(dāng)于的延時(shí)100個(gè)滴答,即延時(shí)1秒的意思。

位于os_cfg.h文件第51行:

#define OS_TICKS_PER_SEC 100

3.任務(wù)堆棧大小OS_TASK_xxx_STK_SIZE

這個(gè)幾個(gè)宏定義在使用相應(yīng)功能的時(shí)候有用,如果RAM資源有限,這個(gè)任務(wù)堆棧的大小最好根據(jù)任務(wù)來(lái)評(píng)估一下,資源有限時(shí)不要太大,當(dāng)然也不能小于程序正常運(yùn)行。

位于os_cfg.h文件第55 - 57行:

#define OS_TASK_TMR_STK_SIZE 128

#define OS_TASK_STAT_STK_SIZE 128

#define OS_TASK_IDLE_STK_SIZE 128

4.其他

還有很多與系統(tǒng)其他資源相關(guān)的配置,正常的情況下是需要的時(shí)候才開(kāi)啟,不用盡量關(guān)閉。一是節(jié)約資源,二是減少編譯時(shí)間。后期我會(huì)將中文注釋在后面。

Ⅴ、下載

我將移植完成,建立了3個(gè)簡(jiǎn)單任務(wù)的例程放在360云盤(pán)供大家下載與參考:

https://yunpan.cn/cRIpR5bwHMCCY訪問(wèn)密碼 3885

UCOS2基于STM32F107的軟件工程包(官網(wǎng)原版):

Micrium官網(wǎng)下載地址(需要賬號(hào)):

https://www.micrium.com/download/micrium_stm32f107_ucos-ii

我360云盤(pán)下載地址:

https://yunpan.cn/cRzcf8eSacEhE訪問(wèn)密碼 1235

標(biāo)準(zhǔn)外設(shè)庫(kù):

ST官網(wǎng)下載地址(需要賬號(hào)):

http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software.html?querycriteria=productId=SC961

我360云盤(pán)下載地址(定期更新):

https://yunpan.cn/cSaCpGejMSfr8訪問(wèn)密碼 60ae

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

    關(guān)注

    0

    文章

    49

    瀏覽量

    16313
  • ucos2
    +關(guān)注

    關(guān)注

    0

    文章

    15

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    安森美NXH160T120L2Q2F2S1G功率模塊:特性與應(yīng)用深度解析

    安森美NXH160T120L2Q2F2S1G功率模塊:特性與應(yīng)用深度解析 在電力電子領(lǐng)域,功率模塊的性能對(duì)于整個(gè)系統(tǒng)的效率和穩(wěn)定性起著至關(guān)重要的作用。安森美(onsemi)推出
    的頭像 發(fā)表于 04-23 17:20 ?492次閱讀

    深入剖析STM32L010F4/K4:低功耗32位MCU的卓越之選

    的一款低功耗32位MCU,憑借其出色的性能和豐富的功能,在眾多應(yīng)用場(chǎng)景中展現(xiàn)出了強(qiáng)大的競(jìng)爭(zhēng)力。本文將對(duì)STM32L010F4/K4進(jìn)行詳細(xì)的剖析,為電子工程師們?cè)谠O(shè)計(jì)過(guò)程中提供有價(jià)值的參考。 文件下載
    的頭像 發(fā)表于 04-15 15:40 ?338次閱讀

    基于極海APM32F4的Azure RTOS ThreadX移植過(guò)程分享

    。想著就動(dòng)手,本文記錄了APM32F4移植ThreadX RTOS的過(guò)程,供各位做個(gè)參考,權(quán)當(dāng)拋磚引玉了。
    的頭像 發(fā)表于 04-02 11:30 ?1197次閱讀
    基于極海APM32<b class='flag-5'>F</b>4的Azure RTOS ThreadX<b class='flag-5'>移植</b><b class='flag-5'>過(guò)程</b>分享

    STM32F042x4/STM32F042x6微控制器深度解析:特性、應(yīng)用與設(shè)計(jì)要點(diǎn)

    STM32F042x4/STM32F042x6微控制器深度解析:特性、應(yīng)用與設(shè)計(jì)要點(diǎn) 在嵌入式系統(tǒng)開(kāi)發(fā)領(lǐng)域,微控制器的選擇至關(guān)重要,它直接影響著產(chǎn)品的性能、功能和成本。今天,我們就來(lái)深入探討一下意法
    的頭像 發(fā)表于 03-19 17:15 ?676次閱讀

    LAT1171+STM32F745 USART1 Bootloader 失敗原因分析與解決

    使用 STM32F745 進(jìn)行產(chǎn)品開(kāi)發(fā)的時(shí)候,出現(xiàn)了使用 STM32CubeProgramer 無(wú)法通過(guò) USART1 Bootloader 進(jìn)行程序升級(jí)的問(wèn)題。為了解決客戶(hù)的問(wèn)題,我在 NUCLEO-
    發(fā)表于 01-11 17:33 ?0次下載

    M1F SMAF整流極管規(guī)格書(shū)

    M1F SMAF整流極管,電流:1A 50V
    發(fā)表于 10-30 16:50 ?0次下載

    STM32MP257F-EV1評(píng)估板深度解析與技術(shù)應(yīng)用指南

    STMicroelectronics STM32MP257F-EV1評(píng)估板是用于STM32MP257FAI3的開(kāi)發(fā)平臺(tái),采用Arm? Cortex?-A35和M33內(nèi)核。它支持用于主處理器(雙核
    的頭像 發(fā)表于 10-20 11:49 ?1735次閱讀
    <b class='flag-5'>STM32MP257F-EV1</b>評(píng)估板深度解析與技術(shù)應(yīng)用指南

    移植 rt_vsnprintf_full.c 替換掉 原來(lái)的 rt_vsnprintf 之后 打印后出現(xiàn)死機(jī),什么原因?qū)е碌模?/a>

    1.環(huán)境: RTT4.1.1 STM32F407 移植代碼鏈接:https://blog.csdn.net/Porter_007/article/details/140172740 移植
    發(fā)表于 10-09 06:55

    STM32+esp8266連接機(jī)智云,上傳溫濕度數(shù)據(jù)并控制繼電器開(kāi)關(guān)(平臺(tái)配置、代碼生成、代碼移植

    本教程將詳細(xì)介紹如何將STM32微控制器與ESP8266Wi-Fi模塊連接到機(jī)智云平臺(tái),實(shí)現(xiàn)溫濕度數(shù)據(jù)的上傳與繼電器的遠(yuǎn)程控制。通過(guò)此過(guò)程,您將學(xué)會(huì)如何配置機(jī)智云平臺(tái),燒錄ESP8266固件,
    的頭像 發(fā)表于 07-15 18:54 ?1546次閱讀
    <b class='flag-5'>STM32</b>+esp8266連接機(jī)智云,上傳溫濕度數(shù)據(jù)并控制繼電器開(kāi)關(guān)(平臺(tái)配置、代碼生成、代碼<b class='flag-5'>移植</b>)

    STM32F10xxx參考手冊(cè)

    STM32F1XX數(shù)據(jù)手冊(cè)中文版
    發(fā)表于 07-10 16:09 ?10次下載

    機(jī)智云配網(wǎng)教程第三期:?jiǎn)纹瑱C(jī)代碼移植實(shí)戰(zhàn)

    stm32f103c8t6,WiFi模塊:ESP-01s,下載器:ST-LINK2.軟件:keil5的工程文件模板,mcu代碼包代碼資源:未移植移植后(注:本文是基于
    的頭像 發(fā)表于 07-01 17:32 ?2205次閱讀
    機(jī)智云配網(wǎng)教程第三期:?jiǎn)纹瑱C(jī)代碼<b class='flag-5'>移植</b>實(shí)戰(zhàn)

    Analog Devices / Maxim Integrated MAX96714/F/R單GMSL2/1轉(zhuǎn)CSI-2解串器數(shù)據(jù)手冊(cè)

    Analog Devices MAX96714/F/R單GMSL2/1轉(zhuǎn)CSI-2解串器可將GMSL?2/
    的頭像 發(fā)表于 06-12 11:21 ?1397次閱讀
    Analog Devices / Maxim Integrated MAX96714/<b class='flag-5'>F</b>/R單GMSL<b class='flag-5'>2</b>/<b class='flag-5'>1</b>轉(zhuǎn)CSI-<b class='flag-5'>2</b>解串器數(shù)據(jù)手冊(cè)

    STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4編程手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4編程手冊(cè).pdf》資料免費(fèi)下載
    發(fā)表于 06-06 17:06 ?17次下載

    STM32F40xxx和STM32f41xx flash編程手冊(cè)

    PM0081_STM32F40xxx and STM32F41xxx單片機(jī)編程手冊(cè)
    發(fā)表于 06-06 17:02 ?8次下載

    STM32與機(jī)智云連接實(shí)現(xiàn)步驟與技巧(下篇):機(jī)智云代碼移植與優(yōu)化

    機(jī)智云SDK,集成API,實(shí)現(xiàn)數(shù)據(jù)傳輸和設(shè)備狀態(tài)同步,并分享移植過(guò)程中的常見(jiàn)問(wèn)題及解決方法,幫助開(kāi)發(fā)者順利實(shí)現(xiàn)云端連接。機(jī)智云相關(guān)代碼開(kāi)始移植相關(guān)移植步驟
    的頭像 發(fā)表于 05-23 18:10 ?1370次閱讀
    <b class='flag-5'>STM32</b>與機(jī)智云連接實(shí)現(xiàn)步驟與技巧(下篇):機(jī)智云代碼<b class='flag-5'>移植</b>與優(yōu)化
    汶上县| 麻江县| 新邵县| 九寨沟县| 伊川县| 台前县| 建瓯市| 临高县| 大庆市| 桂东县| 轮台县| 济南市| 万源市| 定日县| 远安县| 大足县| 宜川县| 南城县| 安丘市| 开远市| 西吉县| 高雄县| 碌曲县| 甘泉县| 佛冈县| 仙桃市| 府谷县| 赤水市| 嘉义市| 台南县| 茶陵县| 芦溪县| 桦川县| 奇台县| 大渡口区| 芜湖市| 巫山县| 密云县| 上林县| 越西县| 湾仔区|