首页 > 其他分享 >嵌入式开发应该具备的思维方式

嵌入式开发应该具备的思维方式

时间:2024-08-15 23:23:42浏览次数:15  
标签:具备 思维 童鞋 编程 嵌入式 理论知识 串口 计算机专业

能从PC机器编程去看嵌入式问题,那是第一步;

学会用嵌入式编程思想,那是第二步;

用PC的思想和嵌入式的思想结合在一起,应用于实际的项目,那是第三步。

很多朋友都是从PC编程转向嵌入式编程的。

在中国,嵌入式编程的朋友很少是正儿八经从计算机专业毕业的,都是从自动控制啊,电子相关的专业毕业的。

这些童鞋们,实践经验雄厚,但是理论知识缺乏;计算机专业毕业的童鞋很大一部分去弄网游、网页这些独立于操作系统的更高层的应用了。

也不太愿意从事嵌入式行业,毕竟这条路不好走。他们理论知识雄厚,但缺乏电路等相关的知识,在嵌入式里学习需要再学习一些具体的知识,比较难走。

虽然没有做过产业调查,但从我所见和所招聘人员,从事嵌入式行业的工程师,要么缺乏理论知识,要么缺乏实践经验。

很少两者兼备的。究其原因,还是中国的大学教育的问题。这里不探讨这个问题,避免口水战。我想列出我实践中的几个例子。引起大家在嵌入式中做项目时对一些问题的关注。

第一个例子:

同事在uC/OS-II下开发一个串口的驱动程序,驱动和接口在测试中均为发现问题。应用中开发了个通讯程序,串口驱动提供了一个查询驱动缓冲区字符的函数:GetRxBuffCharNum()

高层需要接受一定数量的字符以后才能对包做解析。一个同事撰写的代码,用伪代码表示如

标签:具备,思维,童鞋,编程,嵌入式,理论知识,串口,计算机专业
From: https://blog.csdn.net/weixin_41114301/article/details/141234030

相关文章

  • 嵌入式初学-C语言-二四
    Void与void*的区别定义:Void:空类型,是数据类型的一种Void*:是指针类型,是指针类型的一种,可以匹配任何类型的指针,类似于通配符Void说明:void作为返回值类型使用,表示没有返回值,作为参数,表示形参列表为空,在调用函数时不能给实参//函数声明voidfun(void);//等效于voidfun()......
  • 你要了解的2种AI思维链
    我们使用的AI助手,一般是经过了预训练和微调这2个步骤,尽管训练出的模型能回答许多通用类问题,但是在遇到复杂问题时还是束手无策。直到有人提出了思维链方式,才解决了模型在面对复杂问题时的推理能力。1、什么是思维链思维链(ChainofThought,CoT)是用于提高AI模型推理能力的方式......
  • 嵌入式linux mkdir: cannot create directory 'test': Read-only file system
    这个错误表明你尝试在嵌入式Linux系统上创建一个名为'test'的目录时失败了,因为文件系统被挂载为只读模式。在只读模式下,你无法修改文件系统的内容,包括创建、删除文件或目录。解决方法:1.重新挂载文件系统为读写模式。你可以使用mount命令重新挂载文件系统,并指定读写权限。例如:......
  • 好的测试用例应该具备哪些特质
    星球群里,大家聊起了测试用例管理工具的话题。有说A工具开源免费好用的,也有说B工具功能强大支持定制化和各种报表输出的,也有直接用Excel管理测试用例的,形式多样,各有各的道理,也各有各的痛点。讨论间隙里,有同学问了这样一个问题:什么样的测试用例比较好呢?这是一个好问题,也是很值得......
  • 基于STM32的边缘计算实时数据处理可视化系统:嵌入式C++、 FreeRTOS、Kafka、Spring Bo
    一、项目概述本项目旨在设计并实现一个基于STM32的边缘计算实时数据处理系统。该系统能够在边缘设备端进行数据采集、预处理,并将处理后的数据实时传输到后端服务器进行进一步分析和存储。本项目主要解决以下问题:减轻后端服务器的数据处理负担,提高系统整体效率降低......
  • 按钮(Buttons)-Qt-思维导图-学习笔记
    按钮(Buttons)按钮在Qt中的重要性按钮是Qt中最常用的控件之一通过点击按钮,可以响应事件,实现人机交互效果按钮在嵌入式系统和PC端的界面交互中都是不可或缺的Qt内置的六种按钮部件QPushButton:下压按钮用法示例项目创建与设置项目名称:创建一个名为04_qp......
  • 嵌入式软件--数据结构与算法 DAY 12
    数据结构和算法是程序的核心,虽然在嵌入式应用中很少会用到,但了解认知这种思维过程是非常有必要的。一个好的程序员应该把数据结构和算法看的比代码更重要。1.数据结构是什么?定义1(宏观):数据结构是为了高效访问数据而设计出的一种数据的组织和存储方式。定义2(微观):数据结构......
  • 嵌入式软件--数据结构与算法 DAY 13
    在嵌入式中,对算法的要求不高,但顺序查找和冒泡排序是经典算法,必须掌握。1.算法定义算法是一个用于解决特定问题的有限指令序列(计算机可以执行的操作)。通俗的理解就是可以解决特定问题的方法。2.时间复杂度时间复杂度不是执行完一段程序的总时间,而是描述为一个算法中基本操作......
  • 嵌入式软件--C语言项目 客户信息管理系统
    考虑到目前C语言的学习是以为嵌入式做基础而进行的,项目所使用到的语法和结构都是嵌入式常用到的,这是较为特殊和针对性的项目,不与其他同名项目作比较。若有参考着谨慎借鉴。实现一个客户信息管理系统,功能包括添加客户、修改客户、删除客户、显示客户列表。1.需求说明(1)主菜单......
  • 重头开始嵌入式第十九天(Linux系统编程 文件IO)
    缓冲区 1.行缓冲行缓冲,1k, terminal,主要用于人机交互stdout缓存区满或者遇到\n刷新1024行缓存多是关于终端的一些操作1.遇到\n刷新2.缓存区满刷新3.程序结束刷新4.fflush刷新  fflush(stdout);2.全缓冲全缓冲,4k,主要用于文件的读写缓存区满刷新缓存区 4096对......