zoukankan      html  css  js  c++  java
  • IAR使用notice

    1、IAR中无法程序跳转问题

      在工程的C编译器选项里的预编译添加$TOOLKIT_DIR$\inc解决,需要clean一下工程再make即可。($TOOLKIT_DIR$这个语法表示包含文件的路径在 IAR 安装路径的 8051文件夹下,也就是说 IAR安装在C盘中,它就表示包含文件指向 C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\8051\inc)

     
    2、IAR不支持位定义怎么实现位访问
       IAR for 51中位定义如下,与keil对比如下,e.g.PSW_bit.P = 1;IAR位访问格式。
     在IAR位定义
    在keil中位定义
     
    3、IAR与keil中断函数区别
      中断函数是如下形式
      在keil中:
      void Timer0_isr(void) interrupt 1
      {
              //code
      }
      而在IAR中:
      #pragma vector=timer0
      __interrupt void Timer0_isr(void)
      {
              //code
      }
      在io8051.h系统头文件中自定义timer0
      #define timer0 0x0B /* Timer 0 Interrupt */
      这里 __interrupt 表示Timer0_isr()是一个中断函数;#pragma vector 说明该中断函数的入口地址。
     
    4、code和const 
      只需要吧code关键字替换为const就行了。但是编译报错,说定义的常量数组太大,这是为什么。打开工程的option选项,首页右下角有个关于常量位置的设置,选择将常量放到代码空间即可。
     
    5、IAR的Linker错误问题
       Error[e12]: Unable to open file 'C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\8051\LIB\DLIB\dl-pli-nlxd-2e16x01n.r51'
      解决问题方式,更改配置如下所示:
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    linux系统的nobody用户
    java包命名规则
    配置文件解析
    jps参数
    Java数据类型总结
    JSON与JAVA数据的相互转换
    maven中使用net.sf.json-lib
    设计 REST 风格的 MVC 框架
    Java 5种字符串拼接方式性能比较
    spring获取webapplicationcontext,applicationcontext几种方法详解
  • 原文地址:https://www.cnblogs.com/smy87/p/7878618.html
Copyright © 2011-2022 走看看