⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keilc51 iap.txt

📁 c8051f310xmodembootloader.rar
💻 TXT
字号:
MCU:C8051F310

bootloader:0x0000-0x1000
        AP:0x1000-0x3dff
  reserved:0x3dff-0x3fff


1,建立bootloader.c
  加入startup.a51
  在startup.a51(默认) 里面第120行 加入如下 中断向量 函数地址映射
  如下:
  	ORG	0000BH    /*定时器0*/
	LJMP	0100BH    /*跳转到用户代码区1000h以后*/
        ...               /*所有中断*/
        ...
  在bootloader.c 中加入跳转到AP区的指令
  如下:
        ((void(code *)(void))0x1100)();  /*0x1100 为startup.a51的地址*/
                                         /*一般放在 中断映射后的地址*/


  编译:烧录从0x0000开始


2,建立AP.C 用户代码
  加入startup.a51  (可以不加)
  在keil->options->c51->interrupt vectors at address: 输入中断映射地址
  如下: 
       interrupt vectors at address: 0x1000 
  0x1000即AP的code区起始地址 也是中断矢量地址的映射基地址开始。

  在keil->options->BL51 Locate 设置如下
  定义 code Rang 0x1000-0x3dff
  CODE: 输入 ?C_C51STARTUP(1100H)        /*需要和bootloader中的跳转地址一致*/
                                         /*只需要定位好这个地址*/
                                         /*这样所有的中断函数都不需要再次定位*/

  编译:烧录的时候 从0x1000 开始烧 即第7块开始

  两个代码烧录完,复位就可以运行
  
3,bootloader区串口等下载 不能出现中断函数


  

	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -