Programmer and choosing MCU - Page 1
Forum section: electronics / general

author: mmFooD
author_rank: Contributor
timestamp: August 17, 2017, 04:01:04 pm
content: I am doing some programming of AVR's mostly atmega328 and attiny85 using the arduino bootloader and arduino-as-isp. But I think it is time to cut the training wheels and start using a dedicated programmer and program using C++ code on a AVR and avrdude. The question is, what programmer should I get? And do they all work with GNU/Linux and avrdude?I will mostly be programming AVR's but I keep reading that ARM is where things are heading so who knows? Is it worth getting the ICE 2 or the dragon or should I just settle for the AVR-ISP MkIIIf I get the MkII I thought I'd build something inspired by.Now that Microchip has aquired Atmel, will they be using the same programmer in the future? What do you think?

author: Mr. Scram
author_rank: Super Contributor
timestamp: August 17, 2017, 04:13:47 pm
content: It's nice to have debugging, but I feel the ICE mkII is quite expensive, considering an STM programmer is just 20 bucks. Then again, if you value your time in any way, spending more for a good tool is definitely worth it.Getting into AVR is not a waste of time, considering it is a good way to learn the basics and build some cool projects to boot.

author: stmdude
author_rank: Frequent Contributor
timestamp: August 17, 2017, 04:49:30 pm
content: I'm not an AVR guy at all, but should't something like this work for you?https://www.electrokit.com/avrisp500-stk500-kompatibel-usbprogrammerare.45622Or, if you're in Malmo (or can get there), you can have one of thesehttps://www.electrokit.com/avrispmk2.49399that I'm not using.

author: westfw
author_rank: Super Contributor
timestamp: August 18, 2017, 07:31:56 am
content: Current programmer/debugger is "Atmel ICE." Does both the ARM and AVR chips of modern vintage (but, I think not parallel programming or HV serial programming?) Occasionally goes on sale.The "Xplained Mini" boards have a built-in debugger/programmer, and are quite a bargain (~$10 each)

author: danadak
author_rank: Super Contributor
timestamp: August 18, 2017, 01:35:24 pm
content: Consider the PSOC ARM families, PSOC 4 and 5LP and very soon PSOC 6.You get (part dependent, 5LP family all of th below)1) ARM Core, M0 or M3, in case of POSOC 6 dual core M4 & M02) DSP engine, filter wizard3) UDB blocks, create custom components via schematic capture or verilog or UDB editor4) 20 bit DelSig and / or 12 but SAR A/Ds5) Onboard reference6) Free tools7) Boards ranging from $ 10, $ 25, and others, all with debug/program via USB, some with arduino footprintVideo training library robust, forums very active9) See attached component library, drag and drop onto schematic, route to pins or internal. See attached.Components are onchip resources. Complete with code to do simple C calls to manipulate.10) Start at the very basics and learn capability as you go11) Lots of analog, OpAmps, Mixer, VDACs, IDACs, TIA, Comparator.12) Tons of example code right in tool, can use to learn or as basis for a new projectRegards, Dana.

author: legacy
author_rank: Super Contributor
timestamp: August 18, 2017, 02:35:28 pm
content: I might still have in my lab a Dragon programmer with a couple of socket to program AVR chips.I don't happen to need it.Paid 50 euro, I might sell for 20.

author: Mr. Scram
author_rank: Super Contributor
timestamp: August 18, 2017, 05:56:44 pm
content: Quote from: danadak on August 18, 2017, 01:35:24 pmI guess these don't have the benefit of having an easy introduction to the platform, like AVR and STM32 have in the form of the Arduino IDE?What are those UDB blocks exactly? I understand it is programmable logic that can be added to the MCU? How complex can that custom logic be?

author: georges80
author_rank: Frequent Contributor
timestamp: August 18, 2017, 06:08:07 pm
content: Unless the Dragon board has been upgraded, it has some serious flaws in the interface circuitry and is easy to ESD damage/destroyed.The one advantage of the AVR family is the embedded EEPROM memory. For smallish projects that require some non-volatile storage for that is written 'often enough' the eeprom is much easier to deal with than using emulated eeprom firmware (using flash memory).I've used the Atmel ICE ($100, seems to have gone up in price from when I bought it) is robust and I've never had any issues with it. I also have at Atmel ONE (bought when it was on sale for $150 or something like that) - it gets used occasionally, but the ICE works good enough. Either gives you the ability to debug (via debugwire) which can be handy versus just a 'programmer'.For STM I have the stlink/v2 which is cheap and works well. One of the STM discovery boards is also a cheap way to get a programmer and eval board is one. Stlink/v2 gives you debug capability as well as programming of course - very cost effective.I've never used arduino stuff since I started with the AVR family before arduino existed. Won't use it now since it doesn't provide any 'benefits' if one already knows how to configure/access ports directly.In the end, the time it takes you to learn a new family, AVR, PSOC, STM, whatever, will be your real investment versus a $20 or $50 or $100 programmer.I wouldn't use C++ for programming embedded products with these small uC devices. You can go 'bare bones' and use C...cheers,george.

author: legacy
author_rank: Super Contributor
timestamp: August 18, 2017, 09:03:56 pm
content: Quote from: georges80 on August 18, 2017, 06:08:07 pmMy Dragon board was the second release, known to be stronger than the last update.But I can't say if it's true or not, I have used it rarely.Currently I am working on a littleInfineon XMC4500 boardlike the red one in the picture; nothing special, it comes with a lot of IO-pins, a lot of horsepower thanks to super fast ARM CPU, a built-in lan, and Cordic hw cop. The last one is the most interesting feature for me because I am playing with a GPS and the board calculates the distance between two points using a Earth curvature model, and the cop offers acceleration for lot of trigonometric functions.Sin, Cos, tan, ....It's a good board, a bit expensive (paid 45 euro) but supported by Keil as toolchain and debugger but libraries are poor ...For better libraries one should go to RAD (rapid application development) tool likeDave(by Infineon).But I am not a fan of those tools, anyway

author: danadak
author_rank: Super Contributor
timestamp: August 18, 2017, 11:07:56 pm
content: QuoteAbsolutely easy. You only tackle the basic tool, which is GUI drag and drop, and work your way into advancedcapabilities as you learn. And all guided by simple projects and/or videos.The UDBs are fairly straightforward architecture. You can use via schematic editor (dont get into weeds), UDB editor, and / or UDB tool (you are in the weeds)UDB Editor -https://www.youtube.com/results?search_query=udb+editorhttp://www.cypress.com/training/psoc-creator-video-tutorial-series-how-use-udb-editorCreating custom components -http://www.cypress.com/training/psoc-video-tutorial-series-how-create-custom-componentsThe basic tool -http://www.cypress.com/products/psoc-creator-integrated-design-environment-ideRemember, UDB design is to cover custom components, in general 95%+ of you design is the predefined componentsyou drag and drop and route onto canvas. You do not have to do UDB edit/mods. See the list I posted prior post.Regards, Dana.

author: danadak
author_rank: Super Contributor
timestamp: August 18, 2017, 11:18:44 pm
content: PlatformPSOC 4 Arduino Footprinthttp://www.cypress.com/documentation/development-kitsboards/cy8ckit-042-psoc-4-pioneer-kitPSOC 5LP basic boardhttp://www.cypress.com/documentation/development-kitsboards/cy8ckit-059-psoc-5lp-prototyping-kit-onboard-programmer-andThe 5LP most advanced part.Regards, Dana.

author: bingo600
author_rank: Super Contributor
timestamp: August 19, 2017, 06:43:45 am
content: Quote from: mmFooD on August 17, 2017, 04:01:04 pmThere is no programmer that supports al MCU's , but for the AVR series the ISP MKII is a good choice.If you are using mostly M328 or other types that does support ISP programming , this one is worth tryinghttp://www.ebay.com/itm/USBASP-USBISP-AVR-Programmer-Adapter-10-Pin-Cable-USB-ATMEGA8-ATMEGA128-Arduino-/310506909410I have used it succesfull on linux w. avrdude. , and it's not going to "blow" the budget.It won't do some of the smaller ATtiny's though, but at that price you could give it a try.I'd get a 10-pin to 6-pin adapter too , this one contains both programmer & converterhttp://www.ebay.com/itm/10-Pin-Convert-to-Standard-6-Pin-Adapter-Board-USBASP-USBISP-AVR-Programmer-USB-/311565595115Here are the convertershttp://www.ebay.com/itm/2pcs-10-Pin-Convert-Standard-6-Pin-Adapter-Board-F-ATMEL-AVRISP-USBASP-STK500-/310635615426/Bingo/Bingo

author: legacy
author_rank: Super Contributor
timestamp: August 19, 2017, 08:50:49 am
content: (when I see all of that arduino-like ... I wish I was a ice creamsellerkidding: I am already learning how to do delicious ice creams)

author: Mr. Scram
author_rank: Super Contributor
timestamp: August 20, 2017, 10:58:09 pm
content: Quote from: danadak on August 18, 2017, 11:07:56 pmI've been looking into these and they seem to be a very interesting. As far as I understand, it's a microcontroller with a CPLD or FPGA part stuck onto it. There appears to be a nice and free toolchain, with an IDE that's derived from, or heavily inspired on, Visual Studio. One downside I see is that custom UDB blocks can only be programmed using Verilog. No VHDL support.What is not quite clear to be is how well supported Cypress microcontrollers are over the years. One of the benefits of dealing with AVR or PIC chips is that designs are still viable years later. I'm also not quite sure whether 'normal' microcontrollers are also available, to prevent having to learn a whole different tool chain when the flexibility is not required and BOM costs is relevant. There does seem to be an FM range, but it looks like Cypress is heavily invested in the PSoC thing and not really looking to sell normal microcontrollers. I do understand that PSoC flexibility is meant to replace the wide range of options in other microprocessor families, but PSoC chips aren't the cheapest option out there.

author: danadak
author_rank: Super Contributor
timestamp: August 21, 2017, 12:32:26 am
content: UDBs can be programmed with just schematic capture or editor (which generatesthe verilog). There is no VHDL support.Unless you tried out one of the VHDL to Verilog converters.As far as long term support, PSOC 1 was introed in 2002, still being manufactured, but every variant,I doubt it. That you confirm with Cypress RSM. Support is a biz decision, if you are the only customerusing 10,000 parts a year, games over. Fab and test costs just do not produce profitability. Thats whyselecting a part should never be done just from a selector guide. Always talk to sales channel of vendorto get a handle on high runners and breadth of customer base for them in their product line.Regards, Dana.