1747|3

5

帖子

0

资源

一粒金砂(初级)

zigbee的main函数结构问题

请问各位大神,下列代码为什么要先关闭中断,最后又要开启中断,急求,初学zigbee,望解释稍微详细些,非常感谢!
int main( void )
{  osal_int_disable( INTS_ALL ); //关闭所有中断
HAL_BOARD_INIT(); //初始化系统时钟  
zmain_vdd_check(); //检查芯片电压是否正常  
InitBoard( OB_COLD ); //初始化 I/O ,LED 、Timer 等
HalDriverInit(); //初始化芯片各硬件模块
osal_nv_init( NULL ); //初始化 Flash 存储器
ZMacInit(); //初始化 MAC 层  
zmain_ext_addr(); //确定 IEEE 64 位地址
zgInit(); //初始化非易失变量
#ifndef NONWK  // Since the AF isn't a task, call it's initialization routine
afInit();
#endif  osal_init_system(); //初始化操作系统  
osal_int_enable( INTS_ALL );  //使能全部中断  
InitBoard( OB_READY ); //最终板载初始化
zmain_dev_info(); //显示设备信息
#ifdef LCD_SUPPORTED  
zmain_lcd_init(); //初始化 LCD
#endif  
#ifdef WDT_IN_PM1  /* If WDT is used, this is a good place to enable it. */ WatchDogEnable( WDTIMX );
#endif  osal_start_system();// No Return from here 执行操作系统,进去后不会返回
return 0; // Shouldn't get here.
} // main()
此帖出自RF/无线论坛

回复

3409

帖子

0

资源

纯净的硅(高级)

进行系统配置的时候
控制器还没有做好处理外部数据的准备
这个时候开中断,能干吗呢?
除了影响正常的配置,没啥作用了
还是关着吧
个人签名So what......

回复

1797

帖子

0

资源

五彩晶圆(初级)

同意楼上的说法,在上电初始化的过程中基本都是对各个功能和外设的配置,使能中断没有什么意义,等配置完成了,要进入正常的工作状态时,就得打开中断

回复

5

帖子

0

资源

一粒金砂(初级)

ljj3166 发表于 2015-4-22 00:06
进行系统配置的时候
控制器还没有做好处理外部数据的准备
这个时候开中断,能干吗呢?
除了影响正常的配置,没啥作用了
还是关着吧

额,今天我们老师讲了一下,这个主要是为了各项初始化能够顺利进行,避免初始化过程收到干扰

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

关闭
站长推荐上一条 1/7 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表