We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
So, I'm just now migrating to ARM from PIC. I hate most things about Microchip's implementation of CAN, but I do love the ruggedness of those chips. Since I do far more work on CAN than analog I'm confident that Cortex is what I'm looking for.
However... Of the major suppliers NXP, Ti, Freescale, STM, SiliconLabs, etc, I'm not sure who to go with.
1. Does it matter? I'm pretty sure I'll be using Keil, so is there any signifigcant different between X and Y brand Cortex chip?
2. I work in automotive. Basically, the only requirements I have in a brand of ARM is that I need a small cheap on with 1 can controller and a USB device (host ideal). As well as a "big" chip that has two can bus ports and 1 USB host/device. That's it really. I think STM is winning so far. Ti doesn't have a range of M0/+. Freescale seems expensive and limited for dual CAN. NXP looks good but limited in selection at least compared to STM32Fxx series. Anything else I should look at?
3. If anyone else has made the transition from 8bit Microchip/Atmel to 32bit ARM and has any advice, I'd love to hear it! I have yet to work on a RTOS as the PIC doesn't have a lot of great options, so I've coded sort of schedulers, my own ADC, SPI, and CAN drivers. I know how to read SFRs and datasheets, but there is a whole generation or two gap here I'm jumping. So anything that comes to mind would be welcome.
4. RTOS. CMSIS or something as I understand it allows cross brand chip use, but at a higher overhead. I haven't looked into this a ton yet. Is there a specific RTOS that you Keil users like over others? I work in automotive but AutoSAR and even OSEK are undesirable for my uses. I'd really like something I could trace through. But I also need to convince the CFO of every purchase, so costs needs to be reasonable.
4. (CAN BUS SPECIFIC) Does anyone work with Keil + Cortex + CAN Bus? Is this a solid system? In this scenario who's driver would I likely start with? Something the mfg puts out? Something Keil has? My own? Is there something else that might be better? Microchip's CAN implementation is so bad, that I really can't imagine anything worse, but I need to find an arc that has first party and community support.
Thanks! J
I don't know much about this actually.
-> 1. Does it matter? I'm pretty sure I'll be using Keil, so is there any signifigcant different between X and Y brand Cortex chip?
It does matter. Some chips have better support with Keil, or have better libraries. Keil has 4.x and 5.x toolchains/libraries. Chip manufacturers have several libraries for the same MCU. All these are quite annoying to me.
2. I work in automotive.
Sounds like you work in automotive, but you don't need an automotive grade MCU, and are not bound to a specific CAN solution? Freescale makes a lot of automotive grade MCUs, but not ARM core or not for Keil.
4. RTOS.
Keil has its own RTOS.
4. (CAN BUS SPECIFIC) Does anyone work with Keil + Cortex + CAN Bus? Is this a solid system?
Keil + Cortex + CAN Bus, sounds like it is not for automotive.
If your device is one member of a CAN bus, why don't you just use a MCU that other members use? So that you can use the same CAN solution/library? If you don't use something like Vector or Mecel provided CAN solutions, I think it is better that you use your own CAN driver.
Wha?
It does matter. Some chips have better support with Keil, or have better libraries. Keil has 4.x and 5.x toolchains/libraries. Chip manufacturers have several libraries for the same MCU. All these are quite annoying to me. Ok, so it appears that STM32Fxx chips line up with what I'm looking for, how are they in relation to redundant libraries and Keil support?
you don't need an automotive grade MCU, and are not bound to a specific CAN solution? Yes, I do work in automotive, using CAN mostly. That does not mean I work for a big 3/4 and make OE modules that are verified parts of the OE interior or powertrain network. The issue with Freescale is they seem to have 1 or 2 chips in their "automotive" section and neither have dual CAN. Makes me wonder how they are coming up with calling them "automotive" chips at all. I need 2x CAN and USB for bigger projects and at least 1 CAN and SPI for smaller projects
Keil has its own RTOS. Ah, right. And I would assume that the support for it inside the IDE is excellent then :) How is the trace? Costs? Compared to other RTOS?
I'm honestly not sure how you got there. Automotive doesn't mean OE module.
I would not say my devices are explicitly members of the network. Sometimes they are, sometimes not. Sometimes diagnostic. Sometimes they piggy back on the factory bus to relay messages to two of my modules. I'm not sure if you've ever worked with the big 3 (or 4 depending on how you feel about Toyota) but there is no working with them for network modules. Closed system by design. Even IF I used the same chip, same terrible code from Vector, had a team of German engineers, got the same validation, these modules would be in the same "outsider" status. Vector, heh, no thanks on that noise ;)
The issue with Freescale is they seem to have 1 or 2 chips in their "automotive" section and neither have dual CAN. Makes me wonder how they are coming up with calling them "automotive" chips at all.
Well, that complaint makes me wonder whether you know what you're talking about at all.
Ha, um, there are only 4 gateway modules in the 2015 vehicles I'm working on. Not sure how you expect to do gateways without dual can. Even the diagnostic layer from most vehicles 2007 on have a broadcast diagnostics and dedicated channel for send/receive, again, dual can... But please, go on with your comments regarding my knowledge on the matter.
This is definitely doing nothing to convince me the Kiel enviroment is the right choice. Some community.
I don't know much about this actually, and I no longer work in automotive.
I had access to some Mecel source code, they looked good. Didn't have the opportunity to use Vector source code. I don't like AUTOSAR, it is more like an Utopia
STM32Fxx chips line up with what I'm looking for, how are they in relation to redundant libraries and Keil support?
I mainly use NXP LPC, rarely use STM32.
But it seems that, some users complain the libraries and Keil support for STM.
www.keil.com/.../ http://www.keil.com/forum/23507/ http://www.keil.com/forum/24944/ http://www.keil.com/forum/58179/ http://www.keil.com/forum/58959/
Hans-Bernhard Broeker is an expert, and he does know automotive and CAN bus very well, you just need to be familiar with his style. He did provide useful help/answers to me.
When I worked in automotive, I use Fujitsu and Freescale MCU, no Keil toolchain for them.
Well, that response makes me wonder what impression this community gives to new visitors.