博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
K60 启动过程分析
阅读量:6225 次
发布时间:2019-06-21

本文共 2917 字,大约阅读时间需要 9 分钟。

 

很高兴老师借给我一K60的开发板,趁着暑假好好鼓捣鼓捣!

 

 

 

 

 

 

 

 

有了上图的过程分析我想心里大概有个低了吧!

以下看代码:

/* CodeWarrior ARM Runtime Support Library * Copyright �2012 Freescale Semiconductors. All rights reserved. * * $Date: 2013/02/08 07:14:44 $ * $Revision: 1.6 $ *//* *	__arm_start.c	-	entry-point for ARM programs * */#include 
#include
#include
_EWL_BEGIN_EXTERN_C#if SUPPORT_SEMIHOST_ARGC_ARGV#define __MAX_CMDLINE_ARGS 10static char *argv[__MAX_CMDLINE_ARGS] = { 0 };#elsestatic char *argv[] = { 0 };#endif#if __GNUC__#define __call_static_initializers __init_cpp#endif#if SUPPORT_SEMIHOST_ARGC_ARGVextern int __argc_argv(int, char **);#endif /* SUPPORT_SEMIHOST_ARGC_ARGV */extern void __call_static_initializers(void);extern int main(int, char **);#ifdef __VFPV4__extern void __fp_init(void);#endif /* __VFPV4__ */extern void __init_registers();extern void __init_hardware();extern void __init_user();#if defined(__APCS_ROPI)extern void __init_pic();#endif#if defined(__APCS_RWPI)extern void __init_pid();#endif#if defined(__APCS_ROPI) || defined(__APCS_RWPI)extern void __load_static_base();#endif#if defined(__SEMIHOSTING)extern void __init_semihost(void) _EWL_WEAK;#endif#if SUPPORT_ROM_TO_RAMextern void __copy_rom_sections_to_ram(void);extern char __S_romp[];#endifstatic void zero_fill_bss(void){ extern char __START_BSS[]; extern char __END_BSS[]; memset(__START_BSS, 0, (__END_BSS - __START_BSS));}#ifndef __thumb // Thumb version#error Thumb startup#endif// To keep iar debugger happyvoid __iar_program_start(void) _EWL_NAKED;void __thumb_startup(void);void __iar_program_start(){ __thumb_startup();}void __thumb_startup(void) _EWL_NAKED;void __thumb_startup(void){ // Setup registers __init_registers(); // setup hardware __init_hardware();#if defined(__APCS_ROPI) || defined(__APCS_RWPI) // static base register initialization __load_static_base();#endif#if defined(__APCS_RWPI) // -pid // setup static base for SB relative position independent data // perform runtime relocation __init_pid();#endif#if defined(__APCS_ROPI) // -pic // perform runtime relocation for position independent code __init_pic();#endif // zero-fill the .bss section zero_fill_bss();#if SUPPORT_ROM_TO_RAM if (__S_romp != 0L) __copy_rom_sections_to_ram();#endif // initialize the floating-point library#ifdef __VFPV4__ __fp_init();#endif // call C++ static initializers __call_static_initializers(); // initializations before main, user specific __init_user();#if defined(__SEMIHOSTING) // semihost initializations __init_semihost();#endif // call main(argc, &argv)#if SUPPORT_SEMIHOST_ARGC_ARGV exit(main(__argc_argv(__MAX_CMDLINE_ARGS, argv), argv));#else exit(main(0, argv));#endif // should never get here while (1);}_EWL_END_EXTERN_C

 

封尘浪用的库为 苏州大学 的库这两天一直在移植,各种问题,整体来说苏州的库还是不错的。就是资料有点少。这个暑假准备拿下K60,(鸭梨山大)好了,有时间在把学习过程与大家共享受!

同时,欢迎您来交流和共同探讨,解决这个问题。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

你可能感兴趣的文章
在交换机上拒绝非法的DHCP服务器分配IP地址
查看>>
解决ezSQL编码问题
查看>>
[转]如何用Jmeter做压力测试
查看>>
跨站点如何快速部署DC
查看>>
C#修改目录和文件权限
查看>>
EL表达式
查看>>
深入浅出Hadoop Mahout数据挖掘实战(算法分析、项目实战、中文分词技术)
查看>>
UbuntuServer 12.04安装记录(二):svn服务的创建
查看>>
谈谈最近深圳找工作经历
查看>>
vSphere 5.0 存储特点—简介
查看>>
android 自定义全局未处理异常捕获器
查看>>
12 月29日导入数据库 文件
查看>>
elasticsearch安装教程
查看>>
Windows Server 2008 R2 自定义桌面
查看>>
MYSQL定时任务
查看>>
It’s All Over
查看>>
Gradle-user guide-第6章 构建脚本基础(译)
查看>>
NO.5 选择适合您的禅道项目管理软件安装方法
查看>>
我的友情链接
查看>>
linux编辑器之最利器--vim
查看>>