With the growing popularity of Raspberry Pi, such inexpensive but powerful single-board computers start to be accepted by more and more people. Electronics enthusiasts also tend to use such boards to develop DIY applications or projects gradually. Compared to Arduino development boards that we have been using, such single-board computers have much (not several times, but dozens of times or even several hundred times) higher basic frequency and larger memory resources. These boards can also be directly connected to the monitor, keyboard, mouse and directly run operating systems to achieve a lot of tasks which Arduino board cannot. With regard to price, along with the increasing popularity of tablet program, price of the entire system is declining, although the price may still be several times higher than Arduino board, the performance will be tens of times stronger, which makes it more cost efficient.
The performance of single-board computers is far stronger than that of Arduino, but they take no advantage in usability. Relatively speaking, operating of Arduino board is more convenient without need for complex theoretical basics, because Arduino can help you achieve many of the elementary operations, you only need to learn some basic functions and you will be able to use Arduino to accomplish functions that you want.
So, why don’t we make elementary development of such single-board computers easier? At last, we came up with the idea of customizing a set of Ubuntu system for the hobbyists.
First but also the most basic step is to let users simply operate I/O ports, to allow them to use digitialRead, digitalWitre, etc to simply achieve control on a pin- yes, this way you can use your computer to turn on/off a relay, to achieve control on switches of lights, fans, etc.
Next, we will continue to open the direct operation of UART, and you can simply write a phython or C program to realize UART output and reading. Even if you're a hardware engineer who knows nothing about Linux at all like me, we can directly use Serial. print ("Hello World"); to send out data through the serial port- just imagine, this way your computer can simply communicate with Arduino.
Then, of course, is to know about the commonly used IIC and SPI interface operation functions. Although an operating system is running, you can still control these common interfaces communicating with various external sensors and modules directly through these functions, to achieve functions which normal computers cannot perform such as obtaining temperature and humidity, control on motor, etc.
Currently, we have completed development of Alpha version for internal test, it is compatible with cubieboard hardware. Now, we can make this customized system run in cubieboard, and then control I / O operations on the board through a simple C program including digital reading, writing and PWM control.
For the Alpha version, you can download it in the address here: http://url6.org/htc
. It includes the detailed installation manual and IO functions operating manual. You are welcomed to send us the suggestions after using it.
It is expected that we will provide a formal Beta test version together with our A10 core evaluation board early next month, in which we will finish the operation functions of the three interfaces: UART, IIC and SPI, as we mentioned before, we will package them with an operation mode similar to Arduino. Therefore, many libraries can be directly ported to run on the system without any modification needed.