In addition to supporting the flash that resides in many different microcontrollers, PEmicro supports flash connected to an MCU via the SPI, I2C, and Address/Data bus interfaces. Depending on how the flash device is connected to the MCU, the programming algorithm may need to be set up to properly configure the external address, data, and bus control pins of the MCU.
In the case of flash memories connected to the address/data bus of an MCU, it can be difficult to understand when the chip select and/or other control pins are configured properly. Most often the issue is that the external flash memory Chip Enable (~CE), Output Enable (~OE), or Write Enable (WE) signals are not being driven properly. This blog post describes a way to look at these three signals to determine if they are being driven properly.
We have been developing some exciting technologies that can save time and money during both product development and product manufacturing and will be demonstrating these powerful new features for our GDB Server for ARM devices and our CYCLONE FX programmers:
There comes a time when an embedded application becomes complex enough that it requires an operating system. This may be because of a need for rich driver libraries, or a sophisticated task scheduling engine. In either case, a developer needs an equally sophisticated debugger to provide invaluable context information of their application. To that end, PEmicro introduced OS-aware debugging in its GDB Server for ARM devices. Initial support is available now for FreeRTOS, with further OS modules to be developed. PEmicro's GDB Server for ARM devices is available for download at no cost and works with PEmicro Multilink, Cyclone, and OpenSDA hardware interfaces.
Today a number of industry leading companies in the embedded tools industry announce a new milestone in embedded system development - the Embedded Tools Alliance (ETA).
The embedded developers' toolbox is complex and involves many components: IDE (Integrated Development Environment), compilers, debuggers, trace tools, test tools, debug and flash programming hardware, target operating system, target middleware and training. Choosing the right components is enormously complex and prompts a huge number of questions, each of which takes time to answer, and also poses risk to the project's success:
Do they work on the same host OS? Which versions need to be used? How should they be configured? Do they interoperate correctly? Do they work together to produce an optimal result? Have they been validated? Has the combination of these components been validated or certified?
The embedded marketplace is fragmented with a huge number of suppliers. Some large vertically integrated companies try to offer every component required. This approach stagnates innovation, provides limited choice, and doesn't allow customers to choose best-in-class solutions to address their project's specific needs.
The Embedded Tools Alliance helps customers select the best components from a number of different suppliers, safe in the knowledge that the individual components are of the highest quality, proven to work together, and do exactly what's required so the customer can concentrate on their development work rather than fighting with a disparate set of legacy tools and environments.
The ability to view variables and memory while a target ARM device is running has been added to PEmicro’s GDB Server Plug-in for ARM devices. This Eclipse plugin can be installed in any Eclipse-based IDE and supports the debug of ARM microcontrollers via PEmicro’s Multilink, Cyclone, and OpenSDA debug hardware. The “Real Time Expressions” view, which is part of the plugin, is similar to the normal expressions view, except that it works while the part is running.
PEmicro’s GDB server can be installed directly into an Eclipse based IDE from an update site on PEmicro’s website. This adds the ability to debug via PEmicro’s Multilink, Cyclone, and OpenSDA hardware interfaces via the standard GDB debugger. Features include flash programming, breakpoints, watchpoints, trim, memory preservation, real-time variables, semi-hosting, and more. PEmicro periodically updates the plugins on its website with new device support, new features, and bug fixes.
The Cyclone FX has the capability to automatically select and launch a programming image based upon a scanned barcode. This can generate an error if more than one image corresponds to the barcode or no images correspond to the barcode. The CYCLONE FX includes a way to quickly gain insight into the issue. A log file is created every time the barcode scanner operates and it details the scanned barcode as well as the analysis process used to select the appropriate programming image.
Different targets require a different power schemes that depend on the design of the target board, target voltages, and even the device architecture. PEmicro has designed their CYCLONE and CYCLONE FX to optionally power a target before, during, and after programming. Power can be sourced at many voltage levels from the Cyclone itself or sourced by an external power supply and switched by the Cyclone.
The CYCLONE and CYCLONE FX programmers from PEmicro have large 4.3” touchscreens which allow the user to see the Cyclone’s current status, select programming images, configure settings, and more. However, sometimes the Cyclone may be either at a remote location or physically inaccessible. For example, Cyclone programmers are often mounted within enclosed test fixtures and sometimes even have the screens physically removed to save space. In any of these cases, the touchscreen can also be accessed remotely, via Ethernet and USB.
P&E has just released pipelined programming algorithms for a variety of Power Architecture devices. These new pipelined algorithms can be huge time-savers for those who program Power Architecture devices either in development or on their manufacturing lines, as they result in 50% to 100% faster programming times than when using non-pipelined algorithms. These significant programming performance improvements are available for the following Power Architecture device families:
Automatic selection and launch of a specific flash programming image based on a scanned barcode can improve the speed and accuracy of production programming, especially when there is a varied product mix being programmed. Barcode scanning improves accuracy by making the process of selecting a programming image fast, automatic, and less vulnerable to user error. P&E's CYCLONE FX programmers have the ability to use a barcode scanner, connected via the Cyclone's host USB port, to initiate programming. When a barcode is scanned, the Cyclone selects a specific programming image based on the barcode and programs the target board accordingly.