① keil程序编译出现未定义符号
从图中来看,是ADD1这个子函数的标号未定义。
前面也可能还有其他的未定义标号。
② keil汇编语言 编译不能识别P1
你需要包含51的头文件,例如reg51.h或reg52.h之类,否则汇编器不能识别P1是什么东西。
③ keil中已经定义了为什么编译还说未定义
有3个子程序声明语句不带括号( ); 肯定是错误的。
其实这三行没必要写的。就是有括号( )是对的,也不用写这三行的,都删掉。如果子程序写在主程序的后面了,主程序还要调用时,才需要先声明。而这三个子程序都在主程序前面的,就不用声明了。
④ keil链瀹氢箟镙囱瘑绗︽槸浠涔堥敊璇锛
链瀹氢箟镙囱瘑绗︽槸undefinedidentifier銆鍦ㄧ▼搴忓唴浣跨敤浜嗘病链夎瀹氢箟镄勬爣蹇楃︽垨钥呭彉閲忥纴鏄甯歌佺殑keil缂栬疟阌栾痚锛屽紩鍙戣繖涓阌栾镄勫师锲犳槸浣犱娇鐢ㄧ殑鍙橀噺娌℃湁琚瀹氢箟銆
瑙e喅锷炴硶鏄镓惧埌杩欎釜娌℃湁琚瀹氢箟镄勬爣蹇楁垨钥呭彉閲忚繘琛屽畾涔夈傚彟澶栦竴绉嶅父瑙佺殑阌栾灏辨槸澶у皬鍐椤艰嚧镄勶纴濡备綘瀹氢箟镄勬槸unsignedcharnum锛屽湪浣跨敤镄勬椂鍊欙纴鍐欐垚浜哊UM锛屼篃浼氩嚭鐜板悓镙风殑阌栾銆
镙囱瘑绗︾殑瀹氢箟
鍦ㄨ$畻链虹紪绋嬩腑锛屽彉閲忔垨镙囬噺鏄涓庣浉鍏宠仈镄勭﹀彿钖岖О閰嶅圭殑瀛桦偍浣岖疆锛屽叾鍖呭惈绉颁负鍊肩殑涓浜涘凡鐭ユ垨链鐭ユ暟閲忕殑淇℃伅銆
鍙橀噺钖岖О鏄寮旷敤瀛桦偍鍊肩殑阃氩父鏂规硶锛涜繖绉嶅悕绉板拰鍐呭圭殑鍒嗙诲厑璁哥嫭绔嬩簬鍏舵墍浠h〃镄勭‘鍒囦俊鎭浣跨敤璇ュ悕绉般傝$畻链烘簮浠g爜涓镄勬爣璇嗙﹀彲浠ュ湪杩愯屾椂缁戝畾鍒颁竴涓鍊硷纴骞朵笖鍙橀噺镄勫煎洜姝ゅ彲鑳藉湪绋嫔簭镓ц岃繃绋嬩腑鍙戠敓鍙桦寲銆