OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8160|回复: 3

ucos ii在3.5版本库函数移植问题

[复制链接]

19

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2012-9-7
在线时间
0 小时
发表于 2012-11-7 10:23:26 | 显示全部楼层 |阅读模式
/**
  ******************************************************************************
  * @file    roject/STM32F10x_StdPeriph_Template/main.c 
  * @author  MCD Application Team
  * @version V3.5.0
  * @date    08-April-2011
  * @brief   Main program body
  ******************************************************************************
  * @attention
  *
  * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
  * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
  * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
  * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
  * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
  * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
  *
  * <h2><center>&copy; COPYRIGHT 2011 STMicroelectronics</center></h2>
  ******************************************************************************
  */  
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "lcd.h"
#include "includes.h"

//Mini STM32开发板范例代码10
//TFTLCD显示 实验
//正点原子@ALIENTEK
//技术论坛:www.openedv.com
//Mini STM32开发板扩展实例 
//ucos 实验
//正点原子@ALIENTEK
//技术支持:www.openedv.com

//设置任务堆栈大小
#define LED_STK_SIZE     32
#define LED1_STK_SIZE    33
#define LCD_STK_SIZE     64
#define START_STK_SIZE   128
#define ADC_STK_SIZE     50

//设置任务优先级
#define LED_TASK_Prio       9
#define LED1_TASK_Prio      5
#define LCD_TASK_Prio       4
#define START_TASK_Prio     10
#define ADC_TASK_Prio       8
#define BUF_SIZE 8
//任务堆栈
OS_STK  TASK_LED1_STK[LED_STK_SIZE];
OS_STK  TASK_LED_STK[LED1_STK_SIZE];
OS_STK  TASK_LCD_STK[LCD_STK_SIZE];
OS_STK  TASK_START_STK[START_STK_SIZE];

//任务申明
void TaskStart(void *pdata);
void TaskLed(void *pdata);
void TaskLed1(void *pdata);
void TaskLCD(void *pdata);

//系统时钟配置函数
void SysTick_Configuration(void);
u8  colorIndex=0;
u16 colorTable[]={BLACK,YELLOW,BLUE,RED,GREEN};
 int main(void)
 {
 
SystemInit();
delay_init(72);     //延时初始化
NVIC_Configuration();
uart_init(9600);
  LED_Init();
LCD_Init();
// POINT_COLOR=RED;
LCD_Clear(BLUE); 
//SysTick_Configuration();
OSInit();
OSTaskCreate( TaskStart, //task pointer
(void *)0, //parameter
(OS_STK *)&TASK_START_STK[START_STK_SIZE-1], //task stack top pointer
START_TASK_Prio ); //task priority
OSStart();
return 0;

 }
 
//开始任务
void TaskStart(void * pdata)
{
pdata = pdata; 
OS_ENTER_CRITICAL();   
OSTaskCreate(TaskLed, (void * )0, (OS_STK *)&TASK_LED_STK[LED_STK_SIZE-1], LED_TASK_Prio);
OSTaskCreate(TaskLed1, (void * )0, (OS_STK *)&TASK_LED1_STK[LED1_STK_SIZE-1], LED1_TASK_Prio);
  OSTaskCreate(TaskLCD, (void * )0, (OS_STK *)&TASK_LCD_STK[LCD_STK_SIZE-1], LCD_TASK_Prio);
OSTaskSuspend(START_TASK_Prio); //suspend but not delete
OS_EXIT_CRITICAL();
}
//任务1
//控制DS0的亮灭.
void TaskLed(void *pdata)
{
while(1)
{
LED0=!LED0;
OSTimeDlyHMSM(0,0,0,500);
}
}
//任务2
//控制DS1的亮灭.
void TaskLed1(void *pdata)
{
while(1)
{
LED1=!LED1;
OSTimeDlyHMSM(0,0,0,600);
}
}

void TaskLCD(void *pdata){
 
    while(1)   
{   
 if(colorIndex==5) 
       colorIndex=0; 
  LCD_Clear(colorTable[colorIndex]);
  colorIndex++;
  OSTimeDlyHMSM(0,0,0,400);
 } 
 }  
//void SysTick_Configuration(void)
//{  
  //SysTick_Config(SystemCoreClock / 1000); //Initialize and start the SysTick counter and its interrupt.
//

卡死了这是什么问题呢?求大侠指教

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

230

主题

1950

帖子

10

精华

论坛元老

Rank: 8Rank: 8

积分
4562
金钱
4562
注册时间
2010-12-14
在线时间
32 小时
发表于 2012-11-7 12:34:45 | 显示全部楼层
你说我们提供的例程卡死还是您做了修改?
我是开源电子网?网站管理员,对网站有任何问题,请与我联系!QQ:389063473Email:389063473@qq.com
回复 支持 反对

使用道具 举报

19

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2012-9-7
在线时间
0 小时
 楼主| 发表于 2012-11-7 18:53:33 | 显示全部楼层
回复【2楼】Admin:
---------------------------------
你们的例程我是直接搬在3.5版本的库函数里面了!
回复 支持 反对

使用道具 举报

19

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2012-9-7
在线时间
0 小时
 楼主| 发表于 2012-11-7 22:00:15 | 显示全部楼层
回复【2楼】Admin:
---------------------------------
大哥我就是简单的把ucos ii移植到了3.5版本的库函数里面,其他的都是照搬照抄的!什么情况呢?其他几个兄弟一直的也是同样的问题!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-3-1 05:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表