Rapid Prototyping with Microchip 8-Bit Microcontrollers - Part 1
Rapid Development Software
By Espen Krangnes – Microchip Technology
Being able to take source code components from basic drivers to services and stacks and combine them into a custom application to showcase a specific use case is what rapid prototyping is all about. Having software in source code format and in a framework allows the developer to pick the components needed and easily set up an application project to demonstrate an idea or concept. The richer the framework is with respect to components and the more examples it contains, the easier it becomes to find a good starting point with proven code and reduces time to market. Code readability and documentation enables the developer to quickly add the missing pieces to the unique application and showcase the prototype for the next generation product.
Microchip Technology offers two frameworks that address this; the first one is MPLAB® X Code Configurator, MCC for short. It was originally developed for the PIC architecture and in the latter years, AVR support has also been added. MCC is a free, graphical code generation environment that generates seamless, easy-to-understand C code to be inserted into your project. MCC is incorporated into both the downloadable MPLAB X Integrated Development Environment (IDE) and the cloud-based MPLAB Xpress IDE. MCC can be used to jumpstart your next design. It allows you to generate easily modifiable, production-ready application code for the broad portfolio of PIC MCUs in a few easy steps.
When you have created or opened a project inside the IDE, the MCC allows you to easily select what drivers and software that need to be added to your device with a click of a button. Ranging from serial communication such as UART, I2C and SPI to USB and analog as well as GPIO, interrupts and the like. In addition, there is a wide range of drivers for Mikroe Click™ Boards. These boards have a connection header commonly deployed on Microchip MCU development boards that allow the developer to extend the capabilities of the kit with i.e. sensors, human-machine interface, actuators and communication. Drivers for such boards are available in MCC by simply selecting them. When the user selection is complete, code is generated for your microcontroller and setup and provides the full platform needed to start embedded development for your application. Detailed register and datasheet functionality are presented in C code with the easy to use on-screen configuration tool setting the communication pins, transfer speeds and other configurations directly on the screen.
The other framework is called Atmel START. START helps you to get started with AVR microcontroller development. It allows you to select MCU, configure software components, drivers, middleware, and example projects to tailor your embedded application in a usable and optimized manner. Once you are ready you can download the generated code project and open it in Atmel Studio or another third-party development tool.
Atmel START is an innovative online tool for intuitive, graphical configuration of embedded software projects. It allows you to select and configure drivers such as UART, I2C and SPI. In addition, the configuration of middleware running on these drivers is supported out of the box with wireless stack, USB and communication protocols as well as graphic and security library services. On top of this, there is a series of complete example projects, specifically tailored to the needs of your application. These use building blocks and run a specific application to demonstrate a wide range of use cases. The configuration stage lets you review dependencies between software components, conflicts and hardware constraints. In the case of a conflict, Atmel START will automatically suggest solutions that fit your specific setup.
With graphical pin-mux and clock and pin multiplexing configuration, you can easily match your software and drivers with your own hardware layout. The tool also provides automated assistance for retargeting projects and applications for different devices. Getting that sample code to run on your board has never been easier.
Atmel START is an online tool; no installation is required. It can be run standalone or from Atmel Studio. When your configuration is complete, you can download it for use together with your preferred integrated development environment (IDE), including Atmel Studio, Keil or IAR, and continue your development. If you later need to change the configuration you can load it in Atmel START, reconfigure and continue where you left off.
Atmel START is based on the latest generation of the Advanced Software Framework, ASFv4. The driver layer in ASFv4 has been re-architected for better performance and reduced code size. Care has been taken to make sure that code generated by Atmel START is readable, as well as easy to navigate and extend. Try START today at https://start.atmel.com/
With START you can:
- Get help selecting an MCU based on both software and hardware requirements
- Find and develop examples for your board
- Configure drivers, middleware, and example projects
- Get help with setting up pinout versions
- Configure system clock settings