基于Gokit STM32F103C8T6至UCOS-II移植教程
- Step1:在UCOS官網(wǎng)下載源碼,這里選擇Micrium_uC-Eval-STM32F107_uCOS-II,版本是V2.92.07
- Step2:使用STM32CubeMX快速配置1個(gè)LED閃爍的例程,板卡有4個(gè)LED,系統(tǒng)時(shí)鐘配置為72MHz,Systick我們用作UCOS的心跳,另外開(kāi)啟一個(gè)定時(shí)器作為HAL庫(kù)的時(shí)基。詳細(xì)配置過(guò)程查看附件里面的文檔;Step1:在UCOS官網(wǎng)下載源碼,這里選擇Micrium_uC-Eval-STM32F107_uCOS-II,版本是V2.92.07
- Step3:生成IAR工程,在其根目錄創(chuàng)建文件夾UCOSII,在里面再創(chuàng)建3個(gè)文件夾:CONFIG、CORE、PORT
- Step4:拷貝UCOS-II源碼到工程文件夾
- Step5:在IAR里面添加文件分組并添加編譯路徑
- Step6:修改os_cpu_a.asm文件
- Step7:修改includes.h,把不需要的頭文件注釋掉
- Step8:修改stm32f1xx_it.c文件,注釋掉void PendSV_Handler(void)函數(shù),在void SysTick_Handler(void)函數(shù)里面調(diào)用OSTimeTick()
至此UCOS-II移植完畢,接下來(lái)編寫(xiě)4個(gè)LED Blinking任務(wù)測(cè)試:
- Step1:在main.h添加LED控制宏
- Step2:定義任務(wù)堆棧和優(yōu)先級(jí)
- Step3:編寫(xiě)LED任務(wù),LED1每100ms翻轉(zhuǎn)1次,LED2每200ms翻轉(zhuǎn)1次,LED3每300ms翻轉(zhuǎn)1次,LED4每500ms翻轉(zhuǎn)1次
- Step4:初始化OS,創(chuàng)建任務(wù),啟動(dòng)調(diào)度器
- Step5:編譯,無(wú)錯(cuò)誤和警告后,燒錄調(diào)試
文章整合自:baidu
編輯:ymf
聲明:本文內(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)投訴
-
源碼
+關(guān)注
關(guān)注
8文章
669瀏覽量
30244 -
uCOS
+關(guān)注
關(guān)注
7文章
175瀏覽量
79443 -
調(diào)度器
+關(guān)注
關(guān)注
0文章
98瀏覽量
5477
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
STM32與機(jī)智云連接實(shí)現(xiàn)步驟與技巧(下篇):機(jī)智云代碼移植與優(yōu)化
在《STM32與機(jī)智云連接實(shí)現(xiàn)步驟與技巧(上篇)》中,我們介紹了硬件連接和通信協(xié)議配置。本篇將重點(diǎn)講解如何將機(jī)智云相關(guān)代碼移植到STM32,完成數(shù)據(jù)上傳和設(shè)備控制。我們將介紹如何在

STM32G431移植FreeModbus
STM32G431移植FreeModbus 的代碼已通過(guò)驗(yàn)證,在WeActStudio的STM32G431CoreBoard上進(jìn)行多次測(cè)試,均可正常讀取寄存器數(shù)值。STM32G431C
發(fā)表于 04-19 16:50
?1次下載
STM32F103x8 STM32F103xB單片機(jī)數(shù)據(jù)手冊(cè)
STM32F103x8STM32F103xB單片機(jī)數(shù)據(jù)手冊(cè)
發(fā)表于 04-14 14:55
?2次下載
STM32F107的USART2為什么進(jìn)不了中斷?
剛開(kāi)始學(xué)STM32,手里有一塊公司的板子,板子上的USB接到FT232R,再?gòu)腇T232R接到MCU的PD5(USART2TX)和PD6(USART2RX)。
我嘗試了公司的代碼,應(yīng)該是用標(biāo)準(zhǔn)庫(kù)寫(xiě)
發(fā)表于 03-14 16:57
GD32F107xx數(shù)據(jù)表
電子發(fā)燒友網(wǎng)站提供《GD32F107xx數(shù)據(jù)表.pdf》資料免費(fèi)下載
發(fā)表于 01-21 15:53
?0次下載

從STM32WL55JC到STM32WLE5CC的LoRaWAN_FUOTA移植
電子發(fā)燒友網(wǎng)站提供《從STM32WL55JC到STM32WLE5CC的LoRaWAN_FUOTA移植.pdf》資料免費(fèi)下載
發(fā)表于 01-15 15:24
?1次下載

ADS1255斷電之后再上電就不可以讀取了,是什么原因?
如題,使用ADS1255芯片做數(shù)據(jù)采集的時(shí)候,STM32F107在下載數(shù)據(jù)之后第一次能正確AD數(shù)據(jù)采集,在仿真的時(shí)候也可以一直做AD數(shù)據(jù)采集。但是斷電之后再上電就不可以讀取了,請(qǐng)教一下什么原因。采集電壓不變,VREF不變。
發(fā)表于 01-10 08:06
基于機(jī)智云移植STM32L496G代碼移植
前言最近我拿到了STM32L496AGMCU,發(fā)現(xiàn)其擴(kuò)展版可以連接ESP-01S。我想嘗試將開(kāi)發(fā)板連接到我們的機(jī)智云上,并根據(jù)機(jī)智云提供的文檔進(jìn)行程序移植。STM32CubeMX移植機(jī)

【GD32 MCU 移植教程】10、從STM32F030系列移植到GD32E230系列
GD32E230 對(duì)比 STM32F030 有著很好的兼容性和更高的性?xún)r(jià)比,內(nèi)核和外設(shè)都有所增強(qiáng)。本人曾做過(guò)產(chǎn)品的 MCU 替換,將基于 STM32F0xx 1.5.0 固件庫(kù)的應(yīng)用程序移植到

【GD32 MCU 移植教程】9、從 STM32F10x 系列移植到 GD32F30x 系列
【GD32 MCU 移植教程】8、從 STM32F4xx 系列移植到 GD32F4xx 系
、外設(shè)及性能對(duì)比以及從 STM32F4xx 移植到 GD32F4xx 的移植步驟,旨在讓開(kāi)發(fā)者能夠快速?gòu)?b class='flag-5'>

基于STM32的E01和E01C驅(qū)動(dòng)移植
實(shí)驗(yàn)簡(jiǎn)介基于STM32F103C8T6的E01系列(nRF24L01P)和E01C系列(SI24R1)的EBYTE官網(wǎng)例程移植。EBYTE官網(wǎng)例程是基于STM8L151編寫(xiě),本次實(shí)驗(yàn)的目的是將該例程

請(qǐng)問(wèn)stm32f107的程序可以直接燒入at32f407嗎?
有個(gè)stm32f107的產(chǎn)品 ,不想重新開(kāi)發(fā),想直接替換芯片和程序可以嗎?
發(fā)表于 07-26 06:01
評(píng)論