ARM microprocessors book series - Page 1
Forum section: electronics / general

author: Back2Volts
author_rank: Unknown
timestamp: March 25, 2016, 06:47:17 pm
content: Anybody familiar with this series of three books by Valvano ?Volume1 Embedded Systems: Introduction to Arm® Cortex(TM)-M Microcontrollers , Fifth Edition (Volume 1) 5th Editionhttp://www.amazon.com/Embedded-Systems-Introduction-Arm%AE-Cortex/dp/1477508996Volume 2 Embedded Systems: Real-Time Interfacing to ARM Cortex M Microcontrollers Fourth EditionEmbedded Systems: Real-Time Interfacing to Arm® Cortex(TM)-M Microcontrollers 2nd EditionVolume 3 Embedded Systems: Real-Time Operating Systems for ARM Cortex M Microcontrollers Third editionEmbedded Systems: Real-Time Operating Systems for Arm Cortex M Microcontrollers 0002- Edition

author: dannyf
author_rank: Super Contributor
timestamp: March 25, 2016, 07:34:59 pm
content: It depends on what you expect out of them.Books of that nature are generally not terribly useful for practioners: you want to use a chip (=core + peripherals), not just the core. Many times, it is the peripherals that determine your choice. Rarely the other way around.

author: nctnico
author_rank: Super Contributor
timestamp: March 25, 2016, 08:13:05 pm
content: According to the comments on Amazon the first book isn't worth buying. Nobody is saying something is really good about the book (except for the people taking classes from the author).

author: Jeroen3
author_rank: Super Contributor
timestamp: March 25, 2016, 08:16:04 pm
content: There isn't much need for a book. ARM has excellent documentation.Knowing your core is essential to write efficient and fast peripheral drivers.

author: ade
author_rank: Unknown
timestamp: March 25, 2016, 09:14:02 pm
content: The first book basically has the same content as the free course currently on EdX, maybe with more reference material:https://www.eevblog.com/forum/beginners/free-course-ut-6-03x-embedded-systems-on-edx-starting-now/So if you're taking the course already, it's probably not worth getting the book (other than to support the author).They've mentioned a follow-on course to cover the 3rd book (RTOS).

author: Back2Volts
author_rank: Unknown
timestamp: March 26, 2016, 04:35:05 am
content: Yes, I am taking the class and finding it horrendously low entry level. Do not take me wrong. The class has 26,000 students enrolled, so it is a success and for sure helps a lot of people.I am a retired engineer, EE by education, but except for the early eight years in heavy process control, the rest, mostly software. I have not touched electronics since the 70s. The last thing I did back then was design and wire wrap together an 8080 with one KB of static memory and with a switches and LEDs debug console. Those were the times of the Altair.Then I bought and assembled the Intel 8085 Kit (SDK85 ?). Now, retired, getting back into electronics as a hobby (Bac2Volts)I decided to attend the class because I wanted to take a look at a current development tooling for MCUs. I have enjoyed getting into the TI TM4C123 LaunchPad and touching ARM and Keil. Before this superficial contact with ARM, I was thinking about getting into MCUs with 8 bits, may be Arduino. Now I am starting to think that it would make sense to just deal with ARM at different levels, depending on the project. That said, I am trying to grasp what the differences between manufacturers and ARM levels are. I saw the three books as reference material for the class, and thinking that they would probably be used as material for the regular EE curriculum, I wondered if they would be higher level. Unfortunately I hear you, they are not, so I will look for the common ARM documentation.Thank you for the commentsTony - Back2Volts

author: ade
author_rank: Unknown
timestamp: March 26, 2016, 06:07:45 am
content: I think the actual in-person class Valvano teaches at UT Austin is geared towards 1st year students in EE. It's somewhat more rigorous than the online MOOC version -- for example many of the in-person labs are in ARM assembly language rather than in C -- but it is still a general / basic introduction class given the target student audience.I'm still following the MOOC but one thing I've done is to use the Launchpad on my own projects, without using Valvano's helper startup codes. Instead I've gone direct to TI / Keil / ARM documentation to setup the processor, configure I2C communications (which isn't really covered in the MOOC), etc., etc. I feel this gives me a deeper understanding of the ARM architecture vs. what's presented in the MOOC.I'm also doing a project with another ARM board (STM32) and am learning a lot from the differences between TI and STM. I've decided to do all my projects in ARM now, except for things which require higher-level libraries (OpenCV, etc.)

author: Back2Volts
author_rank: Unknown
timestamp: March 27, 2016, 04:42:27 pm
content: Quote from: ade on March 26, 2016, 06:07:45 amI have noticed that TI does not have low end ARMs, and that ST seems the one with the wider range. What SMT32 processor/board are you using? What development software? I know Keil has a free <32K license for STM32, but I am wondering how limiting it is, so may be I should start looking into something else.

author: ade
author_rank: Unknown
timestamp: March 27, 2016, 06:15:34 pm
content: STM32F0 (Cortex M0) and STM32L0 (Cortex M0+) are the low-end series of the family. They don't get as cheap as some of the Cypress PSoCs but for me gives a nice balance of features / price.STM has a deal with Keil, where you can use Keil 5 withanySTM32 F0 or L0 MCU for free with no restrictions. Some of the F0 devices have 256 KB flash, so that's more than enough for me at the moment!http://www2.keil.com/stmicroelectronics-stm32/mdkSo currently I have an install of Keil 4 for use with the EdX class, and an install of Keil 5 specifically for STM32F0/L0. (Both can reside on one computer simultaneously).STM has a large variety of Nucleo development boards supporting the ecosystem. The Nucleo-F072RB ($11) is a good choice to start with.Nucleo-32 boards have "Arduino Nano" sized form factor (with Nano-compatible connectors) and are based on 32-pin MCUs. Nucleo-64 boards are based on the LQFP64 package (more pins) and have "Arduino Uno" compatibility. They also have larger Nucleo-144 boards for their higher-end MCUs.http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1847Also, the STM32 Nucleo boards are ARM mbed compatible (https://developer.mbed.org) which is another avenue for exploration.

author: Back2Volts
author_rank: Unknown
timestamp: March 27, 2016, 09:53:36 pm
content: That Keil deal is great! This morning I was looking at the STM32L0 family and trying to figure out the corresponding Nucleos. They are really cheap. I will order one of them and start playing with it.I also happened to tale a quick detour through the mbed site. Wondering how good it is.Thanks for your comments

author: ade
author_rank: Unknown
timestamp: March 27, 2016, 10:09:09 pm
content: From the L0 series the NUCLEO-L053R8 is a good choice if you want to explore ultra-low power applications. The tradeoff vs. the F072RB is lower flash (64K vs 128K) and clockspeed (32 Mhz vs. 40 Mhz), but it has a built in LCD driver.