Intel Galileo gen2 实验环境搭建

嵌入式 专栏收录该内容
1 篇文章 0 订阅

去年做WCET,需要一个x86的开发板做实验,购入了Galileo2代,当时主要负责硬件实验,记了云笔记。

首先,介绍一下Intel Galileo系列,目前出了两代,和Edison等系列主要是Intel面向物联网开发的推出的产品。

英特尔 Galileo 2 代主板是一系列经过 Arduino 认证的开发板中的第一款产品,基于英特尔 ® 架构,专为制造商、学生、教师、DIY 电子发烧友而设计。英特尔 Galileo 2 代 基于英特尔 Quark™ SoC X1000(32 位英特尔奔腾® 处理器级片上系统(SoC)),带有原装英特尔处理器并具备原生 I/O 性能,是一款适用于广泛应用的功能丰富的产品。通过 Arduino 认证,并设计为与一系列广泛的 Arduino Uno R3 插板在软硬件、引脚上兼容,此外还允许用户将 Linux 固件调用纳入他们的 Arduino 初始编程中。

++++ 如何做SD卡启动盘。 ++++

器材:Galileo gen2开发板(包括电源线),TTL-232R-3.3串口线一根(用于串口调试),SD卡一张(小于32G)

用到的软件: Win32DiskImager(用于写入sd卡镜像), pytty.exe(串口调试软件用于与板子通讯),7-Zip(用于解压文件),Galileo Linux 的SD卡镜像(一个集成好的基于Yocto项目的Linux) 镜像官方链接: link:https://downloadcenter.intel.com/download/26418/Intel-Galileo-Board-Support-Package?v=t(SDCard.1.1.1.tar.bz2)

Step1:在电脑上解压好镜像文件。

Step2:用Win32DiskImager将镜像写入sd卡。打开Win32DiskImager,进入到解压的文件夹,选择文件类型为*.*,选择解压出来的 .direct文件(类似名称为iot-devkit-version-mmcblkp0.direct),点击写入。

写入完成后SD卡即可作为一个启动的介质,插入到Galileo板上的卡槽后,接通电源默认将会从SD卡引导系统。

到这一步,板子基本上相当于一台运行Linux的PC了。将串口调试线一端接在Galileo上,另一端插在我们自己的电脑usb口上(可能需要安装串口驱动程序link:http://www.ftdichip.com/Drivers/CDM/CDM%20v2.12.00%20WHQL%20Certified.exe),接着在打开putty软件,选择串口通讯,波特率设置为115200,点击建立会话,即可出现Linux终端,输入root,回车。(root 默认密码为空)。

++++ 在电脑上安装用于编程的IDE ++++

由于一般开发板都没有外接键盘/屏幕等,就需要在自己的电脑上进行程序开发,然后通过串口/网络等方式传到开发板上,才可在板子上运行程序。

关于Galileo的程序开发,官方提供的有两种途径:

1.基于 Arduino IDE 

图片来源:http://jingyan.eeboard.com/article/75222#/prettyPhoto%5Bpp_gal%5D/7/

Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。它构建于开放原始码simple I/O介面版,并且具有使用类似Java、C语言的Processing/Wiring开发环境。主要包含两个主要的部分:硬件部分是可以用来做电路连接的Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。

之前提到,Galileo 2代兼容Arduino IDE,其程序语言类似于C,但仍有区别。研究了一下,发现IDE会先将编写的sketch 转换成C++ 项目 ,然后在传给编译器进行编译(avr-gcc),大概步骤如下:

对于 Sketch 文件(后缀名是 .ino ,即IDE中编写好的程序,在 IDE 中显示为无后缀名), Arduino IDE 会进行一系列预处理,最终将它们捆绑成一个 main.cpp 在一开头加入 #include "Arduino.h" 。遍历所有 .ino 文件中定义的函数,自动生成函数原型,将其加到文件的开头(在所有注释和预编译指令之后,所有语句之前),然后将所有 .ino 文件拼接起来。

普通的 C/C++ 文件不会经过以上的预处理

编译及链接

首先, Arduino 的基本库文件、 avr 头文件、 C 标准库文件会被加入引用目录列表。而对于普通的 C/C++ 文件,则会单独编译成一个静态库,最后和 main.cpp 以及各个 library 的编译结果链接起来。

IDE在预处理以及编译后产生的文件 应该暂存在一个文件夹中。

修改目录arduino-1.8.5\lib\ 下 preferences.txt,在最后加入一行  build.path=d:\arduino  即可将编译时中间文件夹重新设置   在重新编译sketch 时 即可在此文件夹中找到相应的文件。如图:

2.基于Intel® System Studio IoT (支持java,node.js,C/C++开发) link

这里我们选择更通用的Intel® System Studio(基于eclipse的)进行C/C++开发。

安装前准备:电脑上已安装Java* SE Development Kit 8即JDK1.8 64位,电脑BIOS中设置为Enable Intel VT-x。

接着如下安装:

1.安装Docker,并按指导设置好参数。 官方指导https://software.intel.com/node/891d3133-326c-4989-972b-24b8763707ec 也可百度自行安装。

2.安装Intel System Studio IoT,先从网站 https://software.intel.com/iss-iot-installer/win/latest下载最新安装器,点开后会自动完成安装。

3.安装完成后,可以在安装目录下找到iss-iot-launcher.bat文件,双击即可打开Eclipse,其中自带了一些简单的Demo,例如点亮板载LED。至此即可开始进行Galileo的C/C++程序开发。 官方教程

Galileo板通过网线接到路由器上和电脑连在同一网络下,在Eclipse中设置远程调试参数(Galileo的ip地址,可在putty建立的终端中输入ifconfig查看;用户名:root,密码为空)即可上传编译好的ELF到板子运行。

另外还可用WinSCP进行上传:同样需将板子和电脑连在同一网络下,在电脑上打开WinSCP,输入Galileo的ip地址,用户名:root,密码为空点击连接,即可连接到Galileo的存储空间。在WinSCP中找到本机电脑的eclipse workspace目录下的相应项目,其目录下Debug文件夹下即存放着编译好的ELF文件。在WinSCP中可将Debug下的ELF文件(例如Demo.elf)直接复制到Galileo板子Linux系统下的的文件夹中,再选中Demo文件右击选择属性,将其读写权限改为0755(使其可在Linux下运行)。最后在putty终端中进入相应文件夹,输入./Demo 即可运行该程序。

第一种方法有时候会出现上传失败,第二种方法比较繁琐,但暂无运行失败情况发生。

  • 1
    点赞
  • 0
    评论
  • 9
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

Title: Intel Galileo and Intel Galileo Gen 2 Author: Manoel Carlos Ramon Length: 680 pages Edition: 1 Language: English Publisher: Apress Publication Date: 2014 12 26 ISBN 10: 1430268395 ISBN 13: 9781430268390 Intel Galileo and Intel Galileo Gen 2: API Features and Arduino Projects for Linux Programmers provides detailed information about Intel Galileo and Intel Galileo Gen 2 boards for all software developers interested in Arduino and the Linux platform The book covers the new Arduino APIs and is an introduction for developers on natively using Linux Author Manoel Carlos Ramon is a member of the Intel Galileo development team; in this book he draws on his practical experience in working on the Galileo project as he shares the team’s findings problems fixes workarounds and techniques with the open source community His areas of expertise are wide ranging including Linux embedded kernel and device drivers C C++ Java OpenGL Assembler Android NDK SDK ADK and 2G 3G 4G modem integration He has more than 17 years of experience in research and development of mobile devices and embedded circuits His personal blog about programming is BytesThink www bytesthink com What you ll learn How Linux libraries and applications are used and interact with sketches How to configure WiFi mPCIe How to develop and debug Intel’s Galileo and Intel Galileo Gen 2 sketches using the Arduino IDE native Linux applications and hacking Integration of OpenCV and V4L2 in C C++ Python to capture picture and videos and to detect faces eyes and your emotional state with a Fisherfaces model How to exchange data using the 7160 LTE modem How to tweet with REST API 1 1 and OAuth authentication How to control a 6 DOF robot arm using a gripper based in coffee grains as well as how to create a special API and hardware for six analogic controls Home Automation with node js How to manage temperature sensors barometric sensors and PIR motion sensors as well as how to create your
©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值