嵌入式编程是物联网设备工作方式的重要组成部分。您可能需要学习C/C++并获得一些动手电子经验,才能在生产中掌握这些关键系统。嵌入式编程在使设备满足人们需求方面有着悠久的历史。然而,它在很大程度上仍被应用程序编程所掩盖。当应用程序员使用C++或Java等比较高级的面向对象语言或MATLAB等图形化应用开发环境时,嵌入式程序员仍然在用C编程,他们总是被应用程序员淘汰。今天,即使是业余爱好者也可以使用简单的语言来开发应用程序并与世界分享,而嵌入式程序员则需要对硬件和固件有深入的了解,以及如何编写可以在经常资源受限的环境中使用的应用程序。执行的程序。随着物联网(IoT)的出现,平衡终于可以改变。现在许多新的恒温器、烤面包机、手表和灯泡都配备了处理器和连接性,市场需要更多的嵌入式程序员来对这些设备进行编程,以及更简单的工具来实现这些编程处理器能够编写代码而不会陷入低端级硬件。什么是嵌入式编程?Techopedia将嵌入式编程定义为“一种特定类型的编程,可以创建面向消费者或企业的设备,这些设备不能在全尺寸笔记本电脑和移动设备等传统操作系统上运行。”在上面跑。”嵌入式编程的概念是推动当今IT市场中数字家电和设备发展的部分原因。简单地说,嵌入式编程是为嵌入在传统PC、笔记本电脑或智能手机以外的设备中的小型计算机设计和编写程序。它使微控制器能够唤醒以前不工作的设备,例如恒温器、照明系统、停车设备等。嵌入式编程和物联网从工程角度来看,物联网描述了直接或间接连接到Web的微处理器控制的嵌入式设备网络。所以物联网的三大支柱是:嵌入式编程网络技术信息技术物联网很快就会无处不在。因此,嵌入式设备也将很快无处不在。简要了解物联网改变行业的一些方式:工业:工业机械和控制、温度监控和异常检测。医疗保健:血压监测器、心跳监测器、健身追踪器、嵌入式药物输送。航空航天和国防:飞行控制系统、驱动、空气和热管理、发动机功率监测和控制。智能家居:家庭安全系统、相机、电视和厨房电器。深入嵌入式系统据说世界上每一个复杂的系统都可以简化为两个概念域:软件和硬件。嵌入式系统或多或少代表了这些领域的交集:硬件和软件。1.探索嵌入式硬件典型的嵌入式开发板分为五个模块:处理器、存储器、输入设备、输出设备和总线控制器。嵌入式系统的硬件组成:(1)处理器嵌入式处理器可分为两大类:普通微处理器采用独立的集成电路作为存储器和外设;微控制器使用片上外围设备来降低功耗、尺寸和成本。其中一些示例包括:微控制器(CPU):一种智能设备,可以计算用户分配的任务并通过精确计算构建小型应用程序。片上系统(SoC):在单个集成电路上包括CPU、外围设备(定时器、计数器等)、通信接口(I2C、SPI、UART)和电源管理电路。ASIC处理器(专用集成电路):由公司或制造商为特定应用而设计。DSP处理器:消除噪音并提高音频和视频应用的信号质量。(2)内存内存用于存储设备上正在使用的数据。嵌入式系统中使用的存储器类型的一些示例包括非易失性RAM(随机存取存储器)、易失性RAM、DRAM(动态随机存取存储器)等。(3)InputDevices输入设备(例如传感器、开关、光电二极管、光耦合器等)从外部世界捕获数据以进行处理或从设备导出。(4)输出设备输出设备,包括LCD(液晶显示器)或LED(发光二极管)显示器、七段显示器、蜂鸣器和继电器,响应来自微控制器外部的输入事件。(5)总线控制器总线控制器是一种在嵌入式系统内部的组件之间传输数据的通信设备。应用最广泛的总线控制器有串行总线(I2C、SPI、SMBus等)、RS232、RS485和通用串行总线(USB)。2.探索嵌入式软件嵌入式软件(有时称为固件)是为设备驱动程序、操作系统和应用程序以及错误处理和调试而编写的。嵌入式系统的软件组成:(1)设备驱动程序设备驱动程序是为特定硬件编写的一段嵌入式代码。(2)操作系统(OS)或MicroOS嵌入式系统操作系统有一系列,包括实时操作系统(RTOS)、移动嵌入式、单机和网络嵌入式系统。今天,大多数嵌入式软件都是用两种语言编写的:C和C++。就语法而言,C和C++并没有太大区别。然而,C++具有一些额外的特性,例如增强的安全性和与实际应用程序的紧密性,而C被认为更可靠,并且通过与硬件的直接交互具有更好的性能。创建嵌入式产品时的关键考虑因素开始编写直接影响物理对象的软件的最佳方法是探索Arduino、RaspberryPi或Particle等嵌入式平台。要开发可行的产品,您应该采取以下步骤:步骤1.学习C或C++这是很多人停下来的地方,因为这些语言可能很难学。但是,如果你想编写嵌入式软件,你必须学习C/C++(最终可能还要学习Rust)。Step2.学习一些基本的电子学知识至少知道电压、电流、功率、电阻和欧姆定律。第3步。获得基本设备嵌入式程序员与物理世界交互,因此工具如烙铁、数字万用表(DMM)和硬件调试器/JTAG适配器(如ST-Link或OLMEX适配器)或逻辑分析仪会有所帮助。第4步。选择微控制器和工具链为了让程序运行,您需要一个微控制器来实际运行它,编译器为该微控制器编译代码,并使用其他工具将程序加载到您的硬件上级。结合工具链的微控制器示例是arm-gcc和openOCD工具链支持的STM32微控制器。第5步:了解数据表在您真正坐下来编写第一行代码之前,您需要了解(最终用户)规范。步骤6.查看组件分析并选择制造产品所需的组件(软件和硬件)。步骤7.设计产品设计始终是任何开发周期中最关键的阶段。嵌入式编程的特殊之处在于您必须分别开发硬件和软件部分,然后再将它们集成。步骤8.开发原型原型是示例的一个版本,旨在使用选定的硬件和软件工具测试根据规范开发的概念。第9步:测试应用程序一旦有了原型,就可以运行测试用例来挖掘应用程序的潜力。第10步:部署应用程序测试应用程序后,将在真实环境中检查结果以实现概念验证(一种用于验证想法的技术)。第11步:支持和升级如果需要,您应该准备好提供支持并使用新功能升级应用程序。现在您已准备好开始改变世界!
