应广单片机吧 关注:140贴子:459
  • 5回复贴,共1

这MINI C什么实现查表?在线等……

只看楼主收藏回复

这MINI C什么实现查表?在线等……


来自Android客户端1楼2018-08-21 23:26回复
    不要等了,用PCADD来弄


    IP属地:广东2楼2018-08-22 00:39
    回复
      switch case查表可以吗?


      IP属地:北京来自Android客户端3楼2019-03-07 01:04
      回复
        在一些使用中,我们常会遇到一些表格的创建,比如温度,电量百分比等。
        因为在应广的单核单片机中,不具备那条查表指令,
        lbtabh index;//取指定ROM中的高字节
        lbtabl index;//取指定ROM中的低字节
        所以不支持直接的表格定义了。有一些用户老问,为什么PMC232那样写可,PMS131就不可以。
        这就是原因,成本做低了,一些指令不支持了。
        取而代之的是利用PCADD指令来做调用返回立即数的形式,来建立表格。
        比如我们要建立一个字符输出的表格:
        void digital_charactor_out_table(void)
        {
        byte a_tamp;
        a++;
        if(a <= 13) //这是在防止查表超出范围,让程序跑飞。
        {
        pcadd a; //a = 1~n,a值等于0时不能跳出pcadd循环
        {
        ret ~0x3f; //00 ,所有的立即数一个个的返回,PIC他们也是这样做的,
        只是他们的编译器,处理能力更强大一些
        ret ~0x06; //01
        ret ~0x5b; //02
        ret ~0x4f; //03
        ret ~0x66; //04
        ret ~0x6d; //05
        ret ~0x7d; //06
        ret ~0x07; //07
        ret ~0x7f; //08
        ret ~0x6f; //09
        ret ~0x40; // -
        ret ~0x3e ; //u
        ret ~0x37 ;//n
        ret ~0x37;
        }
        }
        else
        {
        .wdreset;
        }
        }


        IP属地:广东4楼2019-03-15 16:08
        回复
          用指针


          来自Android客户端5楼2020-07-13 07:40
          回复
            用if查表


            IP属地:北京来自Android客户端6楼2021-03-29 19:47
            回复