C环境引导时禁止看门狗计时 C编译器运行时支持库中的C环境初始化函数是_c_int00,它完成全局和静态变量的初始化。包括为每个初始化全局变量把数据从.cinit段(位于片上FLASH存储器)拷贝到.ebss段(位于RAM)。例如,当一个全局变量在源代码中声明为: intx=5; 5被放置在初始化段.cinit,而符号x被放置在.ebss段。然后,_c_int00程序在运行时把5拷贝到x的位置。当软件中有初始化全局和静态变量的大量数值时。在C环境引导程序完成并且调用main()(这里看门狗可以被配置或被禁止)函数之前看门狗定时器会超时。在代码开发的过程中,这个问题可能不会在RAM中显现出来,因为从.cinit段拷贝的数据被连接到RAM后会非常快速地运行。然而,当.cinit段连接到内部Flash时。拷贝每个数据将会耗费大量的周期。因为内部Flash存储器缺省为**等待状态(等待状态仅在用户代码运行到main()后才会被配置)。另外。代码从Flash中实现数据拷贝.这又会增加完成数据拷贝需要的时间(代码取指和数据读肯定会访问Flash)。 看门狗超时周期缺省到尽可能的**小值.结
上一条:13465201卡件
下一条:13618802卡件
【如果您还没有关注“公司名称”手机网站】