嵌入式开发者社区

标题: 启动BIOS_START()之后怎么初始化 [打印本页]

作者: 朱宝军    时间: 2017-7-11 16:24
标题: 启动BIOS_START()之后怎么初始化

我的工程需要一个IIC接口的RTC时钟芯片(用的是dsp/bios,芯片是c6455),上电时首先需要配置RTC时钟芯片,然而由于配置RTC时钟芯片需要IIC中断方式进行通信,我在dsp/bios中配置了IIC中断bios.HWI.instance("HWI_INT6").interruptSelectNumber = 16; bios.HWI.instance("HWI_INT6").useDispatcher = 1; bios.HWI.instance("HWI_INT6").fxn = prog.extern("IIC_ISR"); 配置没有问题,所以初始化RTC时钟芯片需要在dsp/bios启动之后才能进行(要用到bios配置的中断),又因为初始化只能进行一次,所以我想怎么才能做到只运行一次,把初始化放到放到任务进程和空闲进程都有可能被bios多次调用。所以我想在bios之后是不是还能调用函数,由于dsp/bios版本比较老,好像不支持BIOS_start()函数。确实在cfg.s62看到了BIOS_start();但是不知道怎么在main()函数中调用。
请问能不能像下面这么写,另外dsp/bios能调用bios_start()这个函数吗?
main()
{
BIOS_start();
init(); //我的初始化函数
}

作者: 朱宝军    时间: 2017-7-12 09:40
通常的初始化函数是放在bios启动之前,我想把初始化函数放在bios启动之后,在bios中有个bios.GBL.USERINITFXN 是用来定义在bios之前调用的初始化函数,我想问一下有没有类似的配置,配置函数在bios启动之后再运行。
作者: lide0619    时间: 2017-7-19 10:18
在BIOS_start前动态或静态创建一个任务Task
在Task的初始化中(也就是while(1)循环前面)对RTC进行初始化




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4