Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] Configurable Mircrocontroller design

Status
Not open for further replies.

qbone

Member level 3
Member level 3
Joined
Jun 2, 2009
Messages
58
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Location
Lyngby, Denmark
Activity points
1,778
Hey Guys.
I am looking for a little help in the theory of creating a specific project.
What do I need in order to make a controller with a MCU where I wanna be able to write programs on my PC and easily download them to the controller?
Like if the controller have 12 I/Os I want one program where the 12 I/Os do one thing, and one program where they do another thing.
These program I want in seperate files, and being able to download them through either a self made application or one that already exists..
Kinda like downloading a new firmware to the controller I guess.
How complex a MCU do I need for this, and how or where do I need to store the program? External RAM or ROM?

I don't need complete schematics or whatnot, all I am asking for is for a little guidance as to What components would I need, and what theory would I need to acquire so I can move onwards with this project?

I am an electronics technician apprentice, so I am not a complete noob when it comes to electronics, but so far I have mostly been working with analog designs, so my designer skills in digital design arent as badass as I want them to be some day ;)

I hope you can help me out.
 

After doing some reading I would assume that I would have to write the program onto an eprom, otherwise it would ofc be lost during reset, but wouldn't I need another Rom aswell, or one embedded in the MCU, where I write all my routines as to how it should download programs and behave on startup and all?
 

Sounds like what you are looking for is a serial "bootloader". A program that you write into the MCU once and then protect from being overwritten, that allows you to load other programs into it for execution. There are many MCUs that can do this, look for ones with "self write capability" and "flash memory" to get examples.

Brian.
 
  • Like
Reactions: qbone

    qbone

    Points: 2
    Helpful Answer Positive Rating
After doing some reading I would assume that I would have to write the program onto an eprom, otherwise it would ofc be lost during reset, but wouldn't I need another Rom aswell, or one embedded in the MCU, where I write all my routines as to how it should download programs and behave on startup and all?

Most micro-controller use FLASH memory for their program memory and are not capable of running programs out of RAM. To update the program memory you use a "Boot Loader"; a small piece of code that downloads your program and copies it into the FLASH program memory space. The Boot Loader is typically located in a protected section of program memory so it can not be overwritten. Depending on your micro-controller,and peripherals, your program can be downloaded from a serial port, Wi-Fi connection, Ethernet, USB, or from an SD card - among other ways.

Microchip has several application notes and sample code for boot loaders for their products:
**broken link removed**
 
  • Like
Reactions: qbone

    qbone

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top