久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術(shù)學習與研究
當前位置:單片機教程網(wǎng) >> STM32 >> 瀏覽文章

ucos ii 移植到stm32f103ze上

作者:佚名   來源:轉(zhuǎn)自追風空間   點擊數(shù):  更新時間:2014年08月29日   【字體:

采用別人移植好的代碼。即所需函數(shù)已寫好。

準備工作:
1、ucos ii源碼
2、stm32庫
步驟:
1、建工程。
工程目錄為:
2、配置ucos ii
在os_cfg.h中配置相關(guān)功能
3、修改相關(guān)函數(shù)
ucos ii需要一個定時器,在stm32中采用systick定時器,因此需要配置systick定時器
void SysTick_Configuration(void)
{
//關(guān)計數(shù)
    SysTick_CounterCmd(SysTick_Counter_Disable); 
    //關(guān)中斷
    SysTick_ITConfig(DISABLE);
//配置SysTick的時鐘源  此時為AHB時鐘
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);
//配置指系統(tǒng)句柄的優(yōu)先級(Systick句柄  3號搶占優(yōu)先級,0號子優(yōu)先級)
NVIC_SystemHandlerPriorityConfig(SystemHandler_SysTick, 3, 0);
//設(shè)置重載值1ms中斷 HCLK=8M時
SysTick_SetReload(800000);  
//使能Systick中斷
SysTick_ITConfig(ENABLE);
    //使能Systick計數(shù)即啟動計數(shù)
SysTick_CounterCmd(SysTick_Counter_Enable);
}
需要systick定時器中斷,在中斷里面調(diào)用ucos的相關(guān)函數(shù),以此來作為ucos的時鐘。
void SysTickHandler(void)
{
OS_CPU_SR  cpu_sr;
// OS_ENTER_CRITICAL();  //保存全局中斷標志,關(guān)總中斷
//   OSIntNesting++;
//   OS_EXIT_CRITICAL();  //恢復全局中斷標志
OSIntEnter();
OSTimeTick();
OSIntExit();        
}
 
配置pendsv函數(shù)
ucos通過pendsv來實現(xiàn)任務(wù)調(diào)試,因此需要在啟動代碼中更改pendsv
將原來的PendSV改為
OSPendSV
否則,系統(tǒng)會卡在
OSStartHang
    B       OSStartHang                                         ; Should never get here
處。
4、includes.h的編寫
 
 
#ifndef  __INCLUDES_H__
#define  __INCLUDES_H__
 
#define   DEF_FALSE 0
#define   DEF_TRUE  1
 
#include    "ucos_ii.h"
#include "os_cpu.h"
#include "bsp.h"
#include    "app.h"
#include    "app_cfg.h"
 
#include    "stm32f10x_conf.h"
#include    
 
 
 
#if (uC_PROBE_OS_PLUGIN > 0)
#include    
#endif
 
#if (uC_PROBE_COM_MODULE > 0)
#include    
 
#if (PROBE_COM_METHOD_RS232 > 0)
#include    
#endif
#endif
 
 
 
#endif
 
5、bsp函數(shù)配置
stm32的相關(guān)硬件配置包括RCC、systick、NVIC、等,需要注意的是,systick定時器必須在OS啟動后才能啟動,否則,系統(tǒng)會崩潰。(這里有疑問,在OSStart執(zhí)行前使能systick中斷,系統(tǒng) 還是能運行)
6、編寫相關(guān)任務(wù)函數(shù)。
 
 
總結(jié),在移植UCOS時,需要編寫的函數(shù)文件有includes.h、os_cpu.c、os_cpu_a.asm、os_cpu.h、需要配置的文件有os_cgf.h、中斷和啟動代碼。
關(guān)閉窗口
主站蜘蛛池模板: 日本黄色不卡视频 | 黄色免费网站在线看 | 一级特黄a大片 | 日本一区二区三区免费观看 | 中文字幕av一区 | 国产99久久精品一区二区永久免费 | 欧美在线天堂 | 国产精品久久久久aaaa九色 | 色综合久久天天综合网 | 337p日本欧洲亚洲大胆 | 亚洲欧美日韩精品久久亚洲区 | 亚洲欧美日韩在线不卡 | 日韩精品在线一区 | 欧美日韩三级 | 欧美日韩中文字幕在线 | www.国产 | 国产精品永久久久久 | 亚洲激情视频在线 | 在线观看亚洲 | 91视视频在线观看入口直接观看 | 老司机67194精品线观看 | 国产免费播放视频 | 亚洲精品免费观看 | 九九一级片 | 亚洲网站免费看 | 欧美在线一区二区三区 | 欧美 日本 国产 | 激情av在线 | 国产四虎 | 自拍偷拍亚洲欧美 | 亚洲成人一级片 | 视频在线h| 中文字幕亚洲视频 | 一级黄a| av黄色在线观看 | 久久av一区二区 | 亚洲精品日韩综合观看成人91 | av片在线免费看 | 日本天堂一区二区 | 男女av| 久久久亚洲成人 |