Ⅰ STM32能用GCc吗
gcc只是编译敬雹者器,stm32只是芯片
可以用gcc编译你的肆衡程序,亮薯产生的二进制文件烧入stm32
Ⅱ stm32 用什么编译器好
应该IAR好很多。
同样的ucosII本家的移植代码Micrium-ST-uCOS-II-LCD-STM32,
用里面自带的keil工程和IAR工程编译,
都设置为最大尺寸优化,
keil的编译结果:
Program Size: Code=27562 RO-data=4870 RW-data=196 ZI-data=9240
FLASF占用:Code+RO-data+RW-data = 27562 +4870 +196 = 32628字节
RAM占用:RW-data+ZI-data = 196 + 9240 = 9436字节
IAR的编译结果:
13 730 bytes of readonly code memory
5 618 bytes of readonly data memory
8 636 bytes of readwrite data memory
FLASF占用:13 730 + 5 618 = 19348字节
RAM占用:8 636字节
KEIL比IAR占用FLASH多:32628- 19348 = 13280字节
Ⅲ kiel tutinstm32文件能编译吗
可以。
STM32是ARM7核,而KEIL是ARM旗下的,KEIL只是一个开发环境,支持什_还需要下载相应的编译器,你原来如果是学51的,肯定有C51编译器,但是你需要去官网下载KEIL MDK就是所说的RVMDK,就是ARM的编译器,包含STM32,然后安装,然后看着教程打开KEIL选择相应的芯片来建立工程就行了,不过需要破解。
一般在STM32工程使用Keil编译之后,keil的build output窗口中会出现如图所示的输出信息,其中会显示code_笮。_O-data、RW-data、ZI-data大小。ARM程序的组成(ARM系统中正在执行的程序,而非保存在ROM中的BIN映像文件,请注意区别):一个ARM程序包含3个部分:RO,RW和ZI,RO是程序中的指令和常量;RW是程序中已经初始化的变量;ZI是程序中未经初始化的变量;以上3点可以理解为:RO就是readonly,RW就是read/write,ZI就是zeroARM映像文件的组成:所谓的ARM映像文件就是烧录到ROM中的BIN文件,也称为Image文件,以下用Image文件来替代。Image文件包含了RO和RW数据,之所以Image文件不包含ZI数据,那是因为ZI数据都是0,没必要包含,运行之前将ZI数据数据所在的区域清零即可,包含进去反而浪费存储空间补充一个问题:Q:为什么Image必须O,RW?A:因为RO中的指令和常量以及RW中初始化过的变量是不能像ZI那样无中生有的。
Ⅳ 想学stm32,但是有没有什么好的编译器可以机子补全代码
解决办法1,就是打开库文件说明,直接拷贝
解决办法2,多借助固件库开发提供的example代码
Ⅳ 锘轰簬Keil銆丼TM32,鐢–++缂栧啓娴佹按𨱔绋嫔簭
阃氩父𨱒ヨ达纴鍦ㄥ崟鐗囨満涓婄紪绋嬶纴瑕佷箞姹囩紪锛岃佷箞C璇瑷锛岃岀敤C++杩涜屽紑鍙戠殑寰埚皯锛岄偅涔堢┒绔熻兘涓嶈兘鐢–++寮鍙戝崟鐗囨満锻锛熺瓟妗堟槸镶瀹氩彲浠ョ殑锛屼笅闱㈣茶插熀浜嶬eil銆丼TM32锛岀敤C++缂栧啓娴佹按𨱔绋嫔簭镄勪竴浜涘唴瀹广
1銆佷负浠涔埚緢灏戠敤C++寮鍙戝崟鐗囨満
涓岖煡阆揿ぇ瀹跺归溃钖戣繃绋嫔拰闱㈠悜瀵硅薄镄勭悊瑙f湁澶氩皯锛
C璇瑷闱㈠悜杩囩▼镄勮瑷锛孋++鏄闱㈠悜瀵硅薄镄勭紪绋嬭瑷銆傜粨钖堟湰鏂囨潵璇达纴闱㈠悜杩囩▼鐩告瘆闱㈠悜瀵硅薄镄勭紪绋嬶纴浠g爜閲忔洿灏忥纴杩愯屾晥鐜囨洿楂樸
镓浠ワ纴C璇瑷鐩告瘆C++鍏锋湁镟村皬浠g爜閲忋佹洿蹇镄勮繍琛岄熷害銆
褰撶劧锛岃繖閲屾槸C鐩稿笴++钥岃█銆傚叾瀹烇纴姹囩紪鐩稿笴钥岃█锛屽叿链夋洿灏忎唬镰侀噺鍜屾洿蹇镄勮繍琛岄熷害銆傚彲浠ュ弬鐪嬫枃绔狅细鐢ㄦ眹缂栧拰C璇瑷鍐欐祦姘寸伅绋嫔簭链変粈涔堜笉涓镙凤纻
锲犱负鍗旷墖链虹殑RAM鍜孎lash璧勬簮鐩告瘆杈冨皬锛岃繍琛岄熷害涔熺浉瀵硅缉浣庯纴镓浠ワ纴浣犱细鍙戠幇锛氩緢灏戞湁浜哄湪鍗旷墖链轰笂闱㈢敤C++寮鍙戦”鐩銆
鍏跺疄锛岄殢镌鍗旷墖链虹殑瀛桦偍璧勬簮浠ュ强杩愯岄熷害镄勫炲姞锛岀洰鍓嶆湁浜涘伐绋嫔笀寮濮嬬敤C++寮鍙戝崟鐗囨満椤圭洰浜嗐
2銆佸嗳澶囧伐浣
鐢–璇瑷寮鍙慡TM32姣旇缉甯歌佷简锛屼粈涔埚紑鍙戠幆澧冨畨瑁呫佸垱寤哄伐绋嬬瓑杩欎簺姝ラわ纴链鏂囦笉璁茶堪銆
3銆佷娇鐢ㄨ存槑
鍦↘eil MDK鐜澧冧笅锛屼娇鐢ㄧ殑鏄疉RM缂栬疟鍣锛圆rm Compiler锛夛纴寰埚氱绣涓婃暀绋嬩娇鐢╒6缂栬疟锛屽叾瀹滤5鍜孷6鐗堟湰閮芥槸鏀鎸丆++缂栫▼璇瑷镄勚
铹跺悗锛屽傛灉链夊紑鍙戞澘锛岀洿鎺ヤ笅杞藉嵆鍙杩愯孡ED闂鐑佺殑鐜拌薄銆