Difference between pages "香蕉派 BPI-R64" and "BPI-UNO arduino UNO board"

From Banana Pi Wiki
(Difference between pages)
Jump to: navigation, search
(软件源代码)
 
(Easy to buy sample)
 
Line 1: Line 1:
[[en:Banana_Pi_BPI-R64]]
+
[[zh:BPI-UNO Arduino开源开发板]]
  
[[File:Banana_Pi_BPI-R64_6.jpg|thumb|Banana Pi BPI-R64 with MT7622]]
+
=Overview=
[[File:Banana_Pi_BPI-R64_1.jpg|thumb|Overview:banana Pi BPI-R64]]
 
[[File:BPI-R64_PoE.JPG|thumb|BPI-R64 with BPI-7402 POE function support]]
 
[[File:BPI-R64_POE_1.jpg|thumb|[[BPI-7402 IEEE 802.3at PoE module]]]]
 
[[File:5G_gateway_2.jpg|thumb|BPI:4.0 [[Successful case]] 5G/4G 多卡聚合融合通信网关]]
 
[[File:[[File:BPI-4G 5.JPG|thumb|4G with USB [[4G module via USB]]]]
 
  
=产品介绍=
+
[[File:BPI-UNO_1.JPG|thumb|BPI-UNO arduino UNO]]
香蕉派BPI-R64是一个MTK7622 芯片路由器的开发板,它可以运行在各种开源操作系统上,包括OpenWrt,Linux。它有4千兆位局域网端口,1千兆位WAN,以及2.4G 4x4n 802.11n/Bluetooth 5.0, 5.8G,MTK7615 4x4ac 功能。使用64位芯片设计.支持POE供电
+
[[File:BPI-UNO_2.JPG|thumb|BPI-UNO arduino UNO]]
 +
[[File:BPI-Nano_1.JPG|thumb|[[BPI-NANO arduino NANO board]]]]
  
[[File:Banana_Pi_BPI-R64.png]]
+
The BPI-UNO Arduino Uno is a microcontroller board based on the ATmega328 (datasheet). It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started.
  
==MTK MT7622 芯片==
+
=Main spec=
 +
*ATmega328P @16 MHz.
 +
*32 KB Flash.
 +
*2 KB SRAM.
 +
*1 KB EEPROM
  
MT7622高度集成的4x4 802.11n和蓝牙5.0平台与专用网络加速器
+
=Hardware=
 +
==Hardware inerface==
 +
[[File:BPI-UNO_arduino_1.png]]
  
联发科MT7622是全球首款采用4x4n 802.11n /蓝牙5.0系统芯片的系统,专为高性能网络设备而设计,适用于多种应用,包括路由器/中继器,家庭自动化网关,无线音频和无线存储。高度通用的芯片组为流行的4X4双频和三频道路由器/中继器提供了一个单一平台,为寻求构建顶级网络设备的制造商提供了最大的灵活性。该平台通过成本效益高的方法将高性能和广泛集成的功能相结合。
+
==Hardware spec==
 
 
MT7622包含联发科的自适应网络技术,允许轻松设置,网络自愈,漫游,频带转向,智能服务质量,高级安全性等。对于音频和语音控制应用,包括基本音频接口,如I2S,TDM和S / PDIF。对于家庭自动化网关,除了集成的Wi-Fi,蓝牙和Zigbee共存之外,还有一系列缓慢的I / O。
 
 
 
MT7622采用了时钟频率为1.35GHz的64位双核ARM Cortex-A53处理器,提供了诸如SGMII / RGMII,PCIe和USB以及4X4 802.11n FEM集成的高级连接选项。使用802.11ac扩展平台以满足额外的市场需求通过MT7615 SoC完成。
 
 
 
MT7622引入了一流的功能,如蓝牙5.0和专用的网络加速器引擎与联发科Wi-Fi扭曲加速器,存储加速器(SATA 3.0 / eSATA Gen2)和HNAT HQoS计算从CPU卸载,降低整体电力使用和释放资源,以避免任何潜在的减速。
 
 
 
联发科Wi-Fi扭曲加速器的优势是双重的。首先,它将Gigabit + class 802.11ac网络连接到千兆交换机/ WAN连接,通过千兆位内部路径,确保没有瓶颈。其次,其专门的设计不仅可以从多用户吞吐量和QoS计算中卸载CPU,而且功耗较低。结果是联发科Wi-Fi Warp加速器在甚至支持多个同时繁忙的用户时保持持续的高性能。
 
 
 
集成蓝牙允许通过应用程序进行直接的本地无线连接,便于路由器/ Wi-Fi设置的配置。最新的蓝牙5.0倍增倍,与之前的4.x技术相比,速度提高了一倍,可以实现新的创新。
 
 
 
==关键特性==
 
 
 
* MediaTek MT7622,1.35GHZ 64 bit dual-core ARM Cortex-A53
 
* 1G DDR3 SDRAM
 
* Mini PCIE interface support 4G module
 
* built-in 4x4n 802.11n/Bluetooth 5.0 system-on-chip
 
* MTK7615 4x4ac wifi on board
 
* support 1 SATA interface
 
* MicroSD slot supports up to 256GB expansion
 
* 8G eMMC flash (option 16/32/64G)
 
* 5 port 10/100/1000 Mb Ethernet port
 
* (1) USB 3.0
 
* Slow I/O:ADC, Audio Amplifier, GPIO, I2C, I2S, IR, PMIC I/F, PWM, RTC, SPI, UART
 
* POE function support
 
 
 
==开始使用==
 
 
 
如何使用BPI-R64进行开发 :[[Getting Started with R64]]
 
 
 
=硬件=
 
==硬件接口示意==
 
 
 
[[File:BPI-R64_interface.JPG]]
 
 
 
==硬件规格==
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
| style="background: PaleTurquoise; color: black" colspan="4"| '''Banana pi BPI-R64 硬件规格'''
+
| style="background: PaleTurquoise; color: black" colspan="4"| '''Banana Pi BP-UNO'''
 
|-
 
|-
| CPU ||MediaTek MT7622,1.35GHZ 64 bit dual-core ARM Cortex-A53
+
|Microcontroller || ATmega328P
 
|-
 
|-
| SDRAM || 1 GB DDR3
+
|Operating Voltage ||5V
 
|-
 
|-
| SATA || support 1 SATA interface
+
|Input Voltage: (recommended) ||7-12V
 
|-
 
|-
| GPIO || 40 Pins Header, 28×GPIO, some of which can be used for specific functions including UART, I2C, SPI, PWM, I2S.
+
|Input Voltage: (limits) ||6-20V
 
|-
 
|-
| On board Network || 5 10/100/1000Mbps Ethernet with MT7531 switch chip
+
|Digital I/O Pins ||14(include 6 PWM output)
 
|-
 
|-
| Wifi || built-in 4x4n 802.11n (800Mbps) sysem-on-chip and  MTK7615 4x4ac wifi Module (1733Mbps) on board
+
|PWM PIN ||6个
 
|-
 
|-
| Bluetooth || Bluetooth 5.0 system-on-chip
+
|Analog Input Pins ||6个
 
|-
 
|-
| On board Storage || MicroSD \(TF\) card,8GB eMMC onboard
+
|I/O output Max || 20mA
 
|-
 
|-
| mini PCIE||1 mini pcie interface for 4G
+
|3.3V output Max|| 50mA
 
|-
 
|-
| USB || 1 USB 3.0 host
+
|Flash|| 32KB(ATmega328P) and 0.5KB used by bootloader
 
|-
 
|-
| Buttons || Reset button
+
|SRAM|| 2KB(ATmega328P)
 
|-
 
|-
| Leds || Power status Led and RJ45 Led
+
|EEPROM ||1KB(ATmega328P)
 
|-
 
|-
| IR || onboard IR receiver
+
|Clock Speed|| 16MHz
 
|-
 
|-
| DC Power || 5V/2A with DC in
+
|onboard LED|| 13
 
|-
 
|-
| POE || support POE module interface,can add POE module
+
|size|| same as arduino NANO
 
|-
 
|-
| Sizes || 148 mm × 100.5mm
 
|-
 
| Weight || 100g
 
|-
 
 
|}
 
|}
  
==PoE 网线供电支持==
+
There is a self-restoring fuse on the bpi-uno that automatically disconnects the power supply when short-circuiting or overcurrent exceeds 500mA, thus protecting the USB port and bpi-uno of the computer. While most computer USB ports provide internal protection, this fuse provides additional protection.
 +
 
 +
==Power==
 +
 
 +
BPI-NANO can power with MicroUSB port,PH2.0 port and VIN port.
 +
 
 +
Power dependent pins are as follows:
 +
*PH2.0 port: can input 7-12V,It can be controlled by a power switch。
 +
*5V:5V power PIN。when use USB power,direct output USB supplied 5V voltage;When using external power supply, output 5V voltage after voltage stabilization压。
 +
*3V3:3.3V power output PIN。output Max is 50 mA。
 +
*VIN:Connect to external dc 5V power supply
 +
*REF:I/O reference voltage. Other devices can identify the development board I/O reference voltage through this pin。
 +
 
 +
Note:FT232RL will only work if it is powered through the USB port。
 +
 
 +
==Input and Output==
 +
Each of the 14 digital pins on the BPI-UNO can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20-50 kOhms. In addition, some pins have specialized functions: Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the corresponding pins of the FTDI USB-to-TTL Serial chip. External Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.
 +
 
 +
Some of them have special functions and these pins are as follows:
 +
*Serial:0(RX)、1(TX),Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the corresponding pins of the FTDI USB-to-TTL Serial chip。
 +
*xternal Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value
 +
*PWM output:BPI-NANO have 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite() function.
 +
*SPI:10(SS)、11(MOSI)、12(MISO)、13(SCK),These pins support SPI communication, which, although provided by the underlying hardware, is not currently included in the Arduino language。
 +
*L13:There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.。
 +
*I2C: 4 (SDA) and 5 (SCL). Support I2C (TWI) communication using the Wire library (documentation on the Wiring website).
 +
 
 +
BPI-NANO have 6 analog inputs, each of which provide 10 bits of resolution (i.e. 1024 different values). By default they measure from ground to 5 volts, though is it possible to change the upper end of their range using the analogReference() function. Additionally, some pins have specialized functionality:
 +
 
 +
There are a couple of other pins on the board:
 +
*REF:Reference voltage for the analog inputs. Used with analogReference().
 +
*Rst:Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board.
 +
 
 +
==LED==
 +
 
 +
BPI-UNO arduino UNO have 4 LED,The effects are as follows:
 +
*ON:Power indicator.When the bpi-nano is powered ON, the ON light comes ON
 +
*TX:Serial transmission indicator. When connected to a computer using USB and the bpi-nano transmits data to the computer, the TX lights up
 +
*RX:Serial receiving indicator. The RX lights up when the USB is connected to the computer and the bpi-nano receives data from the computer.
 +
*L13:Programmable control indicator. The LED is connected to pin 13 of the bpi-nano through a special circuit. When pin 13 is in a high level or high resistance state, the LED will be lit up. When the electricity is low, it will not be lit up. The LED can be turned on and off by program or external input signal.
 +
 
 +
==Communication==
 +
BPI-UNO has a number of facilities for communicating with a computer, another Arduino, or other microcontrollers. The ATmega168 and ATmega328 provide UART TTL (5V) serial communication, which is available on digital pins 0 (RX) and 1 (TX). An FTDI FT232RL on the board channels this serial communication over USB and the FTDI drivers (included with the Arduino software) provide a virtual com port to software on the computer. The Arduino software includes a serial monitor which allows simple textual data to be sent to and from the Arduino board. The RX and TX LEDs on the board will flash when data is being transmitted via the FTDI chip and USB connection to the computer (but not for serial communication on pins 0 and 1).
 +
 
 +
A SoftwareSerial library allows for serial communication on any of the Nano's digital pins.
 +
 
 +
The ATmega168 and ATmega328 also support I2C (TWI) and SPI communication. The Arduino software includes a Wire library to simplify use of the I2C bus; see the documentation for details. To use the SPI communication, please see the ATmega168 or ATmega328 datasheet.
 +
 
 +
==Automatic (Software) Reset==
 +
Rather then requiring a physical press of the reset button before an upload, the Arduino Nano is designed in a way that allows it to be reset by software running on a connected computer. One of the hardware flow control lines (DTR) of the FT232RL is connected to the reset line of the ATmega168 or ATmega328 via a 100 nanofarad capacitor. When this line is asserted (taken low), the reset line drops long enough to reset the chip. The Arduino software uses this capability to allow you to upload code by simply pressing the upload button in the Arduino environment. This means that the bootloader can have a shorter timeout, as the lowering of DTR can be well-coordinated with the start of the upload.
 +
 
 +
This setup has other implications. When the Nano is connected to either a computer running Mac OS X or Linux, it resets each time a connection is made to it from software (via USB). For the following half-second or so, the bootloader is running on the Nano. While it is programmed to ignore malformed data (i.e. anything besides an upload of new code), it will intercept the first few bytes of data sent to the board after a connection is opened. If a sketch running on the board receives one-time configuration or other data when it first starts, make sure that the software with which it communicates waits a second after opening the connection and before sending this data.
 +
 
 +
=Arduino Software=
 +
 
 +
==Arduino IDE==
 +
You can program the PI-NANO through Arduino IDE。
  
we design PoE function for BPI-R64 ,so easy to add PoE module to support PoE function,PoE modue can support IEEE 802.3bt PoE standard ,Max support 12V/3A to power BPI-R64
+
On the BPI-Nano using ATmega328 chip, there is a bootloader program stored, allowing users to upload the program to the development board, without the need for additional programmers. The process of uploading the program was completed using the STK500 protocol.
  
[[File:BPI-R64_POE.jpg]]
+
You can also upload the program to bpi-uno via the ICSP interface without using bootloader
  
more PoE module spec
+
==Arduino driver install==
 +
*1,Windows10 :Windows10 Plug in BPI-Nano and the driver will be installed automatically
 +
*2,Windows7 :
  
[[BPI-7402 IEEE 802.3at PoE module]]
+
After plugging in bpi-uno, the system will try to install the driver automatically. If the installation fails, it will display, "failed to install the driver device successfully". In this case, the driver can be installed manually:
 +
Right click on "my computer", device manager, other devices; Right click on "unknown device" and click "update driver software" :
  
==4G 支持==
+
[[File:BPI-UNO_win1.png]]
  
1, 可以使用标准CPIe (USB2.0)模块,直接插在板上。背面有SIM 卡坐。
+
Select the second item, "browse the computer to find driver software";
  
::[[File:4g_onboard.jpg]]
+
[[File:BPI-UNO_win2.png]]
  
2,也可以采用USB接口的扩展模块
+
Click browse and select the driver address, which is the location of the driver in the ArduinoIDE you downloaded:
  
*USB 4G module : http://wiki.banana-pi.org/4G_module_via_USB
+
[[File:BPI-UNO_win3.png]]
  
==BPI-R64 GPIO Pin define==
+
[[File:BPI-UNO_win4.png]]
  
=资源=
+
If the following prompt appears during installation, select "install" :
==软件源代码==
 
*BPI-R64 Linux BSP(kernel 4.19):https://github.com/BPI-SINOVOIP/BPI-R64-bsp-4.19
 
*BPI-R64 Linux BSP(kernel 4.4) : https://github.com/BPI-SINOVOIP/BPI-R64-bsp
 
* OpenWRT 官方支持github: https://github.com/openwrt/openwrt/tree/master/target/linux/mediatek/mt7622
 
  
==文档==
+
[[File:BPI-UNO_win5.png]]
* MTK 7622 chip : https://www.mediatek.com/products/homeNetworking/mt7622
 
* MT7622_Reference_Manual_for_Develope_Board(BPi) :
 
::google drive link: https://drive.google.com/file/d/1cW8KQmmVpwDGmBd48KNQes9CRn7FEgBb/view?usp=sharing
 
::BaiDu  Drive:https://pan.baidu.com/s/1KduFT2MUvMs2FhOF4A8kQQ
 
  
*The best news is that the final patchset version for HNAT framework was accepted ( kernel 4.16) and it's based on nftables.: https://www.spinics.net/lists/netfilter-devel/msg50973.html
+
System prompt: driver installed successfully:
*Banana Pi BPI-R64 通过 amazon AWS 认证 : https://devices.amazonaws.com/detail/a3G0h000000OvObEAK/Banana-Pi-R64
 
  
=镜像发布=
+
[[File:BPI-UNO_win6.png]]
==Ubuntu ==
 
  
*2019-08-23 update,Ubuntu Server 16.04,This release is for banana pi R64 board, and it is based on kernel 4.19.
+
In the device manager, you can see the COM port for Arduino:
::Fetures Map:
 
::Google Drive : https://drive.google.com/open?id=1zrOSS2QJPirSwoK5yJFx10SiOtxRjXP
 
::Baidu Drive : https://pan.baidu.com/s/1iOtk-OnC9yNTMzdhSeOCJA(PinCode:ew9c)
 
::MD5 : 79fc190def54140dd9bf12b73e263bd0
 
::username : root/pi ; password : bananapi
 
::Forum Pthread:http://forum.banana-pi.org/t/bpi-r64-ubuntu-16-04-aarch64-linux-lite-debian-10-buster-lite-demo-images-release-2019-08-23/9759
 
  
==Debian==
+
[[File:BPI-UNO_win7.png]]
  
*2019-08-23 update,Debian 10 buster lite,This release is for banana pi R64 board, and it is based on Debian 10 Buster Lite Operation system with kernel 4.19.
+
then you can find COM port in Arduino IDE
::Fetures Map:
 
::Google Drive : https://drive.google.com/open?id=1p4WImHkItdSYGRV5jtMdfYHm5PD4dl-q
 
::Baidu Drive : https://pan.baidu.com/s/1hVQj-1_rYc74QQ1Z4WoaiQ (PinCode:g1j5)
 
::MD5 : fa3f6a7f7a4bcf2c5a8072301cf8c268
 
::username : root/pi ; password : bananapi
 
::Forum Pthread:http://forum.banana-pi.org/t/bpi-r64-ubuntu-16-04-aarch64-linux-lite-debian-10-buster-lite-demo-images-release-2019-08-23/9759
 
  
*2018-12-11 update This release is for banana pi R64 board which is based on Mtk 7622, Debian 8 AARCH64 is based on kernel 4.4.92
+
[[File:BPI-UNO_win8.png]]
::Features Map: http://wiki.banana-pi.org/Getting_Started_with_R64
 
::Google Drive : https://drive.google.com/open?id=1Xnz327Mm24WoVwAsj4yPPek09bP3yv7P
 
::Baidu Drive : https://pan.baidu.com/s/1AdCM9lTuWP9oXiOE2qGsDw
 
::md5sum : 4b43980375c3f9692c1f0585ca6b541a
 
::discuss on forum:http://forum.banana-pi.org/t/banana-pi-bpi-r64-new-image-debian-8-11-aarch64-release-2018-12-11/7447
 
  
==AArch64 Linux==
+
now, you can program with the Arudino IDE.
  
*2019-08-23 update,AArch64 Linux lite,This release is for banana pi R64 board, and it is based on kernel 4.19.
+
=The resources=
::Fetures Map:
+
*Schematic diagram download :
::Google Drive : https://drive.google.com/open?id=1x7_Iu1D9jJGvAExdNZGDVGuv7CbDp4ep
+
*DXF file download:
::Baidu Drive : https://pan.baidu.com/s/15X6XtRuab08_N2T0vgoVOQ  (PinCode:j4f7)
 
::MD5 :ed579320359fdc471eeaf37f98d5874d
 
::username : root/pi ; password : bananapi
 
::Forum Pthread:http://forum.banana-pi.org/t/bpi-r64-ubuntu-16-04-aarch64-linux-lite-debian-10-buster-lite-demo-images-release-2019-08-23/9759
 
  
=FAQ=
+
=Easy to buy sample=
 +
*BPI official aliexpress : https://www.aliexpress.com/item/4000162002624.html
 +
*BPI taobao shop :  https://item.taobao.com/item.htm?ft=t&id=602354681944
 +
*Welcome for OEM&ODM

Revision as of 18:16, 5 November 2019


Overview

BPI-UNO arduino UNO
BPI-UNO arduino UNO

The BPI-UNO Arduino Uno is a microcontroller board based on the ATmega328 (datasheet). It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started.

Main spec

  • ATmega328P @16 MHz.
  • 32 KB Flash.
  • 2 KB SRAM.
  • 1 KB EEPROM

Hardware

Hardware inerface

BPI-UNO arduino 1.png

Hardware spec

Banana Pi BP-UNO
Microcontroller ATmega328P
Operating Voltage 5V
Input Voltage: (recommended) 7-12V
Input Voltage: (limits) 6-20V
Digital I/O Pins 14(include 6 PWM output)
PWM PIN 6个
Analog Input Pins 6个
I/O output Max 20mA
3.3V output Max 50mA
Flash 32KB(ATmega328P) and 0.5KB used by bootloader
SRAM 2KB(ATmega328P)
EEPROM 1KB(ATmega328P)
Clock Speed 16MHz
onboard LED 13
size same as arduino NANO

There is a self-restoring fuse on the bpi-uno that automatically disconnects the power supply when short-circuiting or overcurrent exceeds 500mA, thus protecting the USB port and bpi-uno of the computer. While most computer USB ports provide internal protection, this fuse provides additional protection.

Power

BPI-NANO can power with MicroUSB port,PH2.0 port and VIN port.

Power dependent pins are as follows:

  • PH2.0 port: can input 7-12V,It can be controlled by a power switch。
  • 5V:5V power PIN。when use USB power,direct output USB supplied 5V voltage;When using external power supply, output 5V voltage after voltage stabilization压。
  • 3V3:3.3V power output PIN。output Max is 50 mA。
  • VIN:Connect to external dc 5V power supply
  • REF:I/O reference voltage. Other devices can identify the development board I/O reference voltage through this pin。

Note:FT232RL will only work if it is powered through the USB port。

Input and Output

Each of the 14 digital pins on the BPI-UNO can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20-50 kOhms. In addition, some pins have specialized functions: Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the corresponding pins of the FTDI USB-to-TTL Serial chip. External Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.

Some of them have special functions and these pins are as follows:

  • Serial:0(RX)、1(TX),Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the corresponding pins of the FTDI USB-to-TTL Serial chip。
  • xternal Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value
  • PWM output:BPI-NANO have 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite() function.
  • SPI:10(SS)、11(MOSI)、12(MISO)、13(SCK),These pins support SPI communication, which, although provided by the underlying hardware, is not currently included in the Arduino language。
  • L13:There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.。
  • I2C: 4 (SDA) and 5 (SCL). Support I2C (TWI) communication using the Wire library (documentation on the Wiring website).

BPI-NANO have 6 analog inputs, each of which provide 10 bits of resolution (i.e. 1024 different values). By default they measure from ground to 5 volts, though is it possible to change the upper end of their range using the analogReference() function. Additionally, some pins have specialized functionality:

There are a couple of other pins on the board:

  • REF:Reference voltage for the analog inputs. Used with analogReference().
  • Rst:Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board.

LED

BPI-UNO arduino UNO have 4 LED,The effects are as follows:

  • ON:Power indicator.When the bpi-nano is powered ON, the ON light comes ON
  • TX:Serial transmission indicator. When connected to a computer using USB and the bpi-nano transmits data to the computer, the TX lights up
  • RX:Serial receiving indicator. The RX lights up when the USB is connected to the computer and the bpi-nano receives data from the computer.
  • L13:Programmable control indicator. The LED is connected to pin 13 of the bpi-nano through a special circuit. When pin 13 is in a high level or high resistance state, the LED will be lit up. When the electricity is low, it will not be lit up. The LED can be turned on and off by program or external input signal.

Communication

BPI-UNO has a number of facilities for communicating with a computer, another Arduino, or other microcontrollers. The ATmega168 and ATmega328 provide UART TTL (5V) serial communication, which is available on digital pins 0 (RX) and 1 (TX). An FTDI FT232RL on the board channels this serial communication over USB and the FTDI drivers (included with the Arduino software) provide a virtual com port to software on the computer. The Arduino software includes a serial monitor which allows simple textual data to be sent to and from the Arduino board. The RX and TX LEDs on the board will flash when data is being transmitted via the FTDI chip and USB connection to the computer (but not for serial communication on pins 0 and 1).

A SoftwareSerial library allows for serial communication on any of the Nano's digital pins.

The ATmega168 and ATmega328 also support I2C (TWI) and SPI communication. The Arduino software includes a Wire library to simplify use of the I2C bus; see the documentation for details. To use the SPI communication, please see the ATmega168 or ATmega328 datasheet.

Automatic (Software) Reset

Rather then requiring a physical press of the reset button before an upload, the Arduino Nano is designed in a way that allows it to be reset by software running on a connected computer. One of the hardware flow control lines (DTR) of the FT232RL is connected to the reset line of the ATmega168 or ATmega328 via a 100 nanofarad capacitor. When this line is asserted (taken low), the reset line drops long enough to reset the chip. The Arduino software uses this capability to allow you to upload code by simply pressing the upload button in the Arduino environment. This means that the bootloader can have a shorter timeout, as the lowering of DTR can be well-coordinated with the start of the upload.

This setup has other implications. When the Nano is connected to either a computer running Mac OS X or Linux, it resets each time a connection is made to it from software (via USB). For the following half-second or so, the bootloader is running on the Nano. While it is programmed to ignore malformed data (i.e. anything besides an upload of new code), it will intercept the first few bytes of data sent to the board after a connection is opened. If a sketch running on the board receives one-time configuration or other data when it first starts, make sure that the software with which it communicates waits a second after opening the connection and before sending this data.

Arduino Software

Arduino IDE

You can program the PI-NANO through Arduino IDE。

On the BPI-Nano using ATmega328 chip, there is a bootloader program stored, allowing users to upload the program to the development board, without the need for additional programmers. The process of uploading the program was completed using the STK500 protocol.

You can also upload the program to bpi-uno via the ICSP interface without using bootloader

Arduino driver install

  • 1,Windows10 :Windows10 Plug in BPI-Nano and the driver will be installed automatically
  • 2,Windows7 :

After plugging in bpi-uno, the system will try to install the driver automatically. If the installation fails, it will display, "failed to install the driver device successfully". In this case, the driver can be installed manually: Right click on "my computer", device manager, other devices; Right click on "unknown device" and click "update driver software" :

BPI-UNO win1.png

Select the second item, "browse the computer to find driver software";

BPI-UNO win2.png

Click browse and select the driver address, which is the location of the driver in the ArduinoIDE you downloaded:

BPI-UNO win3.png

BPI-UNO win4.png

If the following prompt appears during installation, select "install" :

BPI-UNO win5.png

System prompt: driver installed successfully:

BPI-UNO win6.png

In the device manager, you can see the COM port for Arduino:

BPI-UNO win7.png

then you can find COM port in Arduino IDE

BPI-UNO win8.png

now, you can program with the Arudino IDE.

The resources

  • Schematic diagram download :
  • DXF file download:

Easy to buy sample