您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> BF609定时器问题
本帖共有548个阅读者
发表帖子 发表投票 回复主题
BF609定时器问题
qinxf(论坛新手)
qinxf
头衔:社区公民
帮派:无帮无派
帖数:1
金钱:112
积分:2
注册时间:2016/4/21
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
BF609定时器问题

我想要实现的是coreA中执行linux系统,coreB中执行DSP程序,linux系统运行后通过icc_loader载入并启动coreB程序运行。

coreB中的程序大体如下:

1、使能定时器管脚外围功能,在pinmux_config.c中添加:

    /* PORTx_MUX registers */

    *pREG_PORTG_MUX = TIMER0_TMR3_PORTG_MUX;

    /* PORTx_FER registers */

    *pREG_PORTG_FER = TIMER0_TMR3_PORTG_FER;

2、主程序中如下:

uint8_t               TimerMemory[ADI_TMR_MEMORY];

static void           TimerHandler(void *pCBParam, uint32_t Event, void *pArg);

static ADI_TMR_HANDLE ghTimer;

static volatile bool  gbTimerInt = false;

uint32_t              Period_CNT;

static void TimerHandler(void *pCBParam, uint32_t Event, void *pArg)

  {

switch(Event)

{

case ADI_TMR_EVENT_DATA_INT:

adi_tmr_GetPeriod(ghTimer,&Period_CNT);

adi_tmr_Enable(ghTimer, false);

gbTimerInt = true;

break;

default:

break;

}

return;

}

void main(int argc, char *argv[])

{   ADI_TMR_RESULT    eTmrResult;

    Float32           freq_test=0;


    if( (eTmrResult = adi_tmr_Open (6,

                 TimerMemory,

                 ADI_TMR_MEMORY,

                 TimerHandler,

                 NULL,

                 &ghTimer)) != ADI_TMR_SUCCESS)

     {


     }

    eTmrResult = adi_tmr_SetMode(ghTimer, ADI_TMR_MODE_CAPTURE_ASSERT);

    eTmrResult = adi_tmr_SetPulsePolarity(ghTimer,true);

    eTmrResult = adi_tmr_SetClkInSource(ghTimer,ADI_TMR_CLKIN_SYSCLK);

while(1)

{

adi_tmr_Enable(ghTimer,true);

  while(gbTimerInt== true);    
     {

             gbTimerInt = false;

     }

  freq_test=(125.0/Period_CNT)*MHZTOHZ;//MHZTOHZ=1000000

}

问题:通过icc_loader加载coreB程序后死机,但是在CCES中coreA模仿linux运行,coreB程序却正常运行并得到正确的结果。

请专家多多指点!谢谢!


wojiushiwo
等级:论坛新手 参考IP地址:*.*.*.*
2017/2/28 14:25:45
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5195
金钱:34806
积分:6378
注册时间:2011/6/7
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
不清楚,没有在BF609上做这种uc+裸核得复杂设计

我是OP...
等级:管理员 参考IP地址:*.*.*.*
2017/3/2 22:49:51
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.160100 Call, 1 Queries, Processed in 0.046875 second(s),