Académique Documents
Professionnel Documents
Culture Documents
embedded systems ? How to simplify the design ? What r the recent advancements ? How do I achieve more using less ?....to name a few
Essential Components
Microcontroller / DSP Sensors Converters (A-D and D-A)
Actuators
Memory (On-chip and Off chip) Communication path with the interacting
environment
Sensor
A/D
Microcontroller
D/A
Actuator
Ok see this
Build+Compile+Link
Medical
Application Areas
Smart Buildings
A few applications
BOOT LOADER ?
A Bootloader is the first program which executes (before
the main program) whenever a system is initialized. In PC It is used to boot he OS of the system. In case of microcontrollers, a bootloader enriches the capabilities of the microcontrollers and makes them self programmable device
Boot Loader!@#$%^&*()
Again coming back to the questionnaire. What is this ? Why is this required ?
costly Might be difficult to get such programmer for every bench in any university or any facility Complex setup even for simple application Difficult to use in the field In the automotive industry, many Electronic Control Units are encapsulated in housings leaving very few pins accessible
memory of the microcontroller just once, using a conventional programmer. After this, the microcontroller can be programmed without a programmer. Once in the microcontroller, the boot loader written in such a way that each time after reset it starts running like any conventional program. But then.how can it act as a programmer..?
starts listening for incoming bytes via a specific interface. For instance, a UART boot loader will listen to the UART buffer of the micro, checking for incoming bytes. If the bytes start arriving, the boot loader will grab them and write them in the program memory in the sequence it receives them and at predefined locations. Once all bytes have been received, the boot loader executes a jump at the start of the memory zone it has received and then the normal program starts running.
A small example
A typical prog mem.
Prog. the boot loader using a
programmer Once the bootloader is in place, and the micro comes out of reset, the bootloader will start listening to one of the micro interfaces (like UART, SPI, I2C, CAN etc) for incoming bytes. If data does come through in the format expected by the bootloader, it starts writing the incoming bytes in the program memory
Example.contd
Step 1 right after reset, the
bootloader code existing there starts to listen the chosen external interface for incoming data. Step 2 the incoming data is written in the program memory as it would be written by a programmer Step 3 once the entire incoming data has been written, the bootloader executes a jump at the first instructions of the regular program.
Programming simplified
Contd..
Any questions?