久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: keil報錯ERROR L121 (IMPROPER FIXUP) [打印本頁]

作者: BARBATOS    時間: 2018-5-9 18:59
標題: keil報錯ERROR L121 (IMPROPER FIXUP)
之前找的一份資料里的程序,想改程序時卻出現了ERROR L121 (IMPROPER FIXUP)的情況,不知道該怎么解決。不過資料里確實有HEX文件,我也稍微了解了一下,可能是keil版本高的原因,我用的是keil5.

1.png (25.65 KB, 下載次數: 84)

1.png

2.png (27.46 KB, 下載次數: 87)

2.png

3.png (18.69 KB, 下載次數: 92)

3.png

作者: BARBATOS    時間: 2018-5-9 19:08
#include "keyboard.h"
extern bit bdata flag_key;
//按鍵掃描函數 :   
//功能;只掃描一個按鍵,按鍵為號小優先  
//返回鍵值:
//         1    2    3    10           //10:清零重量,兼去皮功能       
//         4    5    6    11           //11:清除單價
//         7    8    9    12           //12:顯示數值偏大調節按鍵  
//         14   0    15   13           //14:無功能(用于擴展)15:小數點   13:顯示數值偏小調節按鍵

unsigned char Getkeyboard(void)
{
    unsigned char number = 0;
    unsigned char i;
        //行輸入低電平
    ROW1=ROW2=ROW3=ROW4=0;
        //如果列輸出不全為高,則說明有鍵按下
        if (((COL1!=1)||(COL2!=1)||(COL3!=1)||(COL4!=1))&&flag_key==1)
        {
           //輸入0111
           flag_key=0;
           ROW1=0;
           ROW2=ROW3=ROW4=1;
           for (i=0;i<20;i++);
           if (COL1==0) return 1;           // 7
           else if (COL2==0) return 2;        //         8
           else if (COL3==0) return 3;         //        9
           else if (COL4==0) return 10;         //         10
           //輸入1011
           ROW2=0;
           ROW1=ROW3=ROW4=1;
           for (i=0;i<20;i++);
           if (COL1==0) return 4;          //4
           else if (COL2==0) return 5; //  5
           else if (COL3==0) return 6;        // 6
           else if (COL4==0) return 11;         //        11
           //輸入1101
           ROW3=0;
           ROW1=ROW2=ROW4=1;
           for (i=0;i<20;i++);
           if (COL1==0) return 7;  //1
           else if (COL2==0) return 8;          // 2
           else if (COL3==0) return 9;          //   3
           else if (COL4==0) return 12;          //   12
           //輸入0111
           ROW4=0;
           ROW1=ROW2=ROW3=1;
           for (i=0;i<20;i++);
           if (COL1==0) return 14;
           else if (COL2==0) return 0;
           else if (COL3==0) return 15;
           else if (COL4==0) return 13;
           //沒有檢測到列低電平
           return 99;
        }
        else if(COL1==1&&COL2==1&&COL3==1&&COL4==1)
        flag_key=1;
        return 99;
}

作者: BARBATOS    時間: 2018-5-10 09:51
qq8281212 發表于 2018-5-9 19:42
書上有解釋

請問一下是哪本書
作者: 51hei團團    時間: 2021-1-10 23:44
我今天也遇到了同樣的問題,IMPROPER FIXUP,研究了半天終于解決了,原來這個問題是因為Keil4和Keil5不支持bdata的問題導致的,所以退回Keil2,新建工程,加入文件,重新編譯就OK了,你這個上面也有bdata所以也可以用我的辦法來成功解決的.

參考資料:
The variables ibase and bary are bit-addressable. Therefore, the individual bits of these variables may be directly accessed and modified. Use the sbit keyword to declare new variables that access the bits of bdata variables. For example:

sbit mybit0 = ibase ^ 0;      /* bit 0 of ibase */
sbit mybit15 = ibase ^ 15;    /* bit 15 of ibase */

sbit Ary07 = bary[0] ^ 7;     /* bit 7 of bary[0] */
sbit Ary37 = bary[3] ^ 7;     /* bit 7 of bary[3] */
The above example represents declarations, not assignments to the bits of the ibase and bary bdata variables. The expression following the carat symbol ('^') in the example specifies the position of the bit to access with this declaration. This expression must be a constant value.

The range depends on the type of the base variable included in the declaration. The range is:

0-7 for char and unsigned char, 0-15 for int, unsigned int,
short, and unsigned short, and
0-31 for long and unsigned long.

并沒有定義bit類型的bdata。因此定義成char。

OFDM_PHY_ext   char     bdata   bLib_RxPlcEnd;
OFDM_PHY_ext   char     bdata  RX_BUSY;
OFDM_PHY_ext   char     bdata  TX_BUSY;
Comm_ext char bdata bCommRxEnd;
Comm_ext char bdata bCommRxstart;




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 在线观看欧美日韩 | 国产一区二区不卡 | 免费a在线| 日韩av在线不卡 | 国产一区二区三区视频在线 | 亚洲精品视频免费 | 久久久免费观看 | 婷婷精品 | 欧美色综合网 | 伊人在线视频 | 欧美777| 久久九 | 在线观看国产一区 | 成人aaa| 国产精品国产三级国产aⅴ浪潮 | 午夜在线影院 | 色天使在线视频 | 免费黄色一级视频 | 国产成人在线免费观看 | 亚洲欧美一区二区三区在线 | 亚洲一区国产精品 | 国产成人精品亚洲男人的天堂 | 天天搞天天干 | 性爱视频日本 | 亚洲一区二区在线免费观看 | 欧美日韩精品一区二区 | 亚洲永久免费 | 精品一区在线 | 精品欧美一区二区三区久久久 | 色综合久久88色综合天天 | 免费观看成人 | 在线观看欧美日韩 | 国产精品网站在线观看 | 午夜激情视频在线观看 | 99re在线观看 | 2017天天干| 第一福利丝瓜av导航 | 这里只有精品视频在线观看 | 国产综合久久 | 一区二区国产精品 | 青青草福利视频 |