Silicon ChipMikroElektronika EasyPIC v7 Development Board - April 2012 SILICON CHIP
  1. Outer Front Cover
  2. Contents
  3. Publisher's Letter: Induction motor speed controller an intriguing design exercise
  4. Project: 1.5kW Induction Motor Speed Controller, Pt.1 by Andrew Levido
  5. Project: SoftStarter: Taming The Surge Current Menace by Nicholas Vinen
  6. Project: A 6-Decade Resistance Substitution Box by Jim Rowe
  7. Review: MikroElektronika EasyPIC v7 Development Board by Nicholas Vinen
  8. Project: Ultra-LD Mk.3 135W/Channel Stereo Amplifier, Pt.2 by Greg Swain
  9. Vintage Radio: Philips 196A 4-valve portable receiver by Rodney Champness
  10. PartShop
  11. Order Form
  12. Advertising Index
  13. Outer Back Cover

This is only a preview of the April 2012 issue of Silicon Chip.

You can view 24 of the 96 pages in the full issue, including the advertisments.

For full access, purchase the issue for $10.00 or subscribe for access to the latest issues.

Items relevant to "1.5kW Induction Motor Speed Controller, Pt.1":
  • 1.5kW Induction Motor Speed Controller PCB [10105122] (AUD $35.00)
  • dsPIC33FJ64MC802-E/SP programmed for the 1.5kW Induction Motor Speed Controller [1010512B.HEX] (Programmed Microcontroller, AUD $25.00)
  • SL32 10015 NTC thermistor (Component, AUD $7.00)
  • Firmware for 1.5kW Induction Motor Speed Controller [1010512B.HEX] (Software, Free)
  • 1.5kW Induction Motor Speed Controller panel artwork and heatsink drilling template (PDF download) (Free)
Articles in this series:
  • 1.5kW Induction Motor Speed Controller, Pt.1 (April 2012)
  • 1.5kW Induction Motor Speed Controller, Pt.1 (April 2012)
  • 1.5kW Induction Motor Speed Controller, Pt.2 (May 2012)
  • 1.5kW Induction Motor Speed Controller, Pt.2 (May 2012)
Items relevant to "SoftStarter: Taming The Surge Current Menace":
  • Soft Start Surge Suppressor PCB [10104121] (AUD $5.00)
  • SL32 10015 NTC thermistor (Component, AUD $7.00)
  • Soft Start Surge Suppressor PCB pattern (PDF download) [10104121] (Free)
Items relevant to "A 6-Decade Resistance Substitution Box":
  • Resistance Decade Box PCB [04104121] (AUD $12.50)
  • Resistance Decade Box panel/lid [04104122] (PCB, AUD $15.00)
  • Resistance Decade Box PCB pattern (PDF download) [04104121] (Free)
  • Resistance Decade Box panel artwork (PDF download) (Free)
Items relevant to "Ultra-LD Mk.3 135W/Channel Stereo Amplifier, Pt.2":
  • Ultra-LD Mk3 200W Amplifier Module PCB [01107111] (AUD $15.00)
  • Input Switching Module PCB for the Low Noise Preamplifier [01111112] (AUD $15.00)
  • Input Selection Pushbutton PCB for the Low Noise Preamplifier [01111113] (AUD $5.00)
  • Ultra-LD Mk3/Mk4 Amplifier Power Supply PCB [01109111] (AUD $15.00)
  • Preamp & Remote Volume Control PCB for the Ultra-LD Mk3 [01111111] (AUD $30.00)
  • Ultra-LD Mk.3 Power Supply PCB pattern (PDF download) [01109111] (Free)
  • Ultra-LD Mk.3 Amplifier PCB pattern (PDF download) [01107111] (Free)
Articles in this series:
  • Ultra-LD Mk.3 135W/Channel Stereo Amplifier, Pt.1 (March 2012)
  • Ultra-LD Mk.3 135W/Channel Stereo Amplifier, Pt.1 (March 2012)
  • Ultra-LD Mk.3 135W/Channel Stereo Amplifier, Pt.2 (April 2012)
  • Ultra-LD Mk.3 135W/Channel Stereo Amplifier, Pt.2 (April 2012)
  • Ultra-LD Mk.3 135W/Channel Stereo Amplifier, Pt.3 (May 2012)
  • Ultra-LD Mk.3 135W/Channel Stereo Amplifier, Pt.3 (May 2012)

Purchase a printed copy of this issue for $10.00.

MikroElektronika EasyPIC v7 Review by NICHOLAS VINEN This PIC development board provides an easy way to program and debug 8-bit PIC micros. It can be used with C, Pascal and BASIC programming languages. The EasyPIC has pushbuttons, LEDs, USB ports and various other devices on-board while a variety of add-on modules such as LCDs, memory cards and network interfaces can plugged in for easy prototyping. T HIS PRODUCT is a large, solid PCB (265 x 220 x 2.5mm) populated with a variety of DIP sockets and other components including pushbuttons, headers, a power supply and a USB PIC programmer/debugger. Its purpose is to make building, programming and debugging prototype gear based around an 8-bit PIC microcontroller quick and as simple as possible. It supports virtually all of the 8-bit PIC microcontrollers including the 42  Silicon Chip PIC10, PIC12, PIC16 and PIC18(F/ LF/K) series. It is supplied with a 40pin PIC18F45K22 but you can plug in whichever micro you prefer; it’s just a matter of flipping a few DIP switches and swapping a couple of shorting blocks to connect the micro to your PC and begin working with it. Besides the convenience of all the pin headers, pre-wired buttons, LEDs and ease of adding accessories, one of the great advantages of the EasyPIC is the way it ties in with MikroElektronika’s other hardware and software products, including the included MikroICD in-circuit programmer/debugger (supplied) and their suite of compilers which includes C, Pascal and BASIC. The compiler, debugger and programmer all work together in an integrated development environment (IDE). There are a large variety of accessory boards available too. It has a number of on-board peripherals, including RSsiliconchip.com.au This photo shows some of the many accessory boards which can be plugged into the EasyPIC v7. Clockwise from top left are a 16x2 alphanumeric LCD, MMC/SD memory card board, Ethernet interface board, stepper motor driver, realtime clock, 3-axis accelerometer and a USB-to-serial converter board. Three are connected to the EasyPIC via short ribbon cables while the rest plug straight into one of the on-board headers. 232 and USB UARTs (universal asynchronous receiver/transmitter), an I2C EEPROM, a 4-digit 7-segment LED display and piezo buzzer. But there is also provision for alphanumeric and graphic LCDs with an optional touchscreen interface, SD memory card, Ethernet networking, a stepper motor driver, a real time clock and more. These add-on boards simply plug in and sample software is provided to interface with them. Some of these add-on boards plug into the PORT headers which connect directly to eight of the micro’s pins (and also have power supply connections) while others plug into one of the two “MikroBUS” headers which provide a standardised way to connect peripherals to a variety of micros. More on the ports later. Mounting holes are provided at the corners so you can fit spacers or feet. As you can see from the photo, everything is clearly labelled on the white silk-screened overlay. The board is laid out neatly so you can find the header/ button/LED you want without having to scan around and pretty much all the pin connections are configured using DIP switches or jumper shunts. All in all, it’s a well-thought-out piece of kit and considering what you get, the price is quite reasonable (more on that later). Programming and debugging Many other development environsiliconchip.com.au ments provide you with only the C and assembly languages, which are great for advanced users but present a steep learning curve for beginners. BASIC is the easiest to learn but most limited while Pascal is closer to C in terms of capability but with an easierto-learn syntax. We suggest that anybody serious about embedded development should ultimately learn C (and perhaps assembly language too) but it’s a lot easier to get your head around those languages if you have already absorbed programming concepts while using BASIC or Pascal. Software The CD which comes with the EasyPIC contains documentation and the software you need to use the on-board programmer module but it also has demo versions of all three compilers (or they can be downloaded from the MikroElektronika website). The demo versions allow you to write programs that use up to 2KB of flash. Beyond that, you need to purchase the full compiler software. The included mikroProg programmer/debugger (which is permanently soldered to the EasyPIC PCB) can work in conjunction with the compiler IDE, to download new code whenever you finish compiling it. Alternatively, you can use the supplied stand-alone programming software to upload your HEX file (perhaps generated with a different compiler or development environment). But the debugging functions must be used in conjunction with the development environment. So you can write or modify your software, send it to the PIC with a key press and if it doesn’t work properly, immediately jump into debugging mode. This usually involves setting a “breakpoint” at a particular line of code and the micro will freeze before it processes that particular statement. You can then examine the state of your variables and step through the program line-by-line, observing how variables and output pins change as you do (say, using the EasyPIC’s onboard LEDs) until you figure out what’s going wrong and fix it. By the way, you can also buy a standalone mikroProg which is capable of programming and debugging any PIC, up to and including the PIC32 range, without needing to be re-flashed. Features The EasyPIC board can supply either 3.3V or 5V to the micro, set using jumpers. It can be powered from a variety of sources such as USB, a bench supply or an AC or DC plugpack. For programming and debugging, you simply connect the supplied USB cable to the board and your PC. If you want to run the micro from a crystal rather than its internal oscillator, a socket is provided, along with a suitable crystal. There is also a socket April 2012  43 Cost & Availability The EasyPIC v7 is available from Mostyn Enterprises, NSW, Australia. The price is $221.00, including GST & express post within Australia. Contact them on (02) 9834 1299 or visit www.mostynent.com Mostyn can also supply some of the more popular accessory boards. These include: Storage: Micro SD, MMC, Compact Flash, EEPROM Communications: Serial Ethernet, Easy WiFi, WiFi Proto, Easy BlueTooth, CAN, RS485, MAX3232, USB UART/UART2, RFID Reader Display: Graphics LCD, TFT LCD, Alphanumeric LCD 2 x 16, COG 2 x 16 Sensors: 3-Axis Accelerometer, Light-to-Frequency 1 & 2, Motion Sensor, SHT1X Temperature & Humidity I/O: DAC, Easy DAC, ADC Proto, 4 x 4 Keypad, Relay 4, Port Expander, SmartMP3, Microphone Amplifier, Audio Amplifier Miscellaneous: Bipolar Stepper Motor, Real Time Clock Contact Mostyn for prices on the accesory boards. for a second crystal for those micros with two oscillator circuits, eg, for use as a real-time clock. To connect up the various micro pins to external circuitry, you use the pin headers on the righthand side of the PCB. These are grouped in sets of eight pins by port letter (PORTA, PORTB, etc) so you don’t have to refer to the data sheet to figure out where to connect the rest of your circuit. There are two headers for each port, wired in parallel. This can be useful if you plug in one of the add-on boards which doesn’t use all the pins in the port; the other pins can then be accessed via the second header. They also provide solder pads for semipermanent connections or to allow probing with a scope or multimeter. Each port has eight pushbuttons, one for each pin; PORTE only has four since that’s the most that any supported micro uses. The pushbuttons can be set to pull the corresponding pin either high or low; this is set for all pushbuttons at once with a single shorting block. There is also an 8-way, 3-state DIP switch for each port which allows you to enable a 4.7kΩ pull-up or pull-down resistor for each pin. The pins of each port are also connected to a row of red LEDs (via series current-limiting resistor) and these can be used to view the state of each digital output. They are enabled on a port-by-port basis using DIP switches – ie, all eight for a given port are on or off. Glancing at the LEDs to see the pin states is a lot quicker than probing around with a multimeter! 44  Silicon Chip Then there are a couple of small pots which can be used to drive the voltage level of one of several analog input pins on the micro. You use DIP switches to select which pins are connected to the pot wiper(s) and can then vary the voltage fed to the micro’s internal analog-to-digital converter (ADC). In addition to the type-B USB connectors for the in-circuit programmer/ debugger and the USB UART (mentioned earlier), there is a third socket for those micros which have on-board USB controllers, so you can test and debug those functions too. There are also sockets for connecting analog or digital temperature sensors. Virtually all of the on-board peripherals can be connected or disconnected from the micro pins using banks of DIP switches. This way, you aren’t tying up pins with peripherals you do not need for your application. In some cases, a peripheral can only connect to a certain set of micro pins while for others (eg, the UARTs), you have many options for which pins to connect them to. Accessories As mentioned earlier, a number of add-on boards are available. Some are designed to suit the EasyPIC v7 specifically while others are general purpose boards which can be plugged into the various pin headers. In fact, these accessories can be used with breadboards and custom PCBs too; all you need is a pin header with the appropriate connections to a PIC. A list of accessories available from the Australian distributor (Mostyn Enterprises) is provided at the end of this article. MikroElektronika make over 100 different add-on boards, most of which are compatible with the EasyPIC v7. We think the most useful and popular accessories will be the LCD modules, Ethernet interface, MMC/ SD card board, accelerometer and the stepper motor driver. Just how many accessory boards you can connect to the EasyPIC v7 will vary, depending on how many pins each of those accessories uses and which on-board peripherals you have enabled. You probably won’t be able to plug in more than four, as these will then occupy most of the PORTA-PORTD pins. Some add-ons plug into the port pin headers while others connect to one of the two MikroBUS headers but either way, they occupy some of the limited number of microcontroller I/O pins. Instruction manual The instructions and software provided with the EasyPIC are top notch. The manual is large, full of great photos and clear diagrams. It explains all the features in detail, one at a time so that you can easily see how the various controls and connectors are wired up to the micro and power supply. In fact we would say that the instructions provided are among the best we have ever seen. Conclusion This is a good board for people who want to get into programming PICs or for those who develop a lot of different microcontroller-based designs and want to be able to engage in rapid prototyping. While you don’t need an EasyPIC board or MikroICD to use the MikroElektronika compilers and development environment, they go together particularly well. Most EasyPIC users will eventually design and build a custom board for their project. The software can be developed on the EasyPIC v7, where connections can easily be rerouted and probed (and you can even change PICs if you find the one you chose originally won’t do the job). Once the software and hardware is all working properly, the custom board can be designed and the software SC transferred across. siliconchip.com.au