如何零基础学习物联网/嵌入式开发?

您所在的位置:网站首页 嵌入式c语言技术实战开发 如何零基础学习物联网/嵌入式开发?

如何零基础学习物联网/嵌入式开发?

2023-12-24 10:46| 来源: 网络整理| 查看: 265

如今,物联网已经成为现代社会发展的重要趋势。由此可以想象得到,在未来社会,物联网技术人才的需求会进一步扩大。因此现在越来越多的人投入到物联网的学习中,然而大多数自学者却常常因为盲目而一事无成。

从哪开始学?怎样才能学到精髓?下面具体带大家看看物联网嵌入式开发学习中的知识点。

物联网有三大块基础知识,分别是数学、物理和计算机,学习物联网还涉及到电子电路、计算机网络和安全等一系列内容,所以物联网的整体知识体系是比较庞大的,而且学习物联网知识也具有一定的学习难度。

从物联网的技术体系结构来看,物联网体系从上到下,分别涉及到语言工具、应用、操作系统与网络、设备,整个技术层次的外部还包括安全。所以,要想学习物联网知识,可以先从应用基础部分开始学起,然后再逐渐向下延伸,这也是很多初学者的选择。

物联网的传感器各类设备是必须掌握的部分,以下是我们物联网工程开发中经常使用到的物联网设备:

学习设备就涉及到嵌入式开发技术,嵌入式开发并不是一个新的技术体系,经过多年的发展,嵌入式开发已经形成了一个较为完善的技术体系,而且嵌入式开发已经深入到很多领域,有大量的案例可以参考和学习。学习嵌入式开发需要从编程语言开始学起,目前C语言在嵌入式开发领域的应用比较普遍,除了C语言之外,还可以使用Python从事嵌入式开发,但是C还是占用了主要的作用。

在学习嵌入式技术时,需要选定一个开发板作为学习工具,最好这个开发板在市场中使用率比较高,实际上学习了一种微处理器,在学习其他相同架构的微处理器并没有多难,这里给大家推荐ARM架构的处理器,例如三星的s5p6818开发板,价格1000左右.非常的适合自学,并且在市场上占有比例也比较大,资料很多.

接下来我们就看看我们应该怎么才能系统的把物联网学好.

以下是我整理的物联网嵌入式学习路线:

第一阶段:嵌入式高级C语言

Linux系统:Linux Ubuntu操作系统安装、使用、Linux常用命令、samba服务器、SSH远程登录、GCC编译器、GDB调试器、VI编辑器 嵌入式C语言高级编程: 1、C数据类型、控制语句 2、C程序结构设计、数组、函数、预处理 3、指针及字符串操作 4、结构体、共用体、宏、枚举 5、文件I/O操作 数据结构及算法: 1、数据结构之单向链表、双向链表 2、数据结构之队列、栈 3、数据结构之树、图 4、算法之各种排序(选择法、冒泡法、插入法等) 5、递归 6、算法之二分查找

第二阶段:嵌入式设备及GUI开发(例如QT)

嵌入式环境配置与开发工具学习:Linux下项目管理工具Make以及Makefile工作原理及其编写Linux下shell脚本相关知识及其编写嵌入式开发环境的基本概念及其搭建A53开发板介绍、设备使用、A53开发板与电脑通信、交叉编译 GUI图形界面开发:常用控件——button、label、text edit等常用布局方式——水平布局、垂直布局、固定布局、网格布局、相对布局等常用事件及信号处理技术——信息回调、鼠标、键盘事件等时间编程、数据存储、绘图机制、定时器处理、多任务处理等

第三阶段:嵌入式Linux高级程序设计

1、Linux系统调用概念 2、进程相关概念、多进程实现多任务开发 3、进程间通信:无名管道、命名管道、信号、消息队列、共享内存等 4、多线程实现多任务开发 5、多任务的同步互斥开发:互斥锁、信号量

第四阶段:Linux高级网络程序设计

1、网络相关概念及网络发展 2、TCP/IP协议 3、socket编程、TCP网络编程、UDP网络编程、Web编程开发等 4、Linux网络应用程序开发,Linux网络编程相关5、TCP协议服务器的编程方法和并发服务器的实现 6、HTTP协议及其实现方法,熟悉UDP广播、多播的原理及编程方法,掌握混合C/S架构网络通信系统的设计 7、IPv6与IPv4协议,及其编程接口 8、网络数据通信过程 9、网络原始套接字概念及编程接口 第五阶段:数据库及web编程开发 数据库及web编程开发: 1、数据库概念、数据库类型 2、Sqlite数据库介绍及其安装与移植 3、SQL数据库语言(数据定义语言(DDL)、数据操作语言(DML)、数据查询语言(DQL)、数据控制语言(DCL))br 4、Sqlite数据库C语言编程中的各种SQL指令执行函数完成对数据库的控制 5、HTML语言开发 6、Javascript语言开发 7、AJAX开发 8、cgi程序开发

第六阶段:C++面向对象高级语言程序设计

1.熟悉面向对象的语言概述 2.熟练掌握c++语言的基本知识和类与对象及其高级应用 3、作用域运算符、内联函数、强制类型转换 4、new、delete内存管理 5、对象成员、成员函数 6、构造函数、析构函数、拷贝构造函数、函数重载 7、对象数组、this指针、枚举、 8、静态成员、静态成员函数 9、对象成员 10、友元 11、封装、继承、多继承、多态 12、虚函数、纯虚函数、抽象类、虚析构函数等

第七阶段:物联网

1、了解物联网、泛在网、互联网基本要领及其关系 2、熟悉RFID从低频段到高频段的基本工作原理,以及RFID标签的种类与行业应用,读卡器原理与通信过程 3、熟悉TI的cc2530的基本应用,包含基本硬件资源,协议栈相关接口使用,以及点对点通信、星形通信、广播通信、绑定通信,三种网络结构star、tree、mesh,掌握zibgee相关微控制处理芯片 4、了解zigbe协议栈组成,以及zigbee在通信、组网、摇控等领域的不同应用 5、通过Bluetooth、wifi和zigbee技术对比各自的优缺点,并重点介绍zigbee的各种应用 6、掌握温度、湿度、光照、PH值、二氧化碳等传感器的工作原理及通信接口 7、了解NB-IOT基本概念及移运BC95模块 8、熟悉CoAP协议在NB-IOT中的应用 9、掌握常用AT指定集

第八阶段:CortexA53 Linux平台驱动开发

1、了解ARM处理器基本特征及工作原理 2、掌握ARM裸机程序开发以及裸机编译工具的使用 3、嵌入式Bootloader原理分析及其移植 4、嵌入式Linux内核结构分析及其移植 5、掌握嵌入式Linux根文件系统组成分析及其制作过程 6、掌握嵌入式Linux三大类设备驱动基本概念 7、掌握Linux字符驱动框架及GPIO输入输出驱动 8、Linux中断机制处理及响应过程 9、Linux下SPI/IIC/UART串行通信技术驱动编写与应用 10、Linux下input设备驱动框架介绍 11、Linux下platform机制设备驱动框架介绍 12、Linux下kfifo缓冲机制、并发与竞态(如互斥锁与信息号等)讲解 13、Linux驱动中的阻塞与非阻塞 14、Linux下块设备驱动框架——RAMdisk驱动实例编写 15、USB设备硬件设计原理、驱动协议架构、驱动开以流程 16、了解Linux设备驱动模型(kobject、kset、子系统、底层sysfs操作、虚拟总线等)

以上就是物联网的自学内容。不知道物联网怎么学和学什么的小伙伴,只要学完以上八个阶段的知识点,就可以完全掌握网联网的基础知识了。不过自学到这一步,还需要结合大量的实战项目练习,自学者才能从事物联网相关岗位的工作。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3