Learning Development Board - Page 1
Forum section: electronics / general

author: timwolf
author_rank: Contributor
timestamp: August 13, 2019, 09:56:54 pm
content: Hello everyone,I'm looking to relearn Micro-Controller programming again, as my Pickit3 kit development board is now dead, I'm looking to buy the Explorer 16/32 from microchip, would anyone be able to recommend development boards for learning MCU coding from microchip, maxim integrated, or STMicroelectronics, thank you.

author: forrestc
author_rank: Unknown
timestamp: August 13, 2019, 10:41:16 pm
content: Quote from: timwolf on August 13, 2019, 09:56:54 pmMicrocontroller programming has become a bit more complex over the years, in that there's a wide variety of options. So it's hard to say 'go buy X' without knowing what area you're interested in.Two thoughts:Arduino is a good starting point if you have little experience, however it sounds like you may want something less like arduino (which hides a lot of complexity behind libraries of varying complexity) and more like 'traditional' microcontroller programming.In the microchip world, I'd recommend that you look at either the PIC16 or PIC18 or AVR families at the low end (8 bit). The PIC processors tend to have more interesting peripherals, and the AVR families tend to have more c-friendly processor cores. Because the processor core itself rarely matters, and because that's what I'm familiar with, I tend toward the PIC cores.On the higher (32 bit end), I'd look at the SAM processors which are ARM core. In particular the SAML21 seems to be a good superset part. The SamD21 is similar, but has a few fewer features since it is a slightly older part. I wouldn't bother with any of the MIPS core processors (PIC32M.....) since they seem to be on the way out.As to what board you want to get...If you want real microchip boards, at the low end I'd probably get a "Curiosity High Pin Count" development board. This comes with a PIC16F18875 which contains many of the newest microchip "Core Independent Peripherals" which allow the microcontroller to do a lot of things without involving the processor. For instance, the ADC can be set up to read a whole bunch of samples and average them all by itself.At the higher end, I'd probably get a ATSAML21-XPRO-B or a ATSAMD21-XPRO . The D21 is cheaper, but the L21 has a few more features, is lower power, and also has some power metering stuff on the board if you want to experiment with low power modes. I'm not sure of your budget so I can't guess which you want.If you're ok with a third party board, The adafruit feather boards actually have a onboard SAMD21, and there are several others out there. Of course all of the Arduino boards have various AVR and SAM processors on them.I'm also a big fan of the MikroE development boards. I have a EasyPIC v7 which I love. I also see there's a new v8 out which looks nice. I should mention that the Microchip curiosity boards, some of the Xplained boards, and the MikroE boards all have 'MikroE click' sockets which allow you to quickly prototype using various peripherals. For example, if you want to add a accelerometer, you just buy an accelerometer click board and then insert it into the socket. There is then a library (typically) which you can load into your program to use it.One final note... Microchip makes XC8 and XC32 compilers. There are free and pro versions. Be aware that the Free compiler is very good and for most applications that's all you need. The only difference is that the Pro compilers include some highly advanced code optimizers which bring the code size down even further. But this is really only important if you run out of program memory - the optimizations included in the free are actually quite good, and my understanding is that the version coming out in the next few weeks even makes this better.Oh I guess I should add a couple of more things... microchip also provides MCC to configure and provide some base libraries for their 8 and 16 bit parts (PIC/AVR) and Harmony v3 for the higher end 32 bit parts. I have production code running based on both of these. Harmony in particular has a bit of a learning curve though.

author: ledtester
author_rank: Super Contributor
timestamp: August 14, 2019, 12:05:48 am
content: The Teensy boards are also quite popular:https://www.pjrc.com/store/index.htmlLearning a microcontroller these days is more about becoming familiar with a tool-chain, software API and libraries. The Arduino IDE and API may be somewhat simplistic and inefficient, but it has the advantage of being supporting by a large number of hardware platforms and an extensive set of community supported libraries.Also, although I have yet to use it, I've heard a lot of good things about the Platform IO IDE:https://platformio.org/platformio-ide

author: granzeier
author_rank: Regular Contributor
timestamp: August 14, 2019, 02:12:20 am
content: This may be a bit below your level, but I have designed a kit, and written a text book, forIntroduction to Microcontrollers. Not to toot my own horn (well, maybe a bit) but the product is in my Tindie store (https://www.tindie.com/products/4257/.) You can see an overview of this, plus how to build your own on a breadboard, athttps://www.instructables.com/id/Learn-About-Microcontrollers/.While this may be too elementary for you, the reason that I mentioned it is that I have a few (limited number) of the blank PC boards. These are good intro-level dev kits, and can be used with Arduino (install the ATtiny2313 board) or with GCC, or WinAVR. I designed these boards, and wrote the book, to encourage people to learn about this field, and am willing to part with one, if you want to fill it with stuff from your junk drawer, or a small order.I see that you are in the USA, and if you would like one, I can part with it, and send it by USPS First Class letter post. If you would like one of the bare boards, send me your address in PM, and I will ship one out to you.

author: MarkF
author_rank: Super Contributor
timestamp: August 14, 2019, 02:32:44 am
content: If you want to stay with PICs, get one of thePICKit3 Clonesfrom eBay and buy the individual ICs instead of a development board.I have been using MPLAB_X and their XC compiliers.

author: techman-001
author_rank: Frequent Contributor
timestamp: August 14, 2019, 03:22:32 am
content: Quote from: timwolf on August 13, 2019, 09:56:54 pmFor STM the STM32L073 Nucleo is great for low power, contains a usb programmer debugger on the board and is about $20. If speed is your need, a stm32f429 will run at 120MHz and also has programming and debugging on board.Plus you'll have all the development software for free.

author: forrestc
author_rank: Unknown
timestamp: August 14, 2019, 04:03:04 am
content: Quote from: MarkF on August 14, 2019, 02:32:44 amThere is little good reason to buy a clone nowadays, especially since a genuine microchip programmer can be had for $15.00 normally, or $7.50 right now with coupon:https://www.microchip.com/Developmenttools/ProductDetails/PG164100

author: MarkF
author_rank: Super Contributor
timestamp: August 14, 2019, 02:06:43 pm
content: Quote from: forrestc on August 14, 2019, 04:03:04 amThe Snap is NOT a PICKit.MPLAB Snap $15 programmer/debugger

author: forrestc
author_rank: Unknown
timestamp: August 14, 2019, 07:55:12 pm
content: Quote from: MarkF on August 14, 2019, 02:06:43 pmNo it is not. I had missed the lack of HVP programming.So, If you are looking at primarily older hardware which needs high voltage programming, then you'll need either a pickit or an icd or a realice. One should note that Microchip has stated that they won't be adding support for newer parts to the older "gen 3" programming hardware, so a PicKit3 or clone will work for those older parts but not some of the newest and this will get worse over time.The part support for the snap seems to include everything released in the last 10ish years, including AVR and SAM processor support. So if you're working with modern processors it seems to be a fairly decent choice, especially for the price. It combined with a PicKit3 or a clone would be a good mix.Personally, my goto programmer anymore is an ICD4, but that's a bit pricey for the hobby market.