How a Single-Source for Application-Specific Hardware, Libraries, and Software Tools Streamlines Embedded Development
“One size fits all” is becoming less of a viable electronic product strategy, be it for consumer or industrial applications. Flexibility and customizability of a user’s electronics is the new design paradigm. Every year, common electronic product categories are merging, gaining features and becoming more user oriented. Though multiplying features in electronics is the norm in the industry, the pace and number of features being implemented in the latest designs is accelerating. For electronic device designers and developers, this means that they now need to incorporate more features in the same, or even smaller, space as a previous design.
Introduction
“One size fits all” is becoming less of a viable electronic product strategy, be it for consumer or industrial applications. Flexibility and customizability of a user’s electronics is the new design paradigm. Every year, common electronic product categories are merging, gaining features and becoming more user oriented. Though multiplying features in electronics is the norm in the industry, the pace and number of features being implemented in the latest designs is accelerating. For electronic device designers and developers, this means that they now need to incorporate more features in the same, or even smaller, space as a previous design.
In this day and age, embedded designers must be jacks-of-all-trades, have a very broadly skilled team, or rely on external contractors to fill in the gap of features needed for the next generation of products. Few embedded designers have the range of skills and hours in the day to personally design-in the necessary features to meet user demand and remain competitive. For example, it is unlikely that the embedded designer working with motor control systems is also proficient enough in wireless technologies without a steep learning curve and possibly months of trial and error to include wireless control/connectivity in their latest electrical motor product.
This is why Microchip has continually expanded on their ecosystem of hardware, software libraries and development tools. Rich with features and flexibility, these resources enable developers throughout the electronics industry to develop the latest products without needing expertise in every feature category. This paper’s goal is to provide insights into the hardware platforms, software libraries and development tools from Microchip that enable designers to rapidly include industrial-grade features into their embedded electronics without significant effort in embedded programming or learning the technical nuances behind each feature.
Hardware
Every product design phase requires prototyping and proofs of concept prior to production. The ideal logic, peripheral and accessory hardware for an electronic device is feature rich, compact, easy to integrate and easy to use. Moreover, the ideal hardware would also come with a rich software library that is professionally built and tested, along with out-of-the-box compatible software development tools. Highly extensible development boards that are easy to operate also play a key role in establishing the viability of a project and familiarity for the designers while building out their toolchains.
Microchip offers two lines of development boards—the entry-level Curiosity Development Boards and fully featured Explorer Development Boards—that help meet these needs and offer a highly flexible approach to early product and proof-of-concept/prototype development. The Curiosity boards support 8-, 16- and 32-bit microcontrollers (MCUs) and are highly customizable with flexible connectivity options and mikroBUS™ headers for compatibility with a vast array of MikroElektronika Click boards™. These Click boards can be readily swapped to create applications ranging from mixed-signal design, to motor control, to clock and timing, to power management and more.
Microchip’s Explorer boards are even more flexible and extensible than the Curiosity boards. The Explorer boards also offer mikroBUS sockets and accept Processor Plug-in Modules (PIMs), enabling the swapping of 16-/32-bit processors to help de-signers find the ideal solution. Moreover, Explorer boards are also extensible with customizable PICtail™ Plus Daughter Boards, which empower rapid development with pre-built applications. Many of the PICtail daughter boards and other hardware kits are built around application-specific hardware and are supported by extensive software libraries and professionally developed and user-generated code examples.
Software Libraries
Alongside Microchip’s development boards and application-specific hardware are the software libraries and code resources necessary for a developer to rapidly deploy the functions and features for each application. Instead of having to assemble a series of software libraries and functions to achieve a few simple tasks, as is common, Microchip provides rich and rigorously tested software libraries and code examples that are as plug-and-play as you can get in embedded design. These software libraries and code examples are specifically designed for each application-specific hardware solution. Both MPLAB® CodeConfigurator and MPLAB Harmony feature extensive libraries for common features such as USB, file systems and more.
Application-Specific Design Tools
To tap into the versatility of any embedded hardware platform, a compatible and user-friendly toolchain that a developer can harness and adapt to their application’s needs is essential. Microchip offers fully featured, and even graphical programming, software tools, such as MPLAB X Integrated Development Environment (IDE), MPLAB Code Configurator, and Atmel START, which are as extensible with plug-ins as Microchip’s hardware platforms. Many of these plug-ins enhance the base IDE with additional application-specific design tools, which lowers the barrier for entry-level developers for each given application.
One such plug-in to MPLAB X IDE is the MPLAB Harmony Graphics Suite (MHGS). which is fully integrated with the MPLAB Harmony software framework. MHGS provides a suite of tools to expediently create, customize, and optimize a Graphical User Interface (GUI) application faster and more efficiently than with the standard assortment of tools. Among the many features of MHGS is the ability for a developer to go from concept to glass in minutes without writing a single line of code. Drag-and-drop objects can be directly inputted into a design with MHGS, and additional plug-ins can be used to further support development with non-standard displays not otherwise supported.
Another flexible design tool and plug-in from Microchip is the motorBench® Development Suite, which provides a GUI-based software development tool for Field Oriented Control (FOC) of low-voltage motors. A common challenge with embedded development of motor controllers is easily starting up and efficiently running new motors with/without loads, which is especially difficult if the motor parameters are unknown. Providing an intuitive graphic development environment, the motorBench Development Suite cuts out many of the time-intensive steps in creating industrial-grade motor control solutions. It accomplishes this by facilitating precise measurements of critical motor parameters while tuning the feedback control gains for rapidly acquiring stable PI control for velocity and torque. Moreover, this development suite is able to generate source code for MPLAB X IDE projects via the Motor Control Application Framework (MCAF) and a user interface that walks a user step-by-step through the process with readily available help files and resources.
Application Examples
There are many common features and functions integrated in the latest electronic devices. Many traditional electronic products are now augmented with displays, touch features and external motor/power control and conversion. These features help to differentiate a product from a growing number of competitors and can also enable product development that best fits each market segment. The following application examples demonstrate Microchip’s flexible environment of application-specific hardware, software and development solutions.
Adding a user-friendly and attractive display to the interface of an electronic product can both provide a user with valuable feedback about the product’s operation/control and also add an aesthetic differentiator from other products in its category. Several of Microchip’s MCUs and Microprocessors (MPUs) come with an integrated graphics controller. Low-cost controllers and external graphics controllers are also available and compatible with Microchip’s logic devices. The integrated controllers are able to drive simple segmented LCD displays, small displays with static images, 8-/16-bit color displays up to Wide Quarter Video Graphics Array (WQVGA), and even 16-/24-bit color displays up to WVGA resolutions. External LCD controllers and graphics hardware acceleration devices are also available and can drive up to 24-bit WVGA displays for interactive UI or video graphics.
As described in the previous sections, Microchip provides extensive hardware development platforms, software libraries and the MHGS development tool, as well as the free Microchip graphics library to take advantage of the diverse assortment of premade graphics objects and resources. These tools, along with a selection of application notes and additional code examples, help a developer get off the ground with a viable display solution in a fraction of the time it would take without such flexible support.
Adding a touch or gesture interface to a product is an effective way of bringing robust and low-cost features to a product. As users are becoming more comfort-able with touch control and graphics interfacing, it is hard to remain competitive without offering these features, especially for point-of-sale, automotive, smart home and industrial applications. Microchip makes integrated 2D touch finger tracking and surface gesture recognition simple, with the 2D Touch Library for 8-bit PIC® and AVR® MCUs and 32-bit SAM MCUs. This type of touch application could encompass capacitive touch sliders, touchpads, and even touch/gesture systems.
Be it touch sensing technology integrated into the MCU or an external touch sensor/controller, Microchip offers a multitude of development boards, kits, 2D/3D touchpads, software libraries, and even graphically programmable development environments to help designers easily bring a touch or gesture solution to life.
Aside from motor control, there are other power applications that are increasingly driven by logic devices, namely digital power conversion. As with its support for motor control applications, Microchip has developed a flexible system of hardware, software and development tools to enable digital power designers to more easily deploy their solutions.
Along with its digital power starter kits, reference designs, development boards and Digital Signal Controllers (DSCs), Microchip also provides a complete arrangement of software libraries and a dedicated Digital Power Design Suite. These tools make writing and optimizing power algorithms simple and straightforward with analysis tools and comprehensive design examples. Hence, even inexperienced developers can pick up a digital power development board, free software, firmware, example code, application notes and training resources and deploy an expert-level embedded solution in weeks instead of months.
Conclusion
Enhancing an electronic product, or product line, with additional features and functions is an almost standard way of creating differentiation from the competition and earning greater market share. However, these features and functions come at the cost of additional development time and resources and also typically require a developer with expertise in the application area. Fortunately, with Microchip’s flexible ecosystem of application-specific hardware, software libraries and development tools, even a novice developer can quickly and efficiently build new solutions for a wide range of applications.
The information contained in this Application Specific Resources Streamline Development is provided “AS IS”, for informational purposes only, and should not be construed as advice on any subject matter.