0%

新建一篇文章

1
hexo new "Hexo教程"

通过vim编辑器或者其他编辑器打开:添加tags和categories

修改如下:

1
2
3
4
5
6
7
title: title #文章标题
date: 2016-06-01 23:47:44 #文章生成时间
categories: "Hexo教程" #文章分类目录 可以省略
tags: #文章标签 可以省略
- 标签1
- 标签2
description: #对本页的描述 可以省略

新建一篇博客,在cmd执行命令:

1
hexo new post “博客名”

这时候在文件夹_posts目录下将会看到已经创建的文件
使用编辑器编好文章,那么就可以使用命令:

1
hexo d -g

我们在使用Allegro来布局PCB的时候经常会遇到布局一样的模块,如果我们一个个的去布局很浪费时间,怎么解决这个问题呢,那就用到我们今天讲的一个知识点了,答题思路是先布局好一个模块,然后其他的按照这个布局复制即可,是不是很简单,接下来看一下具体如何操作

阅读全文 »

netstat命令各个参数说明如下:

1
2
3
4
5
6
7
8
9
  -t : 指明显示TCP端口

  -u : 指明显示UDP端口

  -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)

  -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。

  -n : 不进行DNS轮询,显示IP(可以加速操作)

即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况··

netstat -ntlp //查看当前所有tcp端口·

netstat -ntulp |grep 80 //查看所有80端口使用情况·

netstat -an | grep 3306 //查看所有3306端口使用情况·

查看一台服务器上面哪些服务及端口

netstat -lanp

查看一个服务有几个端口。比如要查看mysqld

ps -ef |grep mysqld

查看某一端口的连接数量,比如3306端口

netstat -pnt |grep :3306 |wc

查看某一端口的连接客户端IP 比如3306端口

netstat -anp |grep 3306

1
2
3
4
5
6
7
8
netstat -an 查看网络端口 

lsof -i :port,使用lsof -i :port就能看见所指定端口运行的程序,同时还有当前连接。

nmap 端口扫描
netstat -nupl (UDP类型的端口)
netstat -ntpl (TCP类型的端口)
netstat -anp 显示系统端口使用情况

简介

Orangepi PC

香橙派平板是一款开源的单板电脑,新一代的arm开发板,它可以运行Android4.4、Ubuntu、Debian等操作系统,兼容树莓派。香橙派平板使用全志H3系统级芯片,同时拥有1GB DDR3 内存,官方网站:http://www.orangepi.cn/orangepipc/index_cn.html

orangepipc_info_cn

无标题2
Orangepi PC是基于全志H3的开源开发板,全志H3主要用于机顶盒产品,具体参数:

20160730144810d6

无标题

无标题1

Armbian系统

Armbian是轻量级的Debian系统和为ARM开发板专门发行并重新编译的Ubuntu系统。关于armbian系统具体介绍可以查看网站https://www.armbian.com/

主要特点:

  • Armbian使用重新编译的Debian Wheezy,Jessie或Ubuntu,它们可靠性极佳。
  • 安装映像降低到实际的数据大小。
  • root密码是1234。第一次登陆时你会被提示更改密码并创建登录用户。
  • 第一次启动需要较长时间(可能长达几分钟)比正常启动(20S)要慢。因为它需要更新软件包列表,获取SSH密钥和扩展系统以适应你的SD卡分区,而且它可能会自动重新启动一次。
  • 可以切换内核以适应其它系统。[1]
  • 桌面环境可以升级准备。
  • NAND,SATA,eMMC和USB安装包含脚本(NAND SATA安装)。
  • 串行控制台启用。
  • 启用自动安全更新下载的系统。升级也可以通过apt-get等方法。

支持的芯片

全志 A10, A20, A31, H3, A64
Amlogic S805
Amlogic S905
Actionsemi S500
飞思卡尔/ NXP iMx6
Marvell Armada A380
三星Exynos 5422
RK3288

支持的ARM板

Beelink X2,
Orange Pi PC plus, Orange Pi Plus 2E, Orange Pi Lite, Orange Pi 2,Orange Pi One, Orange Pi PC, Orange Pi Plus 1 & 2,
Orange Pi A20,Orange Pi mini A20,Orange Pi A31S,
Roseapple Pi,
NanoPi M1,
pcDuino2, pcDuino3, pcDuino3 nano,
Odroid C0/C1/C1+, Odroid C2,Odroid XU4,
Banana Pi M2+,Banana Pi, Banana Pi M2,Banana Pi PRO,Banana Pi Plus A20,
Hummingboard,Hummingboard 2,
Clearfog,
Lemaker Guitar,
Udoo Neo,
Cubieboard 1, Cubieboard 2,
Lamobo R1,
Olimex Lime A10, Olimex Micro, Olimex Lime 2, Olimex Lime 1,
Udoo quad,
Cubox-i,
Cubietruck

编译环境

  • Ubuntu 16.04 LTS 64位
  • orangepi pc开发板

下载源码

源码下载地址:https://github.com/armbian/build

编译系统过程还是比较简单的

(1) 搭建开发环境

编译环境我用的是虚拟机安装的Ubuntu 16.04 64位的系统,新建虚拟机时硬盘空间要足够大,否则编译过程会被中断。我为Ubuntu分配了100G空间,当然物理硬盘占用不会达到100G,主要是为以后编译其他系统留点空间

官方提供的编译环境说明

Supported build environments:

  • Ubuntu Xenial 16.04 x64 guest inside a VirtualBox or other virtualization software,
  • Ubuntu Xenial 16.04 x64 guest managed by Vagrant. This uses Virtualbox (as above) but does so in an easily repeatable way. Please check the Armbian with Vagrant README for a quick start HOWTO,
  • Ubuntu Xenial 16.04 x64 inside a Docker, systemd-nspawn or other container environment (example). Building full OS images inside containers may not work, so this option is mostly for the kernel compilation,
  • Ubuntu Xenial 16.04 x64 running natively on a dedicated PC or a server (not recommended unless you build kernel only, for full OS images always use virtualization as outlined above),
  • 20GB disk space or more and 2GB RAM or more available for the VM, container or native OS,
  • superuser rights (configured sudo or root access).

(2) 开始编译
这里要注意的是网络得通畅,编译过程中会下载一下工具和源码包,一般编译下来没什么问题。我们先编译内核再编译整个系统,编译时使用root用户或者sudo

Execution

1
2
3
4
apt-get -y install git
git clone https://github.com/armbian/build
cd build
./compile.sh

Make sure that full path to the build script does not contain spaces.
检查所有路径不包含空格
You will be prompted with a selection menu for a build option, a board name, a kernel branch and an OS release. Please check the documentation for advanced options and additional customization.
编译过程中会有编译选项选择,板子的名称,内核和系统版本。请查看高级选项和额外定制的文档。
Build process uses caching for the compilation and the debootstrap process, so consecutive runs with similar settings will be much faster.

具体步骤:

(1)首先安装git,Ctrl+Alt+T打开终端输入下面的命令

1
apt-get -y install git

检查git版本

1
git --version

2018-01-20 21-40-09屏幕截图

(2)下载源码,在终端中输入下面的命令

源码可以放在自己习惯的文件夹下,下面是我的

1
2
3
cd /home/iotts/
mkdir armbian
git clone https://github.com/armbian/build

(3)开始编译,在终端中输入下面的命令

1
2
cd build
./compile.sh

2018-01-20 21-31-30屏幕截图

2018-01-20 21-32-37屏幕截图

安装编译工具完成后会进入配置编译配置界面2018-01-20 21-51-53屏幕截图

2018-01-20 21-52-04屏幕截图

2018-01-20 21-52-24屏幕截图

我们选择第二项

2018-01-20 21-52-51屏幕截图

确定以后就开始编译内核了,编译整个系统的步骤基本类似,选择下图中的第二项

2018-01-20 21-51-53屏幕截图

来一张编译完成的图,电脑有点慢编译时间有点长

2018-01-20 16-18-17屏幕截图

以上就是自编译armbian系统的具体步骤

RS232简介:

RS-232-C是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。RS-232-C总线标准设有25条信号线,包括一个主通道和一个辅助通道。

在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。

RS-232-C标准规定的数据传输速率为50、75、100、150、300、600、1200、2400、4800、9600、19200、38400波特。

RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。具体通讯距离还与通信速率有关,例如,在9600pbs时,普通双绞屏蔽线时,距离可达30-35米。

串行通信接口标准经过使用和发展,目前已经有几种。但都是在RS-232标准的基础上经过改进而形成的。所以,以RS-232C为主来讨论。RS-232C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。它适合于数据传输速率在0~20000b/s范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电气特性都作了明确规定。由于通信设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。

首先,RS-232-C标准最初是远程通信连接数据终端设备DTE(Data Terminal Equipment)与数据通信设备DCE(Data Communicate Equipment)而制定的。因此这个标准的制定,并未考虑计算机系统的应用要求。但目前它又广泛地被借来用于计算机(更准确的说,是计算机接口与终端或外设之间的近端连接标准)。显然,这个标准的有些规定和计算机系统是不一致的。有了对这种背景的了解,我们对RS-232C标准与计算机不兼容的地方就不难理解了。
其次,RS-232C标准中所提到的“发送”和“接收”,都是站在DTE立场上,而不是站在DCE的立场来定义的。由于在计算机系统中,往往是CPU和I/O设备之间传送信息,两者都是DTE,因此双方都能发送和接收。

电气特性

EIA-RS-232C对电气特性、逻辑电平和各种信号线功能都作了规定。

在TxD和RxD上:

$\color{red}{逻辑1(MARK)=-3V~-15V}$

$\color{green}{逻辑0(SPACE)=+3~+15V}$

在RTS、CTS、DSR、DTR和DCD等控制线上:
信号有效(接通,ON状态,正电压)=+3V~+15V
信号无效(断开,OFF状态,负电压)=-3V~-15V

以上规定说明了RS-232C标准对逻辑电平的定义。对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V;对于控制信号;接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3~+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在-3V~-15V或+3V~+15V之间。

接口

连接器:由于RS-232C并未定义连接器的物理特性,因此,出现了DB-25、DB-15和DB-9各种类型的连接器,其引脚的定义也各不相同。下面分别介绍两种连接器。
(1)DB-25:PC和XT机采用DB-25型连接器。DB-25连接器定义了25根信号线,分为4组:
①异步通信的9个电压信号(含信号地SG)2,3,4,5,6,7,8,20,22
②20mA电流环信号 9个(12,13,14,15,16,17,19,23,24)
③空6个(9,10,11,18,21,25)
④保护地(PE)1个,作为设备接地端(1脚)
注意,20mA电流环信号仅IBM PC和IBM PC/XT机提供,至AT机及以后,已不支持。
(2)DB-9:
在AT机及以后,不支持20mA电流环接口,使用DB-9连接器,作为提供多功能I/O卡或主板上COM1和COM2两个串行接口的连接器。它只提供异步通信的9个信号。DB-9型连接器的引脚分配与DB-25型引脚信号完全不同。因此,若与配接DB-25型连接器的DCE设备连接,必须使用专门的电缆线。
电缆长度:在通信速率低于20kb/s时,RS-232C 所直接连接的最大物理距离为15m(50英尺)。
最大直接传输距离说明:RS-232C标准规定,若不使用MODEM,在码元畸变小于4%的情况下,DTE和DCE之间最大传输距离为15m(50英尺)。可见这个最大的距离是在码元畸变小于4%的前提下给出的。为了保证码元畸变小于4%的要求,接口标准在电气特性中规定,驱动器的负载电容应小于2500pF。

接口信号

RS-232C 的功能特性定义了25芯标准连接器中的20根信号线,其中2条地线、4条数据线、11条控制线、3条定时信号线,剩下的5根线作备用或未定义。常用的只有10根,它们是:

(1)联络控制信号线:

1
数据发送准备好(Data set ready-DSR)——有效时(ON)状态,表明MODEM处于可以使用的状态。

1
数据终端准备好(Data terminal ready-DTR)——有效时(ON)状态,表明数据终端可以使用。

这两个信号有时连到电源上,一上电就立即有效。这两个设备状态信号有效,只表示设备本身可用,并不说明通信链路可以开始进行通信了,能否开始进行通信要由下面的控制信号决定。
1
请求发送(Request to send-RTS)——用来表示DTE请求DCE发送数据,即当终端准备要接收MODEM传来的数据时,使该信号有效(ON状态),请求MODEM发送数据。它用来控制MODEM是否要进入发送状态。

1
允许发送(Clear to send-CTS)——用来表示DCE准备好接收DTE发来的数据,是与请求发送信号RTS相应的信号。当MODEM准备好接收终端传来的数据,并向前发送时,使该信号有效,通知终端开始沿发送数据线TxD发送数据。

这对RTS/CTS请求应答联络信号是用于半双工MODEM系统中发送方式和接收方式之间的切换。在全双工系统中,因配置双向通道,故不需要RTS/CTS联络信号,使其变高。
1
接收线信号检出(Received Line detection-RLSD)——用来表示DCE已接通通信链路,告知DTE准备接收数据。当本地的MODEM收到由通信链路另一端(远地)的MODEM送来的载波信号时,使RLSD信号有效,通知终端准备接收,并且由MODEM将接收下来的载波信号解调成数字量数据后,沿接收数据线RxD送到终端。此线也叫做数据载波检出(Data Carrier dectection-DCD)线。

1
振铃指示(Ringing-RI)——当MODEM收到交换台送来的振铃呼叫信号时,使该信号有效(ON状态),通知终端,已被呼叫。

(2)数据发送与接收线:
1
发送数据(Transmitted data-TxD)——通过TxD终端将串行数据发送到MODEM,(DTE→DCE)。

1
接收数据(Received data-RxD)——通过RxD线终端接收从MODEM发来的串行数据,(DCE→DTE)。

(3)地线 :

1
GND、Sig.GND——保护地和信号地,无方向。

上述控制信号线何时有效,何时无效的顺序表示了接口信号的传送过程。例如,只有当DSR和DTR都处于有效(ON)状态时,才能在DTE和DCE之间进行传送操作。若DTE要发送数据,则预先将DTR线置成有效(ON)状态,等CTS线上收到有效(ON)状态的回答后,才能在TxD线上发送串行数据。这种顺序的规定对半双工的通信线路特别有用,因为半双工的通信才能确定DCE已由接收方向改为发送方向,这时线路才能开始发送。

接线

在工程当中经常会用到232口,一般是圆头8针与D型9针两种串口。在一定的条件下,必须要自己制作一个相应的”圆头或者是D型的”232串口。
RS232C串口通信接线方法(三线制)
首先,串口传输数据只要有接收数据针脚和发送针脚就能实现:同一个串口的接收脚和发送脚直接用线相连,两个串口相连或一个串口和多个串口相连

同一个串口

接收脚和发送脚直接用线相连对9针串口和25针串口,均是2与3直接相连;

两个不同串口(不论是同一台计算机的两个串口或分别是不同计算机的串口)

DB9-DB9
2-3,3-2,5-5

DB25-DB25
2-3,3-2,7-7

DB9-DB25
2-3,3-2,5-7

上面是对微机标准串行口而言的,还有许多非标准设备,如接收GPS数据或电子罗盘数据,只要记住一个原则:接收数据针脚(或线)与发送数据针脚(或线)相连,彼此交叉,信号地对应相接。

8针圆形串口接线:

2”逻辑地”,4”TXD”,7”RXD”。

9针D型串口:

2”RXD”,3”TXD”,5”逻辑地”。

针脚 信号 定义 作用
1 DCD 载波检测 eceived Line Signal Detector(Data Carrier Detect)
2 RXD 接收数据 Received Data
3 TXD 发送数据 Transmit Data
4 DTR 数据终端准备好 Data Terminal Ready
5 SGND 信号地 Signal Ground
6 DSR 数据准备好 Data Set Ready
7 RTS 请求发送 Request To Send
8 CTS 清除发送 Clear To Send
9 RI 振铃提示 Ring Indicator

使用RS232接口时注意

RS-232-C的电气接口电路采取的是不平衡传输方式,即所谓单端通讯,其发送电平与接收电平的差只有2~3V,所以共模抑制能力较差,容易受到共地噪声和外部干扰的影响,再加上信号线之间的分布电容,因此其传送距离最大为约15米,最高数据传输速率为20kb/s。此外RS-232-C的接口电路的信号电平较高,容易损坏接口电路的芯片,与TTL电路的电平也不兼容,影响其通用性。为了弥补RS-232-C的不足,提高数据传输率和延长通信距离,EIA于1977年制订了RS-499串行通信标准,这个标准对RS-232-C的不足做了改进和补充。

RS-422A是RS-499的标准子集之一。

RS485简介:

RS485的特点:

  1. RS-485的电气特性:采用差分信号正逻辑,逻辑”1”以两线间的电压差为+(2~6)V表示;逻辑”0”以两线间的电压差为-(2~6)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片, 且该电平与TTL电平兼容,可方便与TTL电路连接。
  2. RS-485的数据最高传输速率为10Mbps。
  3. RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗噪声干扰性好。
  4. RS-485最大的通信距离约为1219m,最大传输速率为10Mbps,传输速率与传输距离成反比,传输速率越低,传输距离越长,如果需传输比RS-485最大通信距离更长的距离,需要加485中继器。RS-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。
    因为RS485接口组成的半双工网络,一般只需二根连线(一般叫AB线),所以RS485接口均采用屏蔽双绞线传输。

    接口

    RS485接口组成的半双工网络,一般是两线制(以前有四线制接法,只能实现点对点的通信方式,现很少采用),多采用屏蔽双绞线传输。这种接线方式为总线式拓扑结构在同一总线上最多可以挂接32个结点。在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。很多情况下,连接RS-485通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来。RS485接口连接器采用DB-9的9芯插头座,与智能终端RS485接口采用DB-9(孔),与键盘连接的键盘接口RS485采用DB-9(针)。

    使用RS485接口时注意

    使用RS485接口时应注意的问题

    参考电路:

    fig1.jpg

    原理:

    RS232-485转换器主要包括了电源、232电平转换、485电路三部分。本电路的232电平转换电路采用了NIH232或者也可以直接使用MAX232集成电路,485电路采用了MAX485集成电路。为了使用方便,电源部分设计成无源方式,整个电路的供电直接从PC机的RS232接口中的DTR(4脚)和RTS(7脚)窃取。PC串口每根线可以提供大约9mA的电流,因此两根线提供的电流足够供给这个电路使用了。经实验,本电路只使用其中一条线也能够正常工作。使用本电路需注意PC程序必须使串口的DTR和RTS输出高电平,经过D3稳压后得到VCC,经过实际测试,VCC电压大约在4.7V左右。因此,电路中要说D3起的作用是稳压还不如说是限压功能。

  MAX485是通过两个引脚RE(2脚)和DE(3脚)来控制数据的输入和输出。当RE为低电平时,MAX485数据输入有效;当DE为高电平时,MAX485数据输出有效。在半双工使用中,通常可以将这两个脚直接相连,然后由PC或者单片机输出的高低电平就可以让MAX485在接收和发送状态之间转换了。由于本电路DTR和RTS都用于了电路供电,因此使用TX线和HIN232的另外一个通道及Q1来控制MAX485的状态切换。平时NIH232的9脚输出高电平,经Q1倒相后,使MAX485的RE和DE为低电平而处于数据接收状态。当PC机发送数据时,NIH232的9脚输出低电平,经Q1倒相后,使MAX485的RE和DE为高电平而处于数据发送状态。

原文连接

Arduino IDE 的缺点

虽然 Arduino 很流行很火爆,但是 Arduino IDE 却非常、非常、非常弱。编写代码很不方便,只能说提供了一个最基本的写代码的工具而已,调试代码也很不方便。而且,Arduino IDE 中写代码,只能是把所有的源代码都集中在一个 .ino 文件中,对于写惯了 C++ 程序的工程师来说,Arduino IDE 完全不具备工程化的可能,只能给一般的爱好者当一个玩具而已。

所以,本教程既然大言不惭地号称是“高级”教程,首先要做的就是替换掉 Arduino IDE 这个开发工具。当然实际上并不是真的替换掉了 Arduino IDE 的所有的东西,而是把它的有用的工具链(gcc toolchain)进行了重用,然后编写代码、代码管理和调试等工作由更现代化的工具来完成。

代替Arduino IDE工具安装

替代工具:Arduino for Visual Studio(Visual Micro)

说到太阳系中最强大和最友好的 C++ IDE,我个人认为是Visual Studio。当然您可能并不赞同我的说法,或许您更倾向于 Eclipse。好吧,您可以自行寻找解决办法,用 Eclipse 开发 Arduino 也是完全可行的,也有好事者用 vim 开发 Arduino……抱歉,扯远了。

在本节中,我们需要用到两个软件:

  1. Visual Studio

  2. Visual Micro (Arduino for Visual Studio 插件)

Visual Micro 的原理

简单说一下为什么我们可以在 Visual Studio 中开发 Arduino 应用程序。

官方的 Arduino IDE 开发 Arduino 应用程序,是这样的:
clip_image001.png

而 Visual Studio + Visual Micro 开发 Arduino 应用程序,是这样的:
clip_image002.png

所以说,我们替换掉的仅仅是 Arduino IDE 这个蹩脚的代码开发工具,但是编译、调试和代码烧写用的还是原来的 gcc toolchain。

$\color{red}{Notes:}$上图中,你会看到Atmel Studio。Atmel Studio是Atmel公司推出的免费开发工具,它是基于Visual Studio Shell的。所以本文虽然是针对Visual Studio来讲的,但也同时适用于Atmel Studio。

有关详细的Visual Micro工作原理的解释,请看这里:How the Software Tools WorkTogether

Visual Studio 安装

Visual Studio 有很多版本,比如说 Professional、Enterprise、Ultimate……这些都可以用来开发 Arduino 应用程序。当然对于个人开发者来说,可能不会去购买付费版本的 Visual Studio,那么用免费的 Community 版本就可以了。

在本例中,我使用的是 Visual Studio Community 2015。

在安装 Visual Studio 的时候,有很多可选项,对于开发 Arduino 应用程序来说,只要装有 C++ 开发的安装选项即可。

Visual Micro 安装

Visual Micro 的官方网站是:http://www.visualmicro.com
这个软件有收费版和免费版,收费版也不贵,Commercial $75
for 1 PC,批量有优惠。对于个人来说,装免费版就完全够用了。

所以说我们用的 Visual Studio 和 Visual Micro 都可以用免费的版本,对个人来说经济上零压力。

Visual Micro 下载下来是一个 .vsix 的安装包,双击就可以进行安装了。注意安装前要关掉 Visual Studio。
clip_image003

接下来我们应该进行 Visual Micro 的设置。

设置 Visual Micro

安装 Visual Micro 之后,首次打开 Visual Studio,就会弹出以下窗口:
clip_image004

以上窗口中,我们需要正确选择 Arduino IDE 的版本和安装位置,好让 Visual Micro 能够帮助 Visual Studio 找到相应的 gcc toolchain。

至于其它的设置项(Optional sketchbook location、Optional additional boards manager urls),我们现在初始设置的时候可以先不理会,以后需要的时候可以再对此做设置。

实际上 Visual Micro 已经根据注册表里面的信息自动填好了初始设置项,我现在需要做的仅仅是确认无误之后点击“OK”按钮就可以了。

选择软件版本、开发板型号和端口

然后,你会发现 Visual Studio 的工具栏和菜单里面多了这些东西:

clip_image005

clip_image006

看来它是把 Arduino IDE 的工具栏和菜单里面的东西搬到这里来了。

新建Arduino工程

接下来我们就可以体验在 Visual Studio 里面写 Arduino 程序了。

如下图新建一个Aarduino工程
clip_image008.png
clip_image009.png
接下来我们先写一个点灯的程序
直接贴代码了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void setup()
{

/* add setup code here */
pinMode(13,OUTPUT);
}

void loop()
{
digitalWrite(13, HIGH);
delay(200);
digitalWrite(13, LOW);
delay(200);
/* add main program code here */

}

编译的话我们选择正式编译Release
接下来根据开发板的具体情况选择板子类型、端口号
clip_image010.png
点击Start编译并将程序下载到开发板上,然后就会看到灯在闪烁
1.gif

1
2
3
插入视频代码:

<iframe height=498 width=510 src="http://player.youku.com/embed/XNjcyMDU4Njg0">
1
2
3
插入gif代码:

<iframe height=500 width=500 src="http://ww4.sinaimg.cn/mw690/e75a115bgw1f3rrbzv1m8g209v0diqv7.gif">