首页 > 编程知识 正文

(怎样用c语言做硬件开发,如何学习嵌入式(硬件篇))

时间:2023-05-05 01:05:06 阅读:121961 作者:1629

由于此地板涉嫌违规,因此它将折叠在系统中以隐藏此地板并显示此地板

在此期间,很多想学习技术的朋友都在询问如何学习嵌入式应用,这对刚开始接触嵌入式应用的朋友来说确实是个问题。 这里介绍了如何利用它来学习嵌入式系统。

在学习嵌入式之前,您需要了解什么是嵌入式。

(正式地说,嵌入式系统是专用的计算机系统,是装置或设备的一部分。 国内公认的嵌入式系统被定义为以应用为中心,以计算机技术为基础,软硬件可裁剪,满足应用系统功能、可靠性、成本、体积、功耗等苛刻要求的专用计算机系统。 例如,手机、电子表、智能报警装置、自动监视器、出租车计价器等都是嵌入式系统。

嵌入式系统是软硬件的综合体。 现在我们来看看嵌入式系统的具体框图。 以手机为例。

(硬件篇)

1、基本电路知识

嵌入式硬件也需要构建很多电路,在学习嵌入式之前必须具备电路的基本知识。 了解常用基本器件、基本仪器的使用,具有一定的电路分析能力。 这样,我们就可以了解嵌入式系统的硬件电路图,为后续的开发奠定基础。

2、基本语言知识

由于编写内置驱动程序需要c语言,因此在学习内置之前,必须熟悉c语言的基本语法并能够编写常用的程序代码。 需要注意的是,在学习C语言时养成规范的编程习惯(如添加注释和注意合成)对今后程序的正确性有很大的影响。

3、单片机(51单片机)。

初学者第一次接触嵌入式处理器一般是51单片机,51单片机入门比较简单,而且通用度较高,可以购买开发板进行手工学习。 例如学习编写流水灯、按键扫描、数码管、液晶显示器、AD/DA采样等简单程序。

4、基于单片机的电子系统自设计

有了以前的学习经验,可以自己脱离开发板,自己设计制作电路图,自己焊接和生产PCB板,设计小型电子系统。 例如设计电缆小车、温度采集、时钟显示等嵌入式系统。

5,430、STM32、Cortex-M3 (可选)

430单片机、STM32和Cortex-M3处理器是学习嵌入式操作系统之前的过渡阶段,您可以自行选择学习。 为什么需要由他们转移呢?

51单片机的内部寄存器很少,因此在编写程序时不需要设置GPIO端口,默认情况下已经输入或输出。 当处理器变得强大时,一个GPIO通常可以提供多种功能,包括USB功能、IIC功能和UART功能。 使用这种GPIO时,必须进行配置以满足需求。 因此,在学习后续操作系统之前,有时间的同学可以从这些单片机迁移过来,避免以后的学习进入脑海。

6、ARM9/ARM11裸机学习

裸机程序编制,即没有操作系统的程序编制,与上面430单片机的作用相似。 目的地是熟悉ARM体系结构,深入了解ARM寄存器,为今后的驱动程序编制带来巨大便利。 同样,裸机程序学习可以像51单片机一样购买开发板,在开发板上插队,进行GPIO、UART的操作。

7、Linux系统移植BOOTLOADER

嵌入式系统学习特别需要注意和困难的是Linux系统的移植,系统移植、系统裁剪是学习的难点。 构建嵌入式操作系统的开发环境,即交叉编译环境也很麻烦,所以在学习过程中一定要一步一步地实践操作。

引导加载器是在操作系统启动之前初始化硬件和创建操作系统运行环境的代码,类似于PC上的BIOS程序。 BOOTLOADER主要与硬件有关,需要对处理器寄存器相当熟悉,所以在初始学习时可以参考U-boot等进行学习。

8、基于Linux的底层驱动创作

以上,学习了Linux系统的移植,所以可以制作基础的驱动程序。 通过交叉编译环境将驱动程序编译并下载到目标板上,编写验证驱动程序正确性的小测试程序。 在Linux上实现流水灯,就可以实现按钮功能。

9 .基于操作系统的电子设计

学习到这里,可以说是一只强壮的嵌入式硬件老虎吧。 既然你已经有自己设计嵌入式系统的能力,现在就试试牛刀吧。 可以设计基于OS的相机驱动、按键驱动、红外线驱动等。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。