I would like a 16 bit architecture microcontroller for arduino projects. I know this has been asked before but those topics are somewhat outdated.
Why? Wouldn't a 32 bit architecture be better? There are lots of those. The micro market has largely split between 8 and 32 bit these days...
If you insist on 16 bits, the very low power MSP430 series from TI is popular and well supported by inexpensive development boards, and C compilers (even GCC).
Also is supported by “energia”, a versionof the arduino IDE.
https://energia.nu/
Cool, thanks! I had never heard of energia.
A selection of MSP430 parts is also supported by Energia, which is a port of the Arduino IDE. There are some differences of course, but you would find yourself on familiar ground. I don't know to what extent Energia is supported now.
I've done some MSP430 stuff, mostly in assembler, and like them very much. They are 16-bit, which I think is the Goldilocks size for microcontrollers, and it's von Neumann, which means you can run code from anywhere. Never had much exposure to Energia.
This seems like a nice MCU. I like the architecture and the instruction set. I miss assembly language projects and this looks like a nice way to get back to some.
The opening paragraph of MSP430 Architecture and Instruction set: https://www.ti.com/sc/data/msp/databook/chp8.pdf
8.1 Introduction
The instruction set of the ultra low power-microcomputer MSP430 family differs
strongly from the instruction sets used by other 8-bit and 16-bit microcomputers.
The reasons why this instruction set is appreciated though, are explained
in the following pages in detail. It is the return to clarity and especially
the return to orthogonality, an attribute of microcomputer architectures that
has disappeared more and more during the last 20 years. A customer commented
that it is an instruction set to fall in love with.
It is indeed a pretty cool MCU!
Orthogonality was one of the properties of the 8-bit Motorola instruction sets that I liked.
Yeah, the msp430 probably has the “most pleasant” assembly/machine instruction set of any current microcontroller. Very similar to ye olde pdp11. This does come at the price of making it somewhat difficult to figure out instruction timings (which are dependent on the addressing mode used.). And it has pretty much the same annoyances when you try to go past 64k of memory as most 8bit CPU’s.
Yes, 64K was a problem when I began mixing high level language modules and pure assembler. Bank switching EPROMs helped but wasn't as convenient as having a wider address bus. Still, enjoyable programming for me.
Better but not simple as 16-bit?
I'll look into those. Thanks for the help guys. ![]()
unfortunatly i couldnt give the solution to everybody who recommended a microcontroller but ill look at the datasheets for all the ones you reccomend
Thanks for showing me the datasheet as well as telling me about the chip
Just for future reference, for MSP430 assembly coding you can install the huge, complicated TI IDE, but you can also use Michael Kohn's command line Naken assembler, which is very small and simple. It also does AVR and a wide variety of other microcontrollers. And you can dis-assemble.
https://www.mikekohn.net/micro/naken_asm.php
Also, the MSP430 line includes some parts where the flash memory has been replaced with FRAM.
My MSP430FR2476 dev board will be here tomorrow.
Not sure if you tried it or not but I can attest to Energia working for the MCSP430G2553 for Arduino sketches. I bought some of these parts because they come in PDIP packages and are easy to breadboard.
I did try Energia for the G2553, but almost all of my MSP430 stuff is written in assembly. I use the Naken assembler for that.
I don't think Energia supports any of the FR parts.
I'm going to check out Naken for assembly. The TI IDE is too much.