嵌入式软件一般用什么软件写和看代码比较好?
谢谢你的邀请!答案分为两部分。首先,如果是单片机或低端ARM处理器芯片裸机或一些简单的嵌入式操作系统代码,可以用IAR或Keil编写、编译、链接和在线模拟进行单步调试。
如果是linux下的嵌入式开发,可以使用vim或visual studio 开发code,也可以用sourceinsight在windows下写字,然后复制到linux下编译。简而言之,sourceinsight仍然是一个非常好的软件来查看代码和编写代码,结构非常清晰,即使是一个奇怪的代码,也可以很快清除线索!希望能帮到你![玫瑰]
浏览这个问题,觉得有建议可以分享。前提是51、STM32、嵌入式设计是Nordic的电路设计。
1、建议MDK编写代码
我第一次使用的单片机是STC89C51单片机。当我第一次接触它时,我使用了汇编。后来,我发现更改这个代码太麻烦了。当然,这也是水平不足的原因。我不小心用了C语言,然后用MDK编译,然后直接烧到单片机上。
当然,很酷,更不用说汇编和重写了,修改定时器的中断时间甚至没有看到所谓的寄存器,但程序可以运行。所以使用MDK写程序和编译是最方便的。
STM32现在在工作中被广泛使用,这种基于ARM的MCU比C8051核的51单片机更复杂。如果你只是使用GPIO输出,你必须设置时钟、频率、输出和大量的过程。
然而,ST毕竟是一家有同情心的公司。人们提供基于MDK的SDK。我们可以调用初始化函数。然后你可以根据葫芦画瓢来设置自己。而且,J-在MDK中完成了link的下载,多舒服啊。
2、可以选择Visual阅读代码 Studio Code
我是一名新手工程师,混日子,所以当我不能的时候,我会选择向论坛的老板寻求帮助。例如,在使用Nordic芯片时,有很多方案可以驱动音频,但基本上是基于STM32和ESP。
老板给出的例子程序也是基于他们的。这里有一个问题,就是IIS总线的使用还是有很大区别的。光是抄写解决不了问题,需要根据datashet和老板的例子写代码。
我们都知道,既然是帮助,我们就不能给你一个完整的程序。我们可以自己编译。给c文件和h文件是慷慨的。此时,您可以查看代码。当您根据datashet编写一些底层驱动程序时,您不需要MDK。首先,您已经使用MDK编写程序。第二,我们办公室的计算机配置就是这样。慢慢打开。
此时,使用界面看起来很舒服,只需支持文件编写。根据此需要,可以考虑Visual Studio Code。哈哈,别以为这个软件只能看,别人也有真本事。
许多具有一定开源性质的项目使用这个,上次参加论坛 GD32 DE Mcu试用活动,因为编译需要安装Platformio插件,可以编译程序。此外,这里的程序构建采用Makefile的形式。
推荐这两款,软件的使用见仁见智,最后还是要选择最适合自己操作习惯的。
对于平台,简单控制裸板代码:ARM和51系列板,推荐Keil MDK 和Keil 或使用IAR,或芯片平台推荐的IDE,Code::Blocks对嵌入式编程也有很好的支持。
编写基于Android、Linux等各种嵌入式平台的应用软件,然后在Android下编写Qt跨平台GUI和AndroidAndroid的Android Studio,Linux下的各种代码编辑软件都可以。Ucos等嵌入式系统,rtos,还推荐Keil和IAR等。
有很多代码软件可以看到,VSCode,Vim/Vi
,Atom可以支持代码语法和亮点,也可以直接使用IDE查看代码。
如果是stm32,stm32cubemx生成初始化代码,vscode编写代码,keil调试。
假如是51,那就keil,
vscode写代码和读代码是很好的选择。插件多
我认为我们应该学习51和STM32,但仅限于学习它的原理和应用程序,而不是做太复杂的事情。使用51和STM32来巩固其C基础、数据结构、计算机组成原理等基础。
阶段一
《The C Programming Language》【美】Brian W. Kernighan David M. Rithie;
《UNIX 高级环境编程(没必要一口气看完当字典使也不错);
《UNIX 网络编程(同上);
以上两本书的重点是:过程、线程、IPC和基于socket的网络编程章节。我们应该掌握基于select/poll/epoll高并发服务器模型;
看完这两本书,我写了一些小软件,比如天气预报、计算器(逆波兰)、网络聊天室等。另外,看一些开源库,推荐libevent(对于初学者来说很难,但这不是不看的原因),从而加强C语言,加深对网络编程和线程相关概念的理解和应用。
阶段二
此时,受试者可以购买STM32开发板(基于库开发和寄存器开发)。他必须熟悉datashet和STM32参考手册。在此期间,他必须了解常见的接口和总线,例如串行端口,IIC,SPI,CAN,以太网接口、SD、SDIO等,然后题主可以用它做一些小玩意,如:体温计、平衡车、小四轴等;
一定要多动手,多练,多动手,多练,多读芯片datashet,不要做伸手党...
然后嵌入UCOS或FreeRTOS,了解这些轻量级操作系统的原理。网上有一些电子书,题主可以自己找,推荐邵贝贝的书。
阶段三
在这个阶段,受试者需要购买ARM开发板,可以选择ARM+FPGA或ARM+DSP,题主可以自己上网了解具体买哪一个。
此时所需的书籍如下:
《鸟哥的linux私房菜》(linux平台下的各种命令一定要熟烂在心里);
Linux和Unix Shell编程指南(本书已绝版,可购买二手、影印或电子版);
ARM系统结构与编程(杜春雷,一定要配合UBOOT);
“Linux设备驱动开发”(LDD);
《Linux设备驱动开发详解》(宋宝华);
对Linux内核的深入理解;
《Linux核源代码场景分析》(毛德操作);
还有一些理论基础需要掌握,只要是编程:
《算法导论》;
数据结构与算法分析;
计算机系统的深入理解;
操作系统:精髓与设计原理;
《编译原理》;
还有以下好书可以扎实的C语言:
“C和指针”;
高质量C++/C编程