打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
做嵌入式软件的一般用什么软件写和看代码比较好?

我认为应该学习一下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的开发板玩玩(基于库开发和寄存器开发都要会),一定要熟读datasheet以及STM32参考手册,这期间一定要将常见的接口与总线搞明白了,如:串口,IIC,SPI,CAN,以太网接口,SD和SDIO等,然后题主可以用其做一些小玩意,如:体温计,平衡车,小四轴等等;

一定要多动手,多练,多动手,多练,多读芯片datasheet,别做伸手党……

然后嵌一个uCOS或者FreeRTOS玩玩,了解一下这些轻量级操作系统的原理,网上有一些电子书籍,题主可以自行查找,推荐邵贝贝的书。

阶段三

这一阶段题主需要买一个ARM开发板了,可以选择ARM FPGA或者ARM DSP,题主可以自行上网了解一下具体买哪一个

这时需要的书籍如下:

《鸟哥的linux私房菜》(linux平台下的各种命令一定要熟烂于心啊);

《Linux与Unix Shell编程指南》(此书已绝版可以买二手,影印或者下电子版);

《ARM体系结构与编程》(杜春雷著,一定要配合UBOOT看);

《Linux设备驱动开发》(LDD);

《Linux设备驱动开发详解》(宋宝华);

《深入理解Linux内核》;

《Linux内核源代码情景分析》(毛德操著);

还有一些只要是编程就需要掌握的理论基础:

《算法导论》;

《数据结构与算法分析》;

《深入理解计算机系统》;

《操作系统:精髓与设计原理》;

《编译原理》;

为了扎实C语言还有如下不错的书:

《C和指针》;

《高质量C /C编程




39 赞 踩 13评论
分享
举报

谢邀!分为两部分回答,首先如果是单片机或者低端的ARM处理器芯片写裸机或者一些简单的嵌入式操作系统的代码,可以用IAR或者Keil,编写,编译,链接以及在线仿真单步调试都非常方便。

如果是linux下的嵌入式开发,可以用vim或者visual studio code进行开发,也可以用sourceinsight在windows下写完再拷贝到linux下编译。总之,sourceinsight还是非常不错的一款看代码和写代码的软件,结构非常明确,即使是一份陌生的代码,也能很快缕清头绪!希望可以帮到您!





展开全部
9 赞 踩 评论
分享
举报

浏览到这个问题,觉得自己确实有建议可以分享一下。前提是51、STM32、Nordic的电路设计算嵌入式设计。


1、写代码建议MDK

我最先使用的单片机是STC89C51单片机,刚开始接触的时候使用的汇编,后来发现改这个代码太麻烦,当然也是水平不足的原因。偶然间使用了C语言,然后用MDK编译一下,然后直接烧写到单片机就能跑起来。

当然爽呆了,别说汇编改写了,修改定时器的中断时间连所谓的寄存器都没好好看过,但是程序能跑就行。所以在入门的时候使用MDK写程序和编译最方便。

现在工作中使用比较多的是STM32,这个基于ARM的MCU使用起来比C8051核的51单片机确实复杂一些。就简单的使用一个GPIO的输出,就得设置时钟,设置频率,设置为输出,一大堆流程。

不过ST终究是一家有同情心的公司,人家提供了基于MDK的SDK呀,咱们调用初始化函数就OK。然后再照葫芦画瓢就能进行自己的设置了。而且,J-link的下载都在MDK中完成了,多舒服。


2、阅读代码可以选择Visual Studio Code

我是个菜鸟工程师,混日子的那种,所以在不会的时候会选择向论坛的大佬求救。比如使用Nordic的芯片时,需要驱动音频,驱动音频的方案不少,但是基本是基于STM32和ESP的。

大佬给的例子程序也是基于他们的,这里就有一个问题那就是IIS总线的使用还是有很大的区别。光是抄写已经不能解决问题,就需要自己根据datasheet和大佬的例子自己写代码了。

有一点大家都很清楚,既然是帮忙,总不能发给你一个完整的程序,自己编译就能用吧。能给一个c文件和h文件已经是慷慨了,这个时候自己看看代码,按照datasheet写点底层驱动时候就不用MDK了,一是已经使用MDK在编写程序了,二是咱们办公室的电脑配置也就那样,打开慢。

这个时候使用一款界面看起来舒服,支持文件编写的就行,按照这个需要可以考虑Visual Studio Code。哈哈,不要觉得这个软件只能看,人家也是有真本事的。

很多具有一定开源性质的项目就使用的这个,上次参加论坛的 GD32 DE mcu试用活动,因为编译需要安装了PlatformIO插件,是可以编译程序的。而且这里的程序构建,采用的是Makefile的形式。


就推荐这两款了,软件的使用见仁见智,最终还是得选择最适合自己操作习惯的那款。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
如何利用嵌入式集成开发工具,让其更好地服务于设计?
嵌入式相关开源项目、库、资料
从方法到逻辑超详细的嵌入式学习路线图(《深入理解Linux内核》和鸟哥的Linux私房菜)
STM32和Arduino对比,谁更厉害?
单片机要怎么学习?
STM32入门篇
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服