Your advise regarding microcontrollers for small projects.

Thread Starter

Ciro Bruno

Joined Feb 18, 2018
20
Dear colleagues, good Afternoon.

In the past (20+ years ago) I've been doing small projects with 8051, Z80 and some PICs. Now I'm coming back to microcontrollers projects and I'd like to ask you some advises. I'm about to choose a platform to work (microcontroller family, programming interface and an IDE).

I've been looking around and I've been finding some hard time here and there. Would you help me with your comments?

1) Microchip PIC would be my favorite, but:
1.1) the IDE is now too big and complicated. I've been trying, but unlike the older MPLabs, the 10th version requires so much "bureaucracy" to open a programming window! I guess I'll always need to watch YouTube tutorials every new project I start!
1.2) Microchip C compillers have no free version anymore! Is it true? If it is, I aught to give it up with Microchip.
1.3) Which hardware programming and debugging interface would be enough for small single processors projects?

2) (Microchip) Atmel AVR:
2.1) No Mac OS Version IDE! Is it true? I'm afraid I'll have to install it in virtual machine.
2.2) Does it offer C/C++ free programming compiller?
2.3) Which hardware programming and debugging interface would be enough for small single processors projects?

3) Texas Instruments?
4) Zilog?
5) NXP?

A very important characteristic is to find DIP and PDIP versions available.

Thank you.
Regards,
Ciro.
 
Last edited:

Thread Starter

Ciro Bruno

Joined Feb 18, 2018
20
Yes, that's what I've been doing. But I've got some remarks.

The Arduino IDE is quite poor. There are no debugging tools like registers and variables lookups, runtime breaking points and single steps, etc.

The hardware as well, despite of the standard pins positioning, sometimes it is too big to be socketed onto another PCB.

I'm really thinking about DIP microcontrollers to develop in protoboards and to ease further PCB layout.

Thank you!
 

Thread Starter

Ciro Bruno

Joined Feb 18, 2018
20
And, I think, they still make dip version of atmega328 that Arduino uses on their boards

eBay has 20% off today....
And, I think, they still make dip version of atmega328 that Arduino uses on their boards

eBay has 20% off today....

Yes, I've been thinking about starting like that. I guess it's possible to program it via ICSP. Isn't it?

Probably it'd work installing an Arduino bootloader and then programming it via Arduino IDE. Does it sound feasible?

Thank you. Regards.
 

MrChips

Joined Oct 2, 2009
30,707
Everyone has biases and preferences
Disclosure, I am not a fan of Arduino nor Microchip PIC.

There are lots to choose from. Here are my current MCUs that I am using:

Atmel AVR - Atmel Studio 7 (Atmel is now owned by Microchip)
TI MSP430 - IAR Embedded Workbench (code limited version is free)

For more advanced projects:
STM32F - Atollic TrueSTUDIO
 

Thread Starter

Ciro Bruno

Joined Feb 18, 2018
20
Everyone has biases and preferences
Disclosure, I am not a fan of Arduino nor Microchip PIC.

There are lots to choose from. Here are my current MCUs that I am using:

Atmel AVR - Atmel Studio 7 (Atmel is now owned by Microchip)
TI MSP430 - IAR Embedded Workbench (code limited version is free)

For more advanced projects:
STM32F - Atollic TrueSTUDIO
Very good as well! TI is a reference for for me since the 70's.

I've been finding some difficulties with TI web page layout. I haven't found a product line overview yet. Would you recommend an entry line? No need of low power or wireless communication.

Thank you. Regards
 

AlbertHall

Joined Jun 4, 2014
12,345
Good to know.

But I've already been to this page and I found nothing about free licensing, except 60-day trial.

Please, would you help me to find it?

Thank you. Regards
Download from that page and it's free. The paid for 'pro' version has better optimisation (though many believe the free version deliberately 'de-optimises' to make the 'pro' version look better. The free version is perfectly useable.
 

danadak

Joined Mar 10, 2018
4,057
You could use a PSOC, it has ability using GUI tool to drag and
drop gates, flops, or more MSI like components, onto design canvas
and wire up to its pins, eg. its routable. Also analog, opamps, comparators,
onchip Vref, A/D 12 bit SAR or 20 bit delsig, digital filter, state machine wizard,
PWM, Timers, Counters, Quadec, COM, ARM core(s)......

Tool, "Creator" is free, compiler free, two boards come to mind, low end PSOC 4, and high end PSOC 5LP. Dual core is PSOC 6, but start with 4 or 5LP.

http://www.cypress.com/products/psoc-creator-integrated-design-environment-ide

http://www.cypress.com/documentation/development-kitsboards/cy8ckit-042-psoc-4-pioneer-kit $30
http://www.cypress.com/documentation/development-kitsboards/psoc-4-cy8ckit-049-4xxx-prototyping-kits $4
http://www.cypress.com/documentatio...oc-5lp-prototyping-kit-onboard-programmer-and $ 10

Attached is a component list (a component is a design element inside psoc, a resource) that you
can drag and drop onto canvas. It applies to high end part PSOC 5LP, PSOC 4 has a subset of
these resources.

PSOC 101 video series, lessons 1 - 16.....First lessons drag a little but are short.

http://www.cypress.com/video-library/PSoC/psoc-101-introduction-psoc-101/387726

Regards, Dana.
 

Attachments

Last edited:

GoExtreme

Joined Mar 4, 2018
52
Check out EFM8, free ide, well priced dev boards with demos. 12bit adc, i2c, spi, uart, usb, 100mA 3.3V regulator and capacitive touch options.
 

shteii01

Joined Feb 19, 2010
4,644
Yes, I've been thinking about starting like that. I guess it's possible to program it via ICSP. Isn't it?

Probably it'd work installing an Arduino bootloader and then programming it via Arduino IDE. Does it sound feasible?

Thank you. Regards.
I was referring to this: https://www.ebay.com/itm/Arduino-UN...432166?hash=item1ee2767226:g:pDYAAOSw0dha8vE4
This Uno board (5V i/o) uses dip ic. ic already has bootloader. you get the board and you can start "doing stuff". you can use this board to program other ic. later, if you want to build custom board, you can pull the dip ic, put it on breadboard, and build whatever custom board you want around this pulled ic.

The Arduino bootloader is the chicken-egg problem. You need a programmer to load bootloader to empty atmega328. The programmer in this case can be either another Arduino board or specially built programmer device. Most people just buy cheap Chinese Arduino Uno boards and use them to program other chips.
 

olphart

Joined Sep 22, 2012
114
Howdy, I'm VERY Biased, having written code for the Motorola / Freescale / NXP series of 9(S)08 uC since '99.
My take: if you can fit the project into the CodeWarrior V6 environment DO IT.
Otherwise, the CW V10 (Eclipse) version is ok, but is Draconian in usage.
Ok, I'm an old school coder who Hates an IDE that tries to out guess what I want (FT).
Most "younger" (I'm 65) coders will probably feel at home in the Eclipse IDE environment.
I've used the Eclipse IDE in a Java development situ and Loved it.

BUT, compared to the simple V6, it's a Boatload of overhead.
Unfortunately, NXP is orphaning the V6 IDE subject chips (PA4 is a prime example).

Should mention, I write assembler, not-relocatable... just straight executable .ASM
So many features that would well benefit C (etc) just get in my way. (oh well) <<<)))
 

danadak

Joined Mar 10, 2018
4,057
I worked as an FAE in new England, focused on low end Freescale. Very much liked
Codewarrior, and processor expert and the architecture of the S08 parts. Felt they were
best in class.

I started handling Cypress PSOC, and found tool not as good as Codewarrior, at the time,
2008, but subsequently now spend most of my time on PSOC because of FPGA like fabric,
DSP, routable internal and external, processor expert like set of APIs associated with each
internal component, ability to create custom components, either with schematic capture or
verilog. So much analog, 12 bit SAR, 20 bit DelSig, opamps, comparators, onboard Vref,
muxes, DACs.....

And tool now very competitive and for all that it does, timing, routing....

I still recommend Freescale, Coldfire on higher end parts, LAN, full graphics controller.
They are a class act.

Regards, Dana.
 
Last edited:

Thread Starter

Ciro Bruno

Joined Feb 18, 2018
20
I was referring to this: https://www.ebay.com/itm/Arduino-UN...432166?hash=item1ee2767226:g:pDYAAOSw0dha8vE4
This Uno board (5V i/o) uses dip ic. ic already has bootloader. you get the board and you can start "doing stuff". you can use this board to program other ic. later, if you want to build custom board, you can pull the dip ic, put it on breadboard, and build whatever custom board you want around this pulled ic.

The Arduino bootloader is the chicken-egg problem. You need a programmer to load bootloader to empty atmega328. The programmer in this case can be either another Arduino board or specially built programmer device. Most people just buy cheap Chinese Arduino Uno boards and use them to program other chips.
Good. As far as I understood, using the Arduino board itself as a programmer would be like https://www.arduino.cc/en/Tutorial/ArduinoISP.

And I've been thinking about using an AVR ISP programmer, such as AVRISP mkII. In this case, I wouldn't need any Arduino Uno board to flash a Atmega328 (I hope it works).
 

Thread Starter

Ciro Bruno

Joined Feb 18, 2018
20
Download from that page and it's free. The paid for 'pro' version has better optimisation (though many believe the free version deliberately 'de-optimises' to make the 'pro' version look better. The free version is perfectly useable.
This is a very good option. I'm having two weeks vacations next month. I'm gonna free some space in HD and dedicate some time to learn (again) how to use MPLabX. I hope Microchip has included some ease of use into the IDE since the last time I've tried it.

Thank you very much.
 

Thread Starter

Ciro Bruno

Joined Feb 18, 2018
20
You could use a PSOC, it has ability using GUI tool to drag and
drop gates, flops, or more MSI like components, onto design canvas
and wire up to its pins, eg. its routable. Also analog, opamps, comparators,
onchip Vref, A/D 12 bit SAR or 20 bit delsig, digital filter, state machine wizard,
PWM, Timers, Counters, Quadec, COM, ARM core(s)......

Tool, "Creator" is free, compiler free, two boards come to mind, low end PSOC 4, and high end PSOC 5LP. Dual core is PSOC 6, but start with 4 or 5LP.

http://www.cypress.com/products/psoc-creator-integrated-design-environment-ide

http://www.cypress.com/documentation/development-kitsboards/cy8ckit-042-psoc-4-pioneer-kit $30
http://www.cypress.com/documentation/development-kitsboards/psoc-4-cy8ckit-049-4xxx-prototyping-kits $4
http://www.cypress.com/documentatio...oc-5lp-prototyping-kit-onboard-programmer-and $ 10

Attached is a component list (a component is a design element inside psoc, a resource) that you
can drag and drop onto canvas. It applies to high end part PSOC 5LP, PSOC 4 has a subset of
these resources.

PSOC 101 video series, lessons 1 - 16.....First lessons drag a little but are short.

http://www.cypress.com/video-library/PSoC/psoc-101-introduction-psoc-101/387726

Regards, Dana.
Hello Dana

I've never considered Cypress before. But you've called my attention and I see it deserves a closer look. Thank you!
 

Thread Starter

Ciro Bruno

Joined Feb 18, 2018
20
Howdy, I'm VERY Biased, having written code for the Motorola / Freescale / NXP series of 9(S)08 uC since '99.
My take: if you can fit the project into the CodeWarrior V6 environment DO IT.
Otherwise, the CW V10 (Eclipse) version is ok, but is Draconian in usage.
Ok, I'm an old school coder who Hates an IDE that tries to out guess what I want (FT).
Most "younger" (I'm 65) coders will probably feel at home in the Eclipse IDE environment.
I've used the Eclipse IDE in a Java development situ and Loved it.

BUT, compared to the simple V6, it's a Boatload of overhead.
Unfortunately, NXP is orphaning the V6 IDE subject chips (PA4 is a prime example).

Should mention, I write assembler, not-relocatable... just straight executable .ASM
So many features that would well benefit C (etc) just get in my way. (oh well) <<<)))
I understand what you call Draconian when I look at Microchip's MPLab X... That's why I'm looking for an alternative.

I usually prefer lighter IDEs, but I don't intend to make big projects in ASM anymore. I tend to build projects with floating point calculations, GLCD, SD Card and so on. I can't evaluate how painful it would be to do such things in ASM. I guess it would require those continuous 12 hours marathons not to loose those very small details. I've been doing it during the 80's, but with nowadays speed and memory resources, I don't feel encouraged anymore. Maybe I'd use ASM in small (8 or 14 pin) 8-bit processors for peripheral tasks, such as stepper motor driving and counting, but not much more than that.

Maybe it'll worth trying to deep into MPLab itself, since it has very powerful debugging resources and is able to handle multiple controllers within the same project. But it'll require time and patience. I'm gonna have vacations, so I'll try to figure out whether I can fit it. I really hope it works for me! I'll give you a feedback...

Thank you very much.
BTW, I'm 48 and I guess we've seen the same "monsters"... It's good to know there's someone from last century here...
 
Top