STM32编译错误是怎么回事?
原因:
出现上述错误则是因为变量k重复定义,把你的头文件中的变量定义前加extern(只是变量声明不用初始化),再在某一个你要调用该变量的c文件的程序之前再定义(注意第一个调用的c文件要负责附带初始化该变量,其他调用的c文件就不需要初始化过程啦)一下就可以了。
绛旓細鍘熷洜锛氬嚭鐜颁笂杩伴敊璇垯鏄洜涓哄彉閲弅閲嶅瀹氫箟锛屾妸浣犵殑澶存枃浠朵腑鐨勫彉閲忓畾涔夊墠鍔爀xtern(鍙槸鍙橀噺澹版槑涓嶇敤鍒濆鍖)锛屽啀鍦ㄦ煇涓涓綘瑕佽皟鐢ㄨ鍙橀噺鐨刢鏂囦欢鐨勭▼搴忎箣鍓嶅啀瀹氫箟(娉ㄦ剰绗竴涓皟鐢ㄧ殑c鏂囦欢瑕佽礋璐i檮甯﹀垵濮嬪寲璇ュ彉閲忥紝鍏朵粬璋冪敤鐨刢鏂囦欢灏变笉闇瑕佸垵濮嬪寲杩囩▼鍟)涓涓嬪氨鍙互浜嗐
绛旓細STM32绋嬪簭缂栬瘧鍑虹幇閿欒锛鏄缃敊璇犳垚鐨锛岃В鍐虫柟娉曞涓嬶細1銆侀鍏堟墦寮STM32 ST-LINK Utility锛屼緷娆¢夋嫨鈥淔ile ->Open File...鈥濇垨鑰呮寜蹇嵎閿淐TRL + O鈥濆噯澶囨墦寮涓涓儳褰曟枃浠躲2銆佹壘鍒伴渶瑕佺儳褰曠殑HEX鏂囦欢锛岄夋嫨鈥滄墦寮鈥濄3銆佽蒋浠朵細灏嗚HEX鏂囦欢鍔犺浇鍒扮獥鍙o紝鍚屾椂浼氬湪涓嬮潰鐨勬秷鎭鏄剧ず鏂囦欢鐨勬牎楠岀爜銆4...
绛旓細鍘熷洜鏄棫鐗堢殑搴撲笌鏂扮増鐨勫簱鍙戠敓鍐茬獊浜锛屽啿绐佺殑鍘熷洜鏄棫鐗堝拰鏂扮増閮藉畾涔変簡鍚屼竴涓笢瑗匡紝姣斿鈥渟32鈥濓紝浜庢槸灏变細鍙戠敓閲嶅畾涔夌殑鎶ラ敊 瑙e喅杩欎釜闂鐨勬柟娉曞叾瀹炰篃涓嶉毦锛屽洜涓虹紪鍐欑▼搴忕殑鏃跺欐湁涓涓槻姝㈤噸瀹氫箟鐨勫畯锛屽湪鏂扮増鐨勫簱閲岄潰娣诲姞杩欐牱鐨勪竴涓畯灏卞彲浠ユ秷闄ゅぇ閮ㄥ垎鐨勯敊璇簡 鎴戜滑鍏堟壘鍒颁粠瀹氫箟鐨勫湴鏂癸紝鍙屽嚮閿欒璺熻釜鍒版姤...
绛旓細杩樻湁涓绉嶅彲鑳藉氨鏄綘鐨勫垵濮嬪寲鏂囦欢锛屾垜鎸囩殑鏄疢DK閲孌EBUG鐨勫垵濮嬪寲鏂囦欢閫夋嫨鏈夐棶棰樸備綘鍏堣瘯璇曞惂锛屽鏋滀笉琛岋紝鍙互璇翠竴涓嬩綘鐨凜PU鍨嬪彿锛屽拰MDK鐗堟湰鍙凤紝浠ュ強宸ョ▼鐨勭壒娈婃э紝澶у涔熷ソ甯綘鍒嗘瀽锛
绛旓細鐗堟湰闂锛氭妸绋嬪簭涓殑涓ゅ"__program_start"鏀逛负"__iar_program_start鈥
绛旓細浣犳病鏈夐夋嫨STM32鐨瀛樺偍浣嶇疆锛屾垜鐢ㄧ殑鏄疢DK 鎴釜鍥剧粰浣犵湅 锛孖AR浣犳壘涓涓嬶紝鏈変釜鍦版柟鏄缃瓨鍌ㄤ綅缃傝缃竴涓嬪氨OK浜
绛旓細1.灏嗕腑鏂囪矾寰勬敼涓鸿嫳鏂囪矾寰 2.鍘绘帀鏂囦欢鐨勫彧璇诲睘鎬 3.鐢ㄥ仛out杈撳嚭鐨勬枃浠跺す涔熶笉瑕佹槸涓枃
绛旓細keill鐜涓嬶紝浣跨敤stm32缂栬瘧鏃跺嚭鐜癳rror: #147-D鐨閿欒鐨勮В鍐虫柟娉:1銆佸彸閿垜鐨勭數鑴-绠$悊-鏈湴鐢ㄦ埛鍜岀粍-鐢ㄦ埛锛嶆妸閲岄潰浣犵殑涓枃鐢ㄦ埛鍚嶆敼鎴愯嫳鏂囥2銆佸彸閿垜鐨勭數鑴-灞炴 鍙充笅-璁$畻鏈哄悕绉般佸煙鍜屽伐浣滅粍璁剧疆-鏇存敼璁剧疆锛 鏀规垚鑻辨枃銆3銆佹妸MDK瀹夎鍦ㄨ嫳鏂囩洰褰曘係TM32鏄熀浜嶢RM® Cortex® M 澶勭悊鍣...
绛旓細鏃㈢劧浣犺矾寰勯兘娣诲姞浜锛岄偅涔堬紝浣犲湪浣犳坊鍔犵殑閭d簺璺緞涓嬶紝鑳芥壘鍒拌繖涓猦鏂囦欢涔堬紵鑻ユ壘涓嶅埌锛岃鏄庝綘绉绘绋嬪簭鏃舵紡鏂囦欢浜嗐
绛旓細杩欎釜鏄暟鎹孩鍑虹殑闂锛屼綘鏌ユ煡鏈夋病鏈夋暟鎹0鏄庝笉鍚堥傜殑锛