您所在位置: 培训码头 >深圳 > 深圳IT/互联网 >深圳嵌入式开发 >深圳嵌入式培训课
粤嵌通信科技股份有限公司

深圳嵌入式培训课

教学城市:深圳 授课机构:粤嵌通信科技股份有限公司

报名电话:0755-83625108

一口吃不下一个大胖子,深圳粤嵌的嵌入式课程培训循序渐进,6大课程模块带你吃透“嵌入式”。面向企业人才需求标准,粤嵌研发出一套真正以项目为驱动的实战型课程体系。整个课程不仅包含Linux系统运维技术、C语言开发、嵌入式GUI设计及Cortex-M4应用开发等专业课程,更有G-man智能机器人、虚拟驾驶系统、智慧家庭控制系统、无人送货机等大型项目贯穿各学习阶段,通过整个培训使学员拥有独立开发嵌入式产品的能力,具备初级以上嵌入式工程师的开发水平。
  • 深圳粤嵌嵌入式开发

    深圳粤嵌嵌入式开发培训

    粤嵌嵌入式开发培训不会让你后悔!

    快速咨询

粤嵌的师资力量

研发出身的大牛讲师,为你指点迷津

  • 冯宝祥

    功底实力

    精通Orcad、PADS等开发工具,精通ARM、MIPS、Blackfin等架构处理器、精通ARM嵌入式系统开发和编程,精通ARM平台上各种外设接口开发、ARM的硬件设计和调试,具有丰富的产品开发经验。 善于解决工程中遇到的疑难杂症,并对嵌入式专业人才的培养体系及培训方法有深入研究。

    教学经验

    有着10年以上嵌入式系统开发经验,资深开发工程师,承担着多项嵌入式系统产品的研发。

  • 邓人铭

    功底实力

    精通Linux、C/C++语言、Android等技术,精通STL和boost库,Java语言和eclipse及其插件开发方法。 具有全面和扎实的计算机科学基础知识,严谨的思维方式,强大的的数据结构和算法设计能力。负责嵌入式课程体系制定与培训,对嵌入式专业人才的培养体系及培训方法有深入研究。

    教学经验

    7年嵌入式开发经验,曾在著名的手机公司从事Symbian手机平台开发和安卓前期预研工作。

  • 周龙

    功底实力

    精通Linux系统开发等开发工具,精通ARM_linux及编译器与调试器,精通线程,内核链表。精通linux系统移植,Linux初级高级设备驱动开发。 曾在国内大型企业做过多个出口嵌入式大型项目,对嵌入式软件开发有很多实际工程经验,对嵌入式专业人才的培养体系及培训方法有深入研究。

    教学经验

    华中科技大学工学硕士,10年以上嵌入式系统开发经验,承担着多项嵌入式系统产品的研发。

  • 林世霖

    功底实力

    精通Linux下C语言编程,精通数据结构算法与实现,有着丰富的银行交易系统开发经验,并且精通SCO系统下shell编程与系统编程。更有着多年的授课经验,他娴熟的授课技巧以及成体系化的教学理论与经验,上课风格多样化,善于并乐于传播IT技术,热衷于教育行业,对学生认真负责。

    教学经验

    7年多嵌入式系统软件开发经验,资深嵌入式Linux研发工程师,致力于嵌入式Linux应用软件等。

深圳嵌入式自学如何?

很多人盲目选择自学,要知道不同的人接收的嵌入式知识、以及采取的学习路径、实践方式不同,那么嵌入式学起来,难易程度也是不一样的,不过据零基础普遍反应,自学嵌入式有种神经错乱的感觉,总是会产生,我是谁,我在哪,我在干什么的想法,而嵌入式培训,跟着专业的老师则感觉比较容易。

如果想在学嵌入式这条路上,多走些平坦的路话,建议零基础的朋友们选择嵌入式培训,同时好不好学试了才知道,其他人说不好学,在你那嵌入式就真的不好学吗?未必。零基础看视频学嵌入式怎么样呢?效果还是没有嵌入式培训那么显著,看视频学嵌入式,很多时候你都不知道老师在讲什么,进行到哪步了。

粤嵌6大课程模块吃透“嵌入式”

  • 深圳嵌入式开发培训公司

    -1-

    嵌入式开发技术基础课程

    搭建嵌入式Linux开发环境

    Linux系统基础入门

    高质量的编码规范

  • 深圳嵌入式Linux应用开发基础

    -2-

    嵌入式Linux应用开发基础

    Linux IO编程

    Linux多线程编程


  • 深圳嵌入式入门培训

    -3-

    Cortex-M4应用开发

    Cortex-M4开发基础

    uC/OS-11操作系统

    Cortex-M4开发高级

  • 深圳哪个嵌入式培训好

    -4-

    嵌入式Linux应用开发高级

    嵌入式web服务器搭建及开发

    Linux音视频编程

    Linux串口编程

  • 深圳嵌入式培训那个好

    -5-

    嵌入式GUI系统编程开发

    C++语法及编程提高

    QT应用开发进阶


  • 深圳嵌入式技术开发培训

    -6-

    嵌入式Linux应用开发高级

    嵌入式平台软硬件架构分析

    Linux设备驱动开发

    系统移植

粤嵌嵌入式开发热门项目案例


  • 1

    GoGo机器人

    从0开始利用人工智能技术,通过与机器人人机日常语音交互、人面识别、手势识别等方式完成指定动作,如智能家居/电器控制、日常交流、播放音乐/电影、查天气、问问题等多种功能。

  • 2

    风飞送货无人机

    风飞送货无人机采用八旋翼飞行器,配有GPS自控导航系统、iGPS接收器、各种传感器以及无线信号发收装置。无人机具有GPS自控导航、定点悬浮、人工控制等多种飞行模式,集成了三轴加速度计、三轴陀螺仪、磁力计、气压高度计等多种高精度传感器和先进的控制算法。

  • 3

    VR/AR虚拟驾校

    项目通过人机交互技术,借助VR头盔、驾驶模拟器、三轴动感平台,对基本驾驶功能进行模拟,如点火、倒车、手刹等功能的实现,给人现实的驾驶体验。一比一复制练习场地,如倒车入库等,还会有虚拟教练针对驾考科目进行指导。

  • 4

    智能汽车控制系统

    项目集中运用人工智能及自动控制技术,采用功能强大的嵌入式ARM对小车进行模块化设计,在普通车辆的基础上增加了先进的传感器(雷达、摄像)、控制器、执行器等装置,实现遥控器控制、超声波智能避障、运行轨迹自动优化等功能。

深圳粤嵌嵌入式开发有哪几种开发方向


  • ARM + Linux/Android开发

    据统计,全世界99%的智能手机和平板电脑都采用ARM架构。所有的iPhone和iPad都使用ARM的芯片,多数Kindle电子阅读器和 Android设备也都采用这一架构。大部分领先的网络/电信制造商正积极地将其下一代平台迁移到ARM平台上来,有理由相信在今后的几年中,ARM在行业中将扮演一个极为重要的角色。

  • FPGA开发

    FPGA(现场可编程逻辑器件)产品的应用领域非常广泛,包括通信、消费电子、汽车电子、工业控制、测试测量等。而应用的变化也使FPGA产品近几年的演进趋势越来越明显:一方面,FPGA供应商致力于采用当前最先进的工艺来提升产品的性能,降低产品的成本;另一方面,越来越多的通用IP(知识产权)或客户定制IP被引入FPGA中,以满足客户产品快速上市的要求。

  • DSP开发

    DSP(Digital Signal Processing,数字信号处理),是一门涉及许多学科而又广泛应用于许多领域的新兴学科。全球DSP市场的前景非常广阔,DSP产业将成为21 世纪最具发展潜力的朝阳产业。近年来,随着DSP芯片产品价格的不断下滑,使DSP能够从以往的军用领域迅速拓展到民用领域,例如应用于计算机、网络、移动电话、调制解调器和磁盘驱动器以及众多的消费电子产品。

  • IC设计

    你知道吗?上班的公交IC卡,ATM取钱的银行卡,楼宇的门卡等都是应用IC设计的产品,在现代世界不可或缺。IC设计(Integrated Circuit Design),或称为集成电路设计,是电子工程学和计算机工程学的一个学科,其主要内容是运用专业的逻辑和电路设计技术设计集成电路。

粤嵌用数据证明实力

  • 深圳嵌入式软件工程师培训

    14年 教学经验累计


  • 深圳嵌入式培训课

    20次 课程更新迭代


  • 深圳0基础学嵌入式

    50000名 毕业学员


  • 深圳嵌入式开发培训哪家好

    136家 合作高校


  • 深圳软件工程师开发培训

    120名 架构师级大牛讲师


  • 深圳学习嵌入式什么机构比较靠谱

    1764家 合作企业


  • 深圳嵌入式开发学习课程

    50天 总项目实战天数


  • 深圳嵌入式开发学习培训

    175款 自主研发产品及技术方案


粤嵌全方位教学服务体系


  • 深圳嵌入式开发编程培训费用

    课程大纲,定期升级

    课程研发团队时刻关注前沿技术和市场需求的变化,一年两次更新课程大纲,及时吸纳新的行业技术、

    项目案例,并根据实际教学效果进行调整,保证学员学得扎实且不落伍。

  • 深圳小白学习嵌入式开发

    创新教学,善于启发

    拒绝复制代码敲键盘等硬编程方式,粤嵌注重培养你的“编程思维”。粤嵌讲师也不仅仅给你传授知识,

    更教你如何拆解分析项目难题,提升解决实际问题的能力。

  • 深圳嵌入式软件编程培训课程

    课堂课下,全程陪伴

    课上有资深讲师授课,课余有技术工程师全程陪伴,只要你不懂就问,

    就会有技术老师随时随地答疑,帮你解决所有技术难点,不让难题陪你过夜。

  • 深圳嵌入式硬件开发培训课程

    严管严控,定期测试

    每个学习阶段结束,都会进行阶段测试 ,确保每个学员听懂学会。

    整个学习过程绝不会放任自由,考试不过,毕业无门,对每一个学员负责到底。

  • 深圳嵌入式开发培训学费

    认真学习,多彩生活

    从学员学习状态调整,到生活中的困难协助,

    从课上班级氛围塑造到课下多彩的班级活动,都有班主任家人般的鼓励支持。

  • 深圳嵌入式软件开发学校

    企业内推,就业无忧

    粤嵌拥有上千家合作企业,每年几十次专场招聘会为粤嵌学员提供海量就业机会。

    从简历设计到笔试复习计划、面试培训,都有就业老师全程指导,让学员轻松砍获高薪Offer!

深圳嵌入式项目就业培训

入门嵌入式工程师

针对于刚入行的嵌入式工程师而言,学好基础知识最为重要,对于成功而言,并没有很多的途径,首先要了解Linux的基础知识,学习Linux对于系统的开发会有很大的帮助,掌握Linux下的目录结构、基本命令、编辑器VI、编译器GCC、调试器GDB和Make 项目管理工具,Shell Makefile脚本编写等知识,以及嵌入式开发环境的搭建;其次要了解C语言,C语言是嵌入式开发中最重要的编程语言,要对这门语言有深入的理解,毕竟不仅仅要会写程序,看懂他人程序也很重要。最基本的数据类型、数组、指针、结构体,链表、文件操作等都要会,掌握基本语法和语句;再次要掌握电路知识和单片机,你要学习电路、模电、数电,认识电阻、电容、三极管,基础器件要知道,放大电路、集成运放、时序电路基本电路能看懂,单片机入门相对简单,通过单片机的学习可以熟悉单片机的硬件结构,包括I/O口、AD转换、通信(串口、并口、I2C、CAN、USB、以太网、ZigBee技术等)、显示(LED、LCD等)、控制(PWM等控制技术)、数据处理(图形、图像、语音、视频等的处理或识别)等,学好单片机可以为采用嵌入式系统奠定良好的基础。

相关问答

  • 深圳怎样才能学好嵌入式?

    粤嵌嵌入式培训讲师整理了6点,希望有帮助。 1、必须非常熟练的掌握C语言。 2、操作系统原理,是必需的。 3、Linu.....

  • 信盈达师资好吗?

    深圳信盈达嵌入式开发培训现有高级讲师86名,各讲师在嵌入式开发行业领域都有着丰富的项目实战开发经验,并且参与一线的产品研发,能够承担涵盖当今嵌入式开发的新技术及.....

  • 深圳信盈达老师上课怎么样?

    刚开始学嵌入式时的自己还是会有些小担心,怕自己学不会跟不上老师的进度,但现在发现信盈达的老师课程讲解很有一套也会耐心地辅导,会站在学员的角度上想问题,自己的一切.....

  • 深圳零基础该如何学习嵌入式开发技术?

    很多的人在面对这种高薪行业的时候都会有不知从何学起的时候,也不知道应该具体要学习什么样的内容,所以这个时候参加嵌入式培训机构就是非常的有必要的。参加嵌入式培训机.....

考试资讯

Java平台的可编程嵌入式系统的设计与实现 - 21IC中国电子网


Java平台的可编程嵌入式系统的设计与实现 时间:2019-07-24

传统的嵌入式系统设计的主要目标是找到一种优化的体系结构来完成单一的,特定的功能。对这样的系统来说,ASIC和核心处理器是作为特别的构件模块加以考虑的:设计者根据应用的要求选择适当的ASIC,根据给定的性能要求比如处理器主频,系统稳定性,以及对功耗的要求等选用适当的处理器内核。

1. 概述

传 统的嵌入式系统设计的主要目标是找到一种优化的体系结构来完成单一的,特定的功能。对这样的系统来说,ASIC和核心处理器是作为特别的构件模块加以考虑 的:设计者根据应用的要求选择适当的ASIC,根据给定的性能要求比如处理器主频,系统稳定性,以及对功耗的要求等选用适当的处理器内核。

然而,在当今移动通信已经进入每个人的生活的今天,现在的嵌入式系统比如PDA等已经不同于传统意义上的嵌入式系统了,它们有自己的独特特点。客观需要要求它们能够支持多种应用功能如网页浏览,播放音频/视频文件,以及进行无线网络通信等。

这样看来,传统的设计思路因为只面向单一的应用,无法满足多应用嵌入式系统的需求。而解决这一问题的良好途径便是向嵌入式系统引入可编程能力,以使得系统能够根据用户的不同要求实现对不同应用的支持。

为了向系统中引入可编程能力,我们考虑在系统中嵌入FPGA,因为FPGA具有下列特点,使得它成为我们的首选:

1.现在的FPGA的处理能力和逻辑容量已经接近于专用ASIC,功耗也比较低,能够满足我们系统设计的要求;

2.由于FPGA具有的可重编程能力,使用了FPGA的嵌入式系统能够满足各种不同的应用要求;

从 嵌入式系统管理的角度来说,对网络通信的支持也是很有必要的,也是很有特色的一个应用,因为它使得从远端服务器下载新的应用程序并在本地运行成为可能。为 实现对这个功能的支持,我们采用Java作为软件平台。因为Java运行在Java虚拟机之上,它能够下载并执行新的应用程序代码,并且无需在下载后重新 启动系统。

综上所述,这个新的嵌入式系统是基于Java的,有一个FPGA和标准处理器相连。我们通过网络下载Java代码和可以对 FPGA进行编程的比特流。该系统也支持对FPGA的动态重新配置。为了实现硬件(FPGA)和软件(Java应用程序代码)之间的通信,又定义了一组本 地API,以使得从Java应用层能够访问到底层的硬件。为了调用这些本地API,采用了Java本地接口(JNI)。在本文中,将一些Java函数 (Javamethod)用FPGA可编程硬件来实现,称之为硬件方法(HW method)。

2. 系统设计



实现一个Java函数功能的对应的硬件方法实现的逻辑结构图如图1所示。

点击图片可在新窗口打开

输入缓存和输出缓存分别用来接收输入参数和存储输出结果。控制缓存用于对硬件方法的控制和检测,比如向硬件方法发出启动指令,检查其所处的状态并判断操作是否完成等。该模块中的所有缓存都映射到处理器物理地址空间中,处理器可以使用正常的读写指令完成对这些缓存的访问。



图2是该嵌入式系统的硬件平台,由一个标准处理器,一个FPGA和一个系统存储单元构成。它们之间通过共享的系统总线连接在一起。

点击图片可在新窗口打开

当 处理器向一个硬件方法发出读写操作指令时,该硬件方法在其自己的地址解码器的帮助下向数据总线上发送对应的响应信号。在这里,我们可以认为是处理器发起的 硬件/软件通信指令,而FPGA则是作为一个从属单元做出回应。因为在处理器发起初始指令后,就由可配置管理器来负责管理FPGA编程。这样一来,就实现 了处理器和FPGA的并行运行。

如图3所示,我们选择Java作为软件平台,并且装载了一个嵌入式操作系统为Java实时应用程序提供基本的服务,比如线程和其它硬件管理等。



点击图片可在新窗口打开

通过系统管理器,可以从远程服务器下载Java应用程序。系统管理器主要实现了下面3种协议:

1. 应用程序代码(包括可对FPGA进行编程的比特流)下载协议;

2. 用于远程管理的系统维护相关的协议;

3. 控制对嵌入式系统访问权限的认证协议。

系统管理器包括基于socket连接的客户端类加载器。远端应用程序可以下载到本地并按照下面的过程执行:

1. 完成认证过程,系统进入管理模式;

2. 下载应用程序代码,完成系统初始化,比如加载FPGA可编程比特流到相应的存储单元;

3. 执行新的应用程序。

在该系统中,为了简化起见,预先映射硬件方法地址到确定的系统物理存储区,目的是为了寻址操作的方便快捷。

由于我们使用了Java软件平台,应用程序就无法直接访问底层的硬件。这就是说,运行在处理器Java虚拟机上的应用程序不能直接访问映射到FPGA中硬件方法的缓存区域。为解决这个问题,理论上可以采用下面两种方法:

1. 修改Java虚拟机,使其具有对处理器物理地址的直接访问能力;

2. 单独设计一种Java本地接口(JNI),使得应用程序通过该接口提供的功能实现对硬件方法映射到的物理地址的访问。

尽 管第一种方案的效率较高,并且没有引入额外开销,但是修改Java虚拟机内核是相当繁杂的工作,同时也可能会引起潜在的系统不稳定。第二种方案虽然引入了 一定的额外开销,但便于移植和实现。因此,我们采用方案二,在Java虚拟机和Java本地接口之外又设计了一个本地通信库。

本地通信库API形式如下:

int hwWriteXXX(int addr, XXX p);

int hwWriteArrayXXX(int addr, XXX[] p);

XXX hwReadXXX(int addr);

XXX[] hwReadArrayXXX(int addr);

int hwConfig(int cf_mem_addr, int bitstr_size);

Java本地接口层接口的形式如下:

class HWInterface{

static int ConfigStatus;

public static native int setParam(CID hw_cid, object P)

{

if(type_of_P == XXX)

err = hwWriteXXX(hw_cid.addr, (XXX)P);

return err;

}

public static native int getResult(CID hw_cid, object R);

public static native int setCMD(CID hw_cid, int cmd);

public static native int getStatus(CID hw_cid);

public synchronized static native int configHW( CID hw_cid);

}

在上面代码中,XXX表示基本的Java数据类型如整型(integer)、浮点型(float)、双精度型(double)等。

Java 应用程序通过类HWInterface提供的方法访问本地库。上面的代码中给出了setParam的具体实现。其中,CID是包括硬件方法映射到的缓存地 址的一个对象,对应于每个硬件方法的CID都是唯一的,因此,该地址和缓存区大小都是事先已经确定了的。但是,由于系统中只有一个配置控制器,我们无法同 时就两个或多个硬件方法向FPGA进行编程,也可以说同一时刻只能有一个硬件方法在使用配置控制器。为此,引入了一个静态变量ConfigStatus来 反映配置控制器的当前状态。所以,访问配置控制器的函数configHW()是静态的同步的。

使用上面给出的接口,则下面这段代码

methodA()

{

…;

int a = objA.m1(2); //SW method

int b = objB.m2(3); //HW method

int c = a + b;

…;

}

就应该写成下面的形式:

methodA()

{

…;

1 HWInterface.configHW(cid2); // cid2 is the ID of HW method m2

2 Object P = new Integer(3);

3 HWInterface.SetParam(cid2,P);

4 HWInterface.startHW(cid2);

5 int a = objA.m1(2);

6 Object R = new Integer();

7 While(HWInterface.getResult(cid2, R) == 0)

; //wait until HW method finished

8 HWInterface.getResult(cid2, R);

9 int b = ((Integer)R.getValue());

10 int c = a + b;

…;

}

在 上例中,为了执行FPGA中的函数objB.m2(),首先对FPGA进行编程(Line1)。然后,将参数拷贝到硬件方法的输 入缓存中 (Line3),并对硬件方法进行初始化(Line4)。最后,采用了一个循环函数持续检查硬件方法缓存的状态(Line7,8),直至计算完成,然后拷 贝得到结果(Line9)。

3. 系统实现

使用ARM710T处理器和Virtex的FPGA,根据上文给出的设计方案,我们实现了一个嵌入式系统开发平台。该平台包括一个网络接口,两个调试接口,一个PCI主机接口和一个串行口。并移植了一个嵌入式操作系统和一个小巧的Java实时运行环境。如图4:

点击图片可在新窗口打开

4. 总结

本 文用一种全新的思路,对传统的嵌入式系统进行了改进,实现了一种能够支持多种应用的嵌入式系统平台。利用FPGA的可编程性和Java平台良好的移植性 能,该平台完全能够满足我们的设计要求。当然,也有不足之处,比如对配置控制器的状态的获取,可以考虑使用中断的方式来实现,而不是采用本文中的循环查询 机制。这将在以后的工作中加以改进。


粤嵌众创空间打造出集研发、生产、培训、销售于一体的自主研发基地,目前已拥有技术研发工程师150多名,成功自主研发产品140多项,开发平台设备90多款,大型商业实训项目50多个,并获得荣誉与认证50多项,现今研发产品已遍布全国,使用用户已突破百万,创客团队已经在项目研发上取得阶段性成果,其中悟空学车、旷视科技、宏友电子、杰马科技等多个创客团队已经成功开发出包括VR虚拟驾驶、智能机器人、车载互动多媒体、智能仓储系统、无线远程控制系统、云视频会议系统等多个产品项目和解决方案,并应用于国内大型物联网示范项目。目前已引领30000多人走上高新技术人才之路,每年为上千家IT企业输送数千位优秀研发工程师,还相继与全国上千所高校达成合作共建校园众创空间,每年举办近百场各式的创业技能大赛、创业沙龙、创业大讲堂等活动。依托众创空间免费申请政策扶持,可获得数万元政策补贴。在这里既是技术人才汇聚中心,扶持政策导向的前沿,更是创新理念孵化的温床。

最新文章

今日有2356人申请