OpenEdv-开源电子网

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

STM32F4光盘扩展例程 USOSIII 系统轮询时间慢

[复制链接]

3

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2013-3-20
在线时间
6 小时
发表于 2015-3-18 16:36:42 | 显示全部楼层 |阅读模式
5金钱
原子哥,STM32F4光盘的扩展例程中的UCOSIII例程在“探索者STM32F4开发板”上跑,任务运行正常,改到STM32F407VET6上,任务运行比较很慢,尤其最后一个任务轮询到第一个任务,延时好久,请问是什么原因,谢谢!附件是我的工程。

test.zip

7.82 MB, 下载次数: 68

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

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2015-3-18 17:26:07 | 显示全部楼层
你的STM32F407VET6的板子的晶振没有问题吧,不会是没有倍频或者使用了内部晶振。你是直接使用我们的工程的吗?你用我们的工程,只是改一下芯片试试。
开往春天的手扶拖拉机
回复

使用道具 举报

3

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2013-3-20
在线时间
6 小时
 楼主| 发表于 2015-3-23 17:17:34 | 显示全部楼层
回复【2楼】zuozhongkai:
---------------------------------
晶振没有问题。
void delay_init(u8 SYSCLK)
{
#ifdef OS_CRITICAL_METHOD //????OS_CRITICAL_METHOD?¨????,???÷????ucosII??.
u32 reload;
#endif  
  SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8);
fac_us=SYSCLK/8; //??????·?????ucos,fac_us???è??????

#ifdef OS_CRITICAL_METHOD  //????OS_CRITICAL_METHOD?¨????,???÷????ucosII??.
reload=SYSCLK/8; //???????????????? ??????K    
reload*=1000000/OS_TICKS_PER_SEC;//?ù??OS_TICKS_PER_SEC?è?¨?????±??
//reload??24???????÷,×??ó??:16777216,??168M??,????0.7989s×ó??
fac_ms=1000/OS_TICKS_PER_SEC;//?ú±íucos???????±??×???????    
SysTick->CTRL|=SysTick_CTRL_TICKINT_Msk;    //????SYSTICK????
SysTick->LOAD=reload;  //??1/OS_TICKS_PER_SEC??????????
SysTick->CTRL|=SysTick_CTRL_ENABLE_Msk;    //????SYSTICK
#else
fac_ms=(u16)fac_us*1000;//·?ucos??,?ú±í????ms?è????systick?±????   
#endif //SYSTEM_SUPPORT_UCOS
}
这个函数是配置系统“滴答”时钟的么?怎么没有配置RCC,SYSCLK是多少,程序里配置系统时钟是在哪里?
回复

使用道具 举报

3

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2013-3-20
在线时间
6 小时
 楼主| 发表于 2015-3-24 10:52:54 | 显示全部楼层
找到了,配置RCC,在SystemInit()中,我想改成外部时钟,怎么改啊。
; Reset handler
Reset_Handler    ROC
                 EXPORT  Reset_Handler             [WEAK]
        IMPORT  SystemInit
        IMPORT  __main

                 LDR     R0, =SystemInit
                 BLX     R0
                 LDR     R0, =__main
                 BX      R0
                 ENDP
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-3-24 23:25:16 | 显示全部楼层
回复【4楼】lucjn:
---------------------------------
 默认就是用的外部时钟啊。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2013-3-20
在线时间
6 小时
 楼主| 发表于 2015-3-25 14:29:45 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
在“探索者STM32F4开发板”上,可以进入外部时钟配置,但是换到自己的板子上,进入到如下部分,等待外部时钟就绪,不通过,判断后直接退出。
和开发板上电路一样,区别是开发板用的“STM32F407ZGT6”,自己的板子用的是“STM32F407VET6”
  /* Wait till HSE is ready and if Time out is reached exit */
  do
  {
    HSEStatus = RCC->CR & RCC_CR_HSERDY;
    StartUpCounter++;
  } while((HSEStatus == 0) && (StartUpCounter != HSE_STARTUP_TIMEOUT));

  if ((RCC->CR & RCC_CR_HSERDY) != RESET)
  {
    HSEStatus = (uint32_t)0x01;
  }
  else
  {
    HSEStatus = (uint32_t)0x00;
  }

  if (HSEStatus == (uint32_t)0x01)
  {
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-3-25 22:49:17 | 显示全部楼层
回复【6楼】lucjn:
---------------------------------
 说明你的外部晶振电路有问题.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2013-3-20
在线时间
6 小时
 楼主| 发表于 2015-3-26 10:51:20 | 显示全部楼层
回复【7楼】正点原子:
---------------------------------
开始我也这样怀疑,但是我重新量了晶振和引脚,焊接没有问题,晶振也换过,但是没有改善。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-3-26 23:30:42 | 显示全部楼层
回复【8楼】lucjn:
---------------------------------
测试下晶振吧.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-24 10:20

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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