EDN首页   博客首页

日志档案

发表于 2007-5-21 11:04:53

2

标签: EMC  单片机  指令  技巧  

关于EMC编程中的TBL应用

关于EMC编程中的TBL应用

一点点,很多人都知道了。欢迎了解的人增加补充。

EMC软件编程的TBL指令一旦后面所跟的表格出界,会出现错误,但编译不会报错,而且有时错误不容易查出来。一般来说都是把表格之类的东西放在每个PAGE的最前面。但有时也会用到TBL作为程序分支的跳转,会出现在程序中间,可以加上些伪指令在头文件里,这样TBL就可以放在程序当中了,如果一旦过界,编译时会报错的。这个也是我从示例程序中看到的。
TableStart macro
 _TabLoc var $/256
 endm
 
TableEnd macro
 _TabTmp var $/256
 if _TabTmp != _TabLoc
 message "Table out page"
 _TabErrLocL var $%0x400
 _TabErrLocH var $/0x400
 endif
 _TabLoc var 1000
 endm 
上面的放在头文件里。
应用,例如:
  TBL
  TABLESTART
  JMP HOUR_DOWN
  JMP MINUTE_DOWN
  JMP MONTH_DOWN
  JMP DATE_DOWN
  JMP YEAR_DOWN
  TABLEEND

这段程序如果TABLESTART和tableend之间越界,编译时会提示“Table out page”

系统分类: 单片机   |   用户分类: 软件相关   |   来源: 转贴   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(887)    回复(0)  

投一票您将和博主都有获奖机会!