Author Topic: help. leaving pic for arm... but which arm????  (Read 23928 times)

0 Members and 1 Guest are viewing this topic.

Offline funkathustra

  • Regular Contributor
  • *
  • Posts: 150
  • Country: us
Re: help. leaving pic for arm... but which arm????
« Reply #25 on: July 06, 2015, 06:50:37 am »
Well, it was a pain in the ass to program and debug these Kinetis FRDM boards on Linux through OpenSDA (which is not open at all!!).

I'm using now STM32 chips with STLink V2 debugger and I liked it! The learning curve was a little hard, but eventually I've learned enough to write an TFT LCD library.
My IDE is basically emacs + git + arm-none-eabi toolchain + OpenOCD. I've tried Eclipse, but it was too unstable and cumbersome to me. I know, GDB isn't the easiest debugger to use with microcontrollers, but it does the job. I'm writing an GUI front end for GDB specially target to Cortex M microcontrollers (it will provide an friendly to watch peripherals and memory).

Next time you're trying to do a FRDM board in Linux, try flashing the on-board OpenSDA debugger with J-Link firmware, then grab the latest version of Segger's tools. I've never had problems with J-Link under Linux / GDB, so that's my go-to tool when I'm booted into Linux.

Freescale Kinetis Design Studio is also one of the only IDEs I've seen that works on Linux. Yes, I know you can set up Eclipse CDT with the ARM Embedded plugin, and hack in OpenOCD, but boy, it sure is nice to click on a button and have your toolchain working. As I've gotten older (I'm 28 now), I'm no longer amused by setting up toolchains / IT stuff. I'd rather just have something that works, out of the box, without having to fuck around with it.
 

Offline westfw

  • Super Contributor
  • ***
  • Posts: 4199
  • Country: us
Re: help. leaving pic for arm... but which arm????
« Reply #26 on: July 06, 2015, 06:03:39 pm »
Avoiding teensy because the bootloader chip isn't open source is about like avoiding all those atmel chips because the JTAG ice 3 code isn't open source...  The teensy bootloader chip isn't required in a production design; there are plenty of other ways to get your code into the chip.
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: help. leaving pic for arm... but which arm????
« Reply #27 on: July 06, 2015, 06:27:30 pm »
I like NXP because of the relative simplistic peripherals. With their limits, obviously.

...unless you're talking about the SCT (State Configurable Timer) or the SGPIO that is which have to be the most complex peripherals ever devised. But they are very powerful once you've figured out what on earth they're capable of.
 

Offline ehughes

  • Frequent Contributor
  • **
  • Posts: 409
  • Country: us
Re: help. leaving pic for arm... but which arm????
« Reply #28 on: July 06, 2015, 06:58:37 pm »
Freescale FRDM Boards are low cost.   Supported by both open source and proprietary tools.

Some projects with them:

https://community.freescale.com/docs/DOC-99621

NXP LPC Xpresso has low cost boards.   Tool chain is based upon the latest build of ARM Embedded.

 

Offline Palmitoxico

  • Regular Contributor
  • *
  • Posts: 55
  • Country: br
  • no
Re: help. leaving pic for arm... but which arm????
« Reply #29 on: July 06, 2015, 07:05:02 pm »
Next time you're trying to do a FRDM board in Linux, try flashing the on-board OpenSDA debugger with J-Link firmware, then grab the latest version of Segger's tools. I've never had problems with J-Link under Linux / GDB, so that's my go-to tool when I'm booted into Linux.

Freescale Kinetis Design Studio is also one of the only IDEs I've seen that works on Linux. Yes, I know you can set up Eclipse CDT with the ARM Embedded plugin, and hack in OpenOCD, but boy, it sure is nice to click on a button and have your toolchain working. As I've gotten older (I'm 28 now), I'm no longer amused by setting up toolchains / IT stuff. I'd rather just have something that works, out of the box, without having to fuck around with it.

Yes, I've used J-Link firmware, it worked but wasn't stable with my FRDM-KL25Z board (I can't remember the details, but some times it couldn't connect with the target microcontroller).

I was not aware about Freescale Kinetis Design Studio for Linux... well... it requires a fucking registration... I'll try it latter.

Build a toolchain on linux isn't too dificult, just install arm-none-eabi-gcc, openocd, write an makefile and it's done.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6190
  • Country: us
Re: help. leaving pic for arm... but which arm????
« Reply #30 on: July 06, 2015, 07:11:10 pm »
The teensy bootloader chip isn't required in a production design; there are plenty of other ways to get your code into the chip.

But then you lose the ease of use which is a major reason why people use it. Start with an open source like nuetrino and you can ride it all the way.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26906
  • Country: nl
    • NCT Developments
Re: help. leaving pic for arm... but which arm????
« Reply #31 on: July 06, 2015, 07:48:09 pm »
NXP's ARMs all come with a serial bootloader. Som types with USB even support drag & drop using Windows explorer like you are copying a file onto a USB stick. It doesn't get much easier.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 13745
  • Country: gb
    • Mike's Electric Stuff
Re: help. leaving pic for arm... but which arm????
« Reply #32 on: July 06, 2015, 08:00:26 pm »

Use professional tools like Keil, IAR,...  GCC is good, but not good enough, compared to for example IAR compiler.

IAR is very good, but (at least last time I looked) had a huge cost jump from the 32K free version to the first non-free version - about $3K I think
Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Offline mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 13745
  • Country: gb
    • Mike's Electric Stuff
Re: help. leaving pic for arm... but which arm????
« Reply #33 on: July 06, 2015, 08:02:46 pm »
So, if one were to say, flee at speed from using pic32mx's and switch to an arm core... exactly which arm core?
One thing I loved about the pic32mx in dip + soic was I could get a 50mhz chip with 64kb sram and 256kb program flash. most arm cores I see have like 4 or 8kb :( Looking on mouser, I see two arm DIP parts, and both NXP chips, one has 4kb program/1kb data, and one has 32kb program/4kb data.

ugh.

So why are you wanting to switch ? Last time I looked, Microchip were the only choice if you want 64K RAM in a <64 pin package.

Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Offline Jeroen3

  • Super Contributor
  • ***
  • Posts: 4078
  • Country: nl
  • Embedded Engineer
    • jeroen3.nl
Re: help. leaving pic for arm... but which arm????
« Reply #34 on: July 06, 2015, 08:27:31 pm »
There is a price gap in the "free" IDE's and the "professional" IDE's. However, compared to the time you *can* save, it might not be that big of a gap after all.
Just remember, they're free in currency because you pay with time.
For for companies running any significant revenue it's not expensive. A car mechanic also has to buy power tools to become more productive.
But you can always hire freelancers in Asia, or get interns, they're cheap compared to European hours.

Looking for DIP packages nowadays is not right. All manufacturers move away from dip because it's expensive. There is a lot of excess copper and plastic in DIP compared to QFP or QFN.
We're retrofitting older certified and trusted designed with SMD parts. Because dip is becoming more and more pricey. Read the PCN's (product change notification).
iirc nxp abandoned producing dip for other than legacy logic.

Not until qfp64 you'll get around the 100 kb ram. Which is a lot, first calculate your actual needs. Estimates are often tens of kb off.
« Last Edit: July 06, 2015, 08:31:59 pm by Jeroen3 »
 

Offline mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 13745
  • Country: gb
    • Mike's Electric Stuff
Re: help. leaving pic for arm... but which arm????
« Reply #35 on: July 06, 2015, 08:58:34 pm »
DIP is a "nice to have", especially for protos, but not really a reason in itself to select a part, however the choice of 3 other packages (SO,SSOP, QFN) on the lower pin-count PICs is very useful. If you don't need the small size., SO is still a useful option as it will forgive less-than-perfect PCB and assembly processes.


Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Offline Palmitoxico

  • Regular Contributor
  • *
  • Posts: 55
  • Country: br
  • no
Re: help. leaving pic for arm... but which arm????
« Reply #36 on: July 06, 2015, 09:06:56 pm »
DIP is a "nice to have", especially for protos, but not really a reason in itself to select a part, however the choice of 3 other packages (SO,SSOP, QFN) on the lower pin-count PICs is very useful. If you don't need the small size., SO is still a useful option as it will forgive less-than-perfect PCB and assembly processes.

Agreed. The major problem with SMT parts isn't soldering when you have professional quality PCBs, but when you can only afford single sided home made PCBs without any fancy finishing.
 

Offline jnz

  • Frequent Contributor
  • **
  • Posts: 593
Re: help. leaving pic for arm... but which arm????
« Reply #37 on: July 06, 2015, 09:15:47 pm »
DIP is a "nice to have", especially for protos, but not really a reason in itself to select a part, however the choice of 3 other packages (SO,SSOP, QFN) on the lower pin-count PICs is very useful. If you don't need the small size., SO is still a useful option as it will forgive less-than-perfect PCB and assembly processes.

Agreed. The major problem with SMT parts isn't soldering when you have professional quality PCBs, but when you can only afford single sided home made PCBs without any fancy finishing.

Honestly, I think this is a huge reason that hobbiest-microcontrollers are only getting more popular. Get a Rasp, Ardunio, etc and extend your circuit with add-on modules that you can use throughhole or SOIC parts on. The idea that a hobbiest will start buying NXP chips and doing their own cheap circuit boards over a pre-made solution is weird to me.

ARM is clearly not as hobbiest friendly, but that's OK and for the rest of us with more professional level budgets, to use PIC is to me, foolishness, but I've only used PIC for 12 years, I'm just bitter ;)
« Last Edit: July 06, 2015, 11:50:51 pm by jnz »
 

Offline jnz

  • Frequent Contributor
  • **
  • Posts: 593
Re: help. leaving pic for arm... but which arm????
« Reply #38 on: July 06, 2015, 09:30:43 pm »
anyone have any reccomendations?

I wanted to take a second and share my experiences as I just recently transitioned from PIC to ARM.

  • A lot of what people wrote about CMSIS being a myth is kinda true. Your code won't likely, and probably shouldn't just transfer from chip to chip. That said, CMSIS is very handy at a standard naming convention, RTOS aspects, etc. Write your own libs, use HALs, do whatever, if it's CMSIS, at least someone will be able to read and understand it quickly
  • Microchip has taken a nose dive and I see about zero intention of a course correction. Their tools are garbage. On the ARM side it's really nice having a selection of most serious tools available.
  • On tool selection... There are a LOT of people that will recommend X vs Y... Use what works for you. I'm in a place where spending $10k on Keil Pro with royaltyfree access to their middleware which works with their RTOS right out of the box, worth every penny. If Kiel/Rowley/IAR free/cheap/student/hobby works, great. If you have the time to configure any of the free solutions, go for it. If you ask me, I'll recommend Keil, but I can see GCC+whatever being much better for you depending on how and what you'll work on
  • "As I've gotten older (I'm 28 now), I'm no longer amused by setting up toolchains / IT stuff." QFT!!! Yea, I just need to get work done, like today.
  • Segger tools are very good. And on that note... Spend money, or spend time. You cannot save both. Personally, I have way more money than time. I can always just make more money, I can't say the same for time.
  • It's SO NICE to have professional peripherals that for the most part work - compared to microchip. Depends on the peripheral, but if you need to rely on Microchip and CAN bus... well I feel bad for you son, cause you got 99 problems.
  • ST's method of offering a TON of parts with a TON of variety but still backwards and fowards compatible in pins where possible, awesome. For me, I need small powerful chips and ST seemed to have the largest variety of low pin count TSSOP and QFT parts. NXP was my second choice. Freescale had the least number of parts that would have worked for me.
  • IMO... Every hour spent learning and implementing ARM is time well spent and something you'll be able to use later. Microchip on the other hand, I seriously doubt even with the PIC32 this is time well spent.
  • Good luck buddy.
« Last Edit: July 06, 2015, 11:49:35 pm by jnz »
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: help. leaving pic for arm... but which arm????
« Reply #39 on: July 06, 2015, 10:11:00 pm »

Use professional tools like Keil, IAR,...  GCC is good, but not good enough, compared to for example IAR compiler.

IAR is very good, but (at least last time I looked) had a huge cost jump from the 32K free version to the first non-free version - about $3K I think

I tend to agree, 3k is just not on the radar if you're a one man band or SME. It's the same licensing mentality as Matlab for example. For an SME, if there's no advertised price, you know you're wasting your time even picking up the phone.

My software spend as a one man band is already £5k pa as it is, mostly on subscription licences.

A better model from IAR would be to offer warranty and premium support for those spending 3k per desk, and community only for, say, $500pa, and a crippled version for free.

Of course, if one's "lucky" enough to work for a big corp with a fat spend because the CFO was taken for a boozy round on the golf course, I am full of envy. But you'll find SMEs and OMBs are a bit more mercenary than that, and understand value for money at a more granular level. Personally as an OMB I'd rather spend the money going on a nice holiday several times a year in the comfy seats than funding Clive from Accounts enjoy a soulless piss up on the 19th, but that's my own preference, YMMV ;-)
 

Offline EEMarc

  • Regular Contributor
  • *
  • Posts: 94
  • Country: us
Re: help. leaving pic for arm... but which arm????
« Reply #40 on: July 08, 2015, 12:14:30 am »
I've been using STM32F1xx series for 6 years now at work with Keil. They are pretty good microcontrollers and have worked on the many projects that I've used them in.

Recently, I got a couple STM32F401 Nucleo boards for $11 USD.  It runs an Arm Cortex M4 at 84MHz and is a pretty powerful microcontroller. They make some in the series that are up to 180MHz. That is a pretty powerful microcontroller and the board is in an Arduino form factor so you can make use of their shields. The Nucleo has a ST-link V2.0 programmer/debugger and a header on it for programming your own boards.

I use GCC Arm, Eclispe, and OpenOCD toolchain to program and debug them. is a detailed Youtube video of how to setup the toolchain.

I have also use NXP's LPC1114 microcontroller using their LPCXpresso IDE.  That works well too as a lower end solution with an ARM Cortex M0. NXP's LPCs are nice if you are looking for something low cost. I have their development board which also has a built in LPC-Link programmer/debugger with a header for programming your own boards. The IDE free version goes up to 256kB. To get more you'd have to pay for the pro version which is $495. I haven't used any of their LPC's that have enough flash to need the pro version.
 

Offline nuno

  • Frequent Contributor
  • **
  • Posts: 606
  • Country: pt
Re: help. leaving pic for arm... but which arm????
« Reply #41 on: July 08, 2015, 12:27:49 am »
You should try a PSoC4. Has some analog and configurable digital peripherals. Totally free fantastic IDE that allows you to use the code in commercial applications, many other good things. You have the $30 pioneer dev board that supports debugging etc and the small $4 breakout board with detachable USB-UART interface (with bootloader so you can download code without a programmer, good to try out the platform). miguelvp here in the forum has lots of good posts about it.
 

Offline miguelvp

  • Super Contributor
  • ***
  • Posts: 5550
  • Country: us
Re: help. leaving pic for arm... but which arm????
« Reply #42 on: July 08, 2015, 12:49:53 am »
You should try a PSoC4. Has some analog and configurable digital peripherals. Totally free fantastic IDE that allows you to use the code in commercial applications, many other good things. You have the $30 pioneer dev board that supports debugging etc and the small $4 breakout board with detachable USB-UART interface (with bootloader so you can download code without a programmer, good to try out the platform). miguelvp here in the forum has lots of good posts about it.

I would have suggested the PSoC 5LP, specially the $10 prototype board that has 2 of them, but the OP mentioned Linux only, so that limits what is available. Granted you could export the Creator project to Eclipse or Keil but you still need a Windows machine to configure the digital and analog blocks.

Edit: the PSoC 4 is nice and all, and I like it a lot, but it's a bit on the anemic side since the OP asked for:
Quote
50mhz chip with 64kb sram and 256kb  program flash

Max you can get on a PSoC4 is 16KB SRAM and 128KB  Flash at 48MHz, and I assume the OP meant KiloBytes (the 1024 octates kind) not Kilobits, but I guess he likes to type in lowercase :)
Also Cortex M0 has probably less instruction opcodes than the 6502! Not that it matters much but I think at least an M3 or an M4 would be a better fit.

« Last Edit: July 08, 2015, 01:00:50 am by miguelvp »
 

Offline nuno

  • Frequent Contributor
  • **
  • Posts: 606
  • Country: pt
Re: help. leaving pic for arm... but which arm????
« Reply #43 on: July 08, 2015, 01:27:40 am »
Yes, I did overlook the linux part, and I think I remember seeing that the Creator is not running under wine or something, my bad. As for the rest, I would love to have an AVR or a PSoC with half-meg SRAM/FLASH/EEPROM and 200MHz core, 10 UARTs and 20 timers and (...) too, if you know what I mean; are you sure you really need "that much" SRAM/FLASH, Cactus? Maybe you're just trying to aim at one-size-fits-all requirement. I think you should try a PSoC4 (or 5) anyway :) (but yeah, if you're in linux...)
 

Offline BloodyCactusTopic starter

  • Frequent Contributor
  • **
  • Posts: 482
  • Country: us
    • Kråketær
Re: help. leaving pic for arm... but which arm????
« Reply #44 on: July 08, 2015, 12:38:05 pm »
since its been asked a few times, I do use the ram. one of my pinball pcbs is a 64 channel RGB LED board. it basically runs as a bytecode interpreter. a master board sends pattern data down over rs485. 64kb basically gives me 256 commands per LED. that would be assuming each led didnt share another leds pattern data. thats the most extreme one I have that can really use the ram.

since it only costs $3.50 a dip chip in x25 lots on mouser, its easier to just buy 'one size fits all' and go bulk.

Ive downloaded the kinetis ide and sdk to poke around with. i see the 'low end' programmer costs another 200$.
-- Aussie living in the USA --
 

Offline tipofthesowrd

  • Contributor
  • Posts: 23
  • Country: be
Re: help. leaving pic for arm... but which arm????
« Reply #45 on: July 08, 2015, 12:52:55 pm »
I'll give my two cents since I recently started working with ARM micros both professionally and for hobby use only a few years ago.
First of all regarding compilers: I really think GNU GCC is being underrated here.
There's a reason why all the major vendors recently are switching to GCC (most recently Freescale with Kinetis Design Studio) or at least including extensive GNU GCC support. The recent advances with the nanolibc are really good and so far I've not come across a compiler problem that I couldn't solve with a few Google searches.

At work we used NXP LPC parts and the cumbersome LPCXpresso IDE (eclipse based) but now we're using CodeBlocks in combination with openOCD after we were quite tired and annoyed with LPCXpresso, the code size limitation and the non-compatible updates to higher versions.

At home I'm using mbed based controllers (mbed.org) such as the lpc1768 and the Kinetis L-range. Due to the portability I canreuse large parts of my existing code in both the lower end (Cortex-M0+) and the higher end (Cortex-M4).
I use mbed with my offline GNU GCC based toolchain a busblaster from DangerousPrototypes (a collegue has an Olimex programmer) and openOCD.

In the end with those mbed boards and my offline toolchain with full debugging/programming capability I'm quite happy and can quickly change between vendors as well. And best of all (for me), everything is cross platform and open source.  :-+
 

Offline funkathustra

  • Regular Contributor
  • *
  • Posts: 150
  • Country: us
Re: help. leaving pic for arm... but which arm????
« Reply #46 on: July 08, 2015, 04:56:07 pm »
Ive downloaded the kinetis ide and sdk to poke around with. i see the 'low end' programmer costs another 200$.

All of Freescale's low-cost FRDM boards (which I mentioned in my initial post) have built-in OpenSDA debuggers. OpenSDA lets you switch between different debugger firmware. Currently, FRDM boards support CMSIS-DAP/mbed.org, P&E Micro, USBDM, and my personal favorite, SEGGER J-Link.

You don't have to buy a stand-alone programmer to program your own designs -- all of these FRDM boards have an off-board industry-standard micro 10-pin Cortex SWD debug connector, which, after removing some jumpers, can be used to program/debug an external target. FRDM boards start at about $12 each, so it's hard to complain about the price.

The programmers you're talking about are for production programming, not for development debugging. I don't know that there's much of a difference anymore, but production programmers used to be faster and more reliable? I guess? It's hard to beat J-Link for speed or reliability, though.
« Last Edit: July 08, 2015, 04:57:48 pm by funkathustra »
 

Offline BloodyCactusTopic starter

  • Frequent Contributor
  • **
  • Posts: 482
  • Country: us
    • Kråketær
Re: help. leaving pic for arm... but which arm????
« Reply #47 on: July 08, 2015, 05:38:19 pm »
Ive downloaded the kinetis ide and sdk to poke around with. i see the 'low end' programmer costs another 200$.

All of Freescale's low-cost FRDM boards (which I mentioned in my initial post) have built-in OpenSDA debuggers. OpenSDA lets you switch between different debugger firmware. Currently, FRDM boards support CMSIS-DAP/mbed.org, P&E Micro, USBDM, and my personal favorite, SEGGER J-Link.

You don't have to buy a stand-alone programmer to program your own designs -- all of these FRDM boards have an off-board industry-standard micro 10-pin Cortex SWD debug connector, which, after removing some jumpers, can be used to program/debug an external target. FRDM boards start at about $12 each, so it's hard to complain about the price.

nice, I did not know that.

Quote
The programmers you're talking about are for production programming, not for development debugging. I don't know that there's much of a difference anymore, but production programmers used to be faster and more reliable? I guess? It's hard to beat J-Link for speed or reliability, though.

I was looking at the PE universal multilink, I would not call that a production programmer imo. but its good to know you dont need one for programming and in circuit debugging then

-- Aussie living in the USA --
 

Offline tipofthesowrd

  • Contributor
  • Posts: 23
  • Country: be
Re: help. leaving pic for arm... but which arm????
« Reply #48 on: July 08, 2015, 05:41:33 pm »
Ive downloaded the kinetis ide and sdk to poke around with. i see the 'low end' programmer costs another 200$.

fyi: the Kinetis IDE can also debug using the cmsis-dap (mbed) or openSDA firmware through the onboard USB on a Freedom board.
Just check under 'Run --> Debug Configurations'
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26906
  • Country: nl
    • NCT Developments
Re: help. leaving pic for arm... but which arm????
« Reply #49 on: July 08, 2015, 06:30:28 pm »
I was looking at the PE universal multilink, I would not call that a production programmer imo. but its good to know you dont need one for programming and in circuit debugging then
I have some mixed experiences with the PE multilink. It won't work on my new PC due to USB incompatibilities (PE can't or won't fix). One of the things I hate about Freescale's microcontrollers is that they rely on exotic debugging/programming hardware so you are screwed when it doesn't work for some reason.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf