Today's low-cost, but high-capacity embedded chips provide virtually anyone with the necessary development tools to integrate sophisticated computing power into personal projects and small-scale commercial products.
While this possibility has existed for years, it has only been
fully exploited in recent times by the remarkable
growth of complete ecosystems formed by hardware and software embedded development tools.
such as development and evaluation boards and development environments
integrated (IDE), download much of the hard work to the environment of
systems development and allow projects to stop being based
simply in the trial and error method. No wonder that
Chip makers and board vendors have invested so many
resources in offering low cost development tools or even
Free to promote sales of your products.
One of the easiest ways to get started in electronics is with one of the popular embedded MCU boards, such as those of Arduino Y SparkFun.
These units are designed for beginners to find
simple and fun to use, and provide a good way to
Learn and try ideas. Thanks to their general use nature, they can
be implemented in amateur designs, as well as to create prototypes.
However, many chip manufacturers, such as Cypress Y Texas Instruments
(IT), they currently have development kits that are on horseback
between amateur devices and evaluation boards
professionals, and can be used to develop prototypes
electronic production scale.
These kits can offer a useful intermediate step in learning
of developers, given the large number of simple functions with
those that count, as an Arduino product
or SparkFun, in addition to allowing users to work directly with
chips and hardware likely to later become a
mass produced electronic system. That said, many engineers
professionals currently use kits designed for amateurs, such as
Arduino, as versatile development and testing tools.
The world of systems development
embedded can be confusing, given the overwhelming variety of products from
hardware and clones it offers, as well as the even greater variety of tools
associated software To better understand the numerous options they have at their
available system developers, whether amateur or
professionals, it is useful to start with a brief overview of a
typical development environment.
In the center of the workbench
of embedded development is, of course, the development or evaluation board
based on the target MCU. Generally speaking, the difference between a plate
of development and a plate of finished product is that the first offers a
Easy access to internal signals and I / O pins, and is easy to
reschedule. Development boards can also offer functions
additional to facilitate the developer's task, such as advanced control of
The software part of the development
takes place on a PC or laptop host (it can also be done on a
mobile device, although this option is still very rare), which connect to
the development board via USB and, perhaps, also through other interfaces,
as a serial port, depending on the requirements of the project. They are also
essential more traditional external monitoring and testing tools,
as multimeters and oscilloscopes.
The host PC runs an IDE, which
provides access to software development tools, such as editors,
compilers, debuggers, library administrators, etc. Besides
suppliers of software tools and embedded systems IDE, the
Individual hardware vendors also offer IDE tools
software and libraries for your specific products. It is possible that on the PC
also run simulation and emulation software, such as tools
printed circuit design and circuit design or emulation, to offer
a complementary functionality.
In fact, the initial phase of
development can take place entirely on the host PC, with software
simulation that emulates the target hardware. As development progresses,
the execution can be moved to the host hardware board. Obviously in
This phase can be very useful a modular development style that allows
test functions in isolation to locate software errors and
The right choice of software and
Given the overwhelming variety of
options and combinations available, it would be advisable that
developers carefully chose the hardware and tools of
related software, depending on the expected demands of the project.
It is important to investigate and
plan at the beginning, since each development platform is more or less
suitable to work with according to what applications and external hardware. As well
software compatibility and development models should be considered
futures, to reduce the risk that their developers have to depend
of obsolete software. Needless to say, it is much more important to adopt
this more cautious approach if there is a possibility that the projects are
expand for mass production.
Very often, of course, the best
IDE is the one provided by the development board provider. For example,
let's imagine the case of a desktop power supply project
programmable and controlled by touch screen based on Arduino DUE. The DUE is one of the most plates
powerful Arduino, and is based on a microcontroller with 32-bit ARM core
with 54 digital input / output pins and 12 analog inputs.
At the beginning, the project was based
almost completely in the standard Arduino IDE. However, in a given
moment, the developer opted for a visual development tool
distinct, EEZ Studio, to carry out tasks such as design and animation
of a graphical user interface on the source's color touch screen
power, since the functionality of the Arduino IDE in this regard was
Although the standard IDE tools are usually the most appropriate, it is sometimes necessary to look further to find optimized development software. Take as an example the project of an intelligent window developed with a IT SimpleLink MCU LaunchPad kit. The objective of this project was to offer a suitable window for its implementation in homes and offices, which could be automatically dimmed according to the light, with a timer or even by remote control from a mobile application. To offer the function of attenuation, an electrochromic film sheet covering the glass window was used.
The range of IT SimpleLink kits is based on I / O-focused development boards for connectivity applications, such as building and home automation or Internet of Things (IdC) implementations. The specific plate that was used in this case was a MSP432 with a complementary board for Wi-Fi functionality. The MSP432 board was chosen because of its low cost, its numerous I / O connections and its minimum power consumption, which offered a very long battery life. The battery life was a very important aspect due to the need to place the controller board as close as possible to the window, with the intention of incorporating it into the frame in the future. This provision did not allow the use of an external power supply, both for aesthetic and economic reasons.
Although IT LaunchPad kits
They offer powerful development tools based on the popular Eclipse IDE,
in this case the developers relied mainly on the platform of
IBM Bluemix hybrid cloud development to develop the software. He
they opted for this platform because it is specifically designed to
applications that remain connected to the cloud during operation, and
This capacity facilitates the expansion of the project to control many
windows In addition, the developers determined that Bluemix offered better
iOS compatibility at that time, and a driver application for
iPhone / iPad was a vital part of the project.
The extremely low cost of the kits
development, in combination with the wide variety of development software,
They allow to carry out large projects to practically everyone. The
real project development examples described here illustrate what can
help a little research and planning to avoid future pitfalls,
especially in projects with more ambitious objectives and great perspectives