您当前的位置:五五电子网电子知识单片机-工控设备综合-其它基于IAR编译器DS80C400的开发 正文
基于IAR编译器DS80C400的开发

基于IAR编译器DS80C400的开发

点击数:7239 次   录入时间:03-04 11:42:13   整理:http://www.55dianzi.com   综合-其它

    mov a,r2_b0

    movx @dptr,a        ; bytes of an integer are swapped and stored in memory

    mov r3,#00          ; return 'success'

    mov r2,#00

    sjmp ltob_exit

    ltob_err:

    mov r3,#00          ; return 'error'

    mov r2,#01

    ltob_exit:

    ret

    END                 ; end of assembly program

    局限性以及开发问题

    以下是使用6.11A版的IAR编译器时发现的局限性:

    IAR编译器用堆栈存储本地变量。在DS80C400中,堆栈限制为1024字节。DS80C400库的默认堆栈交换为384字节(ROM_SAVESIZE) .如果您的程序声明了多个堆栈变量,确保该限制也适当地变化。要改变默认任务的交换大小,使用Dallas Semiconductor的task_genesis(unsigned int savesize)库或rom400_task.h中定义的task_fork(unsigned char priority, unsigned int savesize),并给savesize参数提供正确的值。

    printf、sprintf等函数存在一些问题:只有选择了'lowest optimization level'函数才能正常工作。要选择优化等级,找到project→options→ICC8051,并选择Code标签中的'None'.

    IAR printf, sprintf的默认库不能正常工作。要使它们正常工作,您的C程序应包含IAR提供的C文件(如#include <printf.c>)。

    结论

    Dallas Semiconductor为IAR编译器提供支持C程序访问DS80C400 ROM软件的函数。用C程序能够访问网栈、存储管理器、进程调度器以及DS80C400的其它许多函数。使用C语言的DS80C400微控制器开发者能够编写出更精简的应用程序,赋予系统足够的速度、能力和代码空间。Dallas Semiconductor正致力于将所有目前工作与Keil编译器的DS80C400库移植到IAR.请经常访问DS80C400 IAR库主页获得升级。



上一页  [1] [2] [3] [4] 


本文关键字:开发  编译器  综合-其它单片机-工控设备 - 综合-其它

《基于IAR编译器DS80C400的开发》相关文章>>>