asimov_18
Member level 2
- Joined
- Sep 25, 2006
- Messages
- 45
- Helped
- 2
- Reputation
- 4
- Reaction score
- 2
- Trophy points
- 1,288
- Location
- London---UK
- Activity points
- 1,816
Hello Forum Members!!,
I have reasonable experience in doing electronics as a profession and hobby. I have been working with AVR and 8051 (8bit controllers) and have worked on MSP430 to some extent. I was trying to migrate to ARM and cortex M3/M0 were the first logical choice. I have purchased the following boards
1) STM32F discovery board.
2) STM32F based mbed board.
3) LPC1768 based custom board.
I have access to Keil tools for ARM and have used keil earlier for 8051 design and an relatively ok with the environment.
Now comes the troubling part. When working with AVRs/PICs/8051 and smaller controllers one just needs to read the device data-sheet and the family manual to understand the peripheral register and SFRs(special function registers) and use any of the available C compilers and essentially ignore the core CPU registers as the C compilers take care of the same and simply build on program logic and the peripheral libraries manipulating the SFRs.
With ARM I am not getting where to start as the ARM core designed by ARM and the chips with I/O and peripherals are designed by various vendors.
1) In this scenario what document does one read?
2) When programming with C essentially one would be overlooking the core registers as the compilers would be abstracting the memory management and register allocation . So Does one only read the chip vendor manual for the family that chip belongs to?
3) ARM are overwhelmingly complex as they have tons of programmable features and registers to manipulate to I/o and peripherals using libraries from vendors(ST/NXP) is one option but in that case too without reading the manual and the library code how does one learn about the libraries and their usage without getting carried away and lost with manual rather than actual coding and usage?
4) Any books that introduce ARM without getting bogged down jargon like multithreading/RTOS/semaphores/scheduler and other end stuff?
Any inputs from users from electronics engineering mindset would be preferred rather than embedded system mindset as have built so many layers of abstractions that they loose the essence of the controller itself!!
Asimov
I have reasonable experience in doing electronics as a profession and hobby. I have been working with AVR and 8051 (8bit controllers) and have worked on MSP430 to some extent. I was trying to migrate to ARM and cortex M3/M0 were the first logical choice. I have purchased the following boards
1) STM32F discovery board.
2) STM32F based mbed board.
3) LPC1768 based custom board.
I have access to Keil tools for ARM and have used keil earlier for 8051 design and an relatively ok with the environment.
Now comes the troubling part. When working with AVRs/PICs/8051 and smaller controllers one just needs to read the device data-sheet and the family manual to understand the peripheral register and SFRs(special function registers) and use any of the available C compilers and essentially ignore the core CPU registers as the C compilers take care of the same and simply build on program logic and the peripheral libraries manipulating the SFRs.
With ARM I am not getting where to start as the ARM core designed by ARM and the chips with I/O and peripherals are designed by various vendors.
1) In this scenario what document does one read?
2) When programming with C essentially one would be overlooking the core registers as the compilers would be abstracting the memory management and register allocation . So Does one only read the chip vendor manual for the family that chip belongs to?
3) ARM are overwhelmingly complex as they have tons of programmable features and registers to manipulate to I/o and peripherals using libraries from vendors(ST/NXP) is one option but in that case too without reading the manual and the library code how does one learn about the libraries and their usage without getting carried away and lost with manual rather than actual coding and usage?
4) Any books that introduce ARM without getting bogged down jargon like multithreading/RTOS/semaphores/scheduler and other end stuff?
Any inputs from users from electronics engineering mindset would be preferred rather than embedded system mindset as have built so many layers of abstractions that they loose the essence of the controller itself!!
Asimov