ARM7启动流程详解

ARM7启动流程详解,第1张

 

  1.ARM从地址0x00000000开始执行指令,为ARM的6个运行模式设置栈

  2.设置4个CS片选值如果WATCHDOG没到,重新设置BAI,否则跳过

  3.初始化GPIO如果WATCHDOG没到,重新设置LCD(打开LCD),否则跳过

  4.调用硬件初始化函数HardwareInit()

  {

  设置GPIO(GPIOCON,GPIODIR,GPIODAT)

  设置GPON(PDCUC)

  设置PWM(PWMP,PWM0,PWM1)

  设置HANDFREE

  禁止UART0和UART1上用于IRDA的脉冲波形

  配置时钟频率OPCLK: clock frequency for SC core, DSP core,

  初始化定时器TIMER0和TIMER1

  初始化系统控制寄存器SYSCON

  如果WATCHDOG已到达,则初始化DMA单元DMAU

  配置PIO

  配置中断控制器单元ICU(LIR0, LIR1, LIR2, LIR3, ICR, IMR)

  初始化开关逻辑OOL,重新装载WATCHDOG

  }

  调用函数init_Main,进入主函数

  {

  设置V_MODE电压

  设置LCD和MEMORY电压

  设置UART0波特率,流量控制等

  等待UART配置300us

  向PC发送BOOT_INIT

  初始化RTK

  Rtk00Go();

  初始化task和启动task

  进入内核任务调度和消息处理}结束

  }

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2713633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存