ReadMeComment.txt
上传用户:yyyd609
上传日期:2022-07-18
资源大小:183k
文件大小:3k
源码类别:

微处理器开发

开发平台:

C/C++

  1. 实验例程 MDK工程的基本文件组织结构:
  2.    工程名
  3.        |----Startup  启动代码 (STR71x.S),请注意最好使用例程所带的启动代码,
  4.        |               MDK自动生成的启动代码需要修改才可使用于实验箱上。
  5.        |----Common 公用代码
  6.        |
  7. |----Source     用户源代码
  8.        |
  9. |----Script     脚本文件(调试文件int,分散加载文件sct等)
  10.         |
  11.         |----ReadMe     工程说明文档
  12. ===========================================================================================
  13. 开发板跳线设置:
  14.     如果在片上Flash运行:
  15.          JP1:2、3短接
  16.     如果在片上RAM运行:
  17.          JP1:1,2短接
  18.          JP2:1,2短接
  19.          JP3:2、3短接
  20. 工程的Option设置: 
  21.     Device下选择STMicroelectronics_STR711FR2;
  22. Target下设置  on-chip  IROM1: 0x40000000,0x40000  Startup
  23.                   on-chip  IRAM1: 0x20000000,0x80000
  24.      
  25. Output下设置文件夹为当前目录下的/obj;
  26. Listing下设置文件夹为当前目录下的/lst;
  27. C/C++和ASM下在includ path 文本框中将common目录所在路径加入;
  28. Linker下设置Scatter File,如果在RAM中运行则选择"RuninRAM.SCT",  
  29.         如果在FLash中运行则选择"RuninFLash.SCT"(这两个文件均在common目录下);
  30. 请注意在Script文件组下添加这两个文件时必须指定其为文本文件,而不是汇编语言文件.
  31. Debug下选择 use Simulator则可在PC上进行软件仿真;
  32. 选择 use ULINK ARM Debugger则进行目标板联机调试;
  33. 选择 Run to main 则程序自动运行到main()函数后暂停,须点击Run按钮或按F5键程序才继续运行。
  34.         在Initialization文本框中可加入调试命令脚本文件,以帮助调试.在FLash中运行,请加入RunInFlash.ini,在RAM中运行请加入RunInRam.ini。(这两个文件均在common目录下);
  35. Utilities下选择 ULINK ARM Debugger,点击setting按钮设置烧写参数
  36. RAM for Algorithm 设置Start: 0x20000000,Size 0x800
  37. Programming Algorithm选择 STR71x Bank 0 Flash,STR71x Bank 1 Flash
  38. =============================================================================================
  39. 调试命令文件(INI)用于使用软件仿真和联机测试时,以下是几个常用的命令,用户可以根据调试需要来写自己的调试命令文件. 
  40. pc=0xC000000    
  41. 令PC指向0xC000000处;(例程在RAM中运行时可指向0x20000000,如果在Flash中运行则指向0x40000000)
  42. map 0x01c00000, 0x02000000 read write
  43. 指定某段存储区域的属性为可读,可写,可执行;
  44. Go startaddr, stopaddr
  45. 程序从startaddr开始执行,到stopaddr处停止;起始地址都可以缺省. 也可用函数名表示地址例如 G , main
  46. ==============================================================================================
  47. 分散加载文件(sct)用于加载映像文件到存储空间中,MDK可根据存储设置自动生成,复杂应用程序则需要自行编写. 
  48. 以下是在RAM中运行程序的SCT文:
  49. LR_IROM1 0x20000000         {    ; load region
  50.   ER_IROM1 0x20000000 0x00080000  {  ; load address = execution address
  51.    *.o (RESET, +First)
  52.    .ANY (+RO)
  53.   }
  54.   RW_IRAM1 0x20080000 0x00080000  {  ; RW data
  55.    .ANY (+RW +ZI)
  56.   }
  57. }
  58. 以下是在Flash中运行程序的SCT文件: 
  59. LR_IROM1 0x40000000         {    ; load region
  60.   ER_IROM1 0x40000000 0x00040000  {  ; load address = execution address
  61.    *.o (RESET, +First)
  62.    .ANY (+RO)
  63.   }
  64.   RW_IRAM1 0x20000000 0x00040000  {  ; RW data
  65.    .ANY (+RW +ZI)
  66.   }
  67. }
  68. ============================================================================================
  69.