Learn Firmware

Go To Last Post
16 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hello,

I am interested to write my own firmware for my project

Is there any online tutorials and books for learning?

 

 

Last Edited: Sun. Aug 4, 2019 - 11:38 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The entrance exam for the Chinese civil service is apparently one question: "write down everything you know"

 

While that may be apocryphal your question strikes me as very similar. Do you want to maybe focus on a few topics to start with like C, electronics, AVRs etc?

 

But a one word answer might be "Arduino"

Last Edited: Sun. Aug 4, 2019 - 02:59 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I was working on communication protocol with ATMEGA16.

One of my colleague told to write my own firmware and his first condition was do not use arduino.

May I know why Arduino is consider very cheap?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Parthadude wrote:

May I know why Arduino is consider very cheap?

Because it is...

 

https://www.ebay.com/itm/For-Ard...

 

For a programmer and sometimes hardware designer only... the Arduino gives you a really fast entry to most projects that do not include a lunar lander system. The hardware simply works. And of course you can program it with anything you like... it does not have to use the Arduino IDE.

Ross McKenzie ValuSoft Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Parthadude wrote:
One of my colleague told to write my own firmware and his first condition was do not use arduino.

Does he mean don't use the Arduino software framework?  Or does he mean don't use Arguino hardware as well?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Is this "colleague" actually your teacher for a class in embedded microcomputers?   Why else would he care that you don't use Arduino?

 

Arduino is a hardware and software combination system that uses pre-manufactured module boards and pre-written tested software libraries to enable microcontroller development for people who are not microprocessor engineering professionals.

 

If you are doing "communications protocol for ATMEGA16" then you can't use Arduino anyway, because it only runs on two of the hundred or so AVR variants.  And the Mega16 is not one of them.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Simonetta wrote:
Is this "colleague" actually your teacher for a class in embedded microcomputers?   Why else would he care that you don't use Arduino?

 

I thought the same.  Whats the rub against Arduino?

 

 

 

And why the Mega16 as the choice of processor?  There are far newer ones out there.

 

JIm

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"Step N is required before you can do step N+1!" - ka7ehk

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB, RSLogix user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

He meant both hardware and software.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

He is an embedded professional. He said using arduino is not a challenge at all, because everything is available easily.

In order to improve your embedded skills he said do bare coding with atmel studio.

He suggested to use atmega16 since i am beginner.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Parthadude wrote:
He said using arduino is not a challenge at all
He's wrong.

 

Because all the "difficult bits" are already done for you with Arduino you are left to concentrate on "system design". Learning to do this BEFORE you get involved in the intricate detail is a key skill to learn. To try and learn the bits/bytes before you learn about designing complete systems is actually doing things backwards so Arduino is a good introduction.

 

What's more the Arduino is just a brilliant piece of electronics so when you feel ready to break away from using pre-built libraries for each peripheral you can simply program the same hardware in plain C , C++ or any language you choose - Asm or Basic or whatever.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Let me get started.

thank you!!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Parthadude wrote:

He is an embedded professional.

He suggested to use atmega16 ...

Those two appear contradictory...

Ross McKenzie ValuSoft Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

valusoft wrote:

Parthadude wrote:

He is an embedded professional.

He suggested to use atmega16 ...

Those two appear contradictory...

 

Now now, Ross........

 

JIm

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"Step N is required before you can do step N+1!" - ka7ehk

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB, RSLogix user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It sounds like your mentor wants you learn how to use AS7, which AVR you use does not matter, although I'll agree with the others an Arduino nano or uno is a good hardware place to start.

They are cheap and have all the basics needed for a working system.

Jim

 

Click Link: Get Free Stock: Retire early! PM for strategy

share.robinhood.com/jamesc3274
get $5 free gold/silver https://www.onegold.com/join/713...

 

 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Your mentor is, at the very least, confused about Arduino.

 

Let me ask you how you learn to ride a bicycle (assuming that you can do that)? Did you have to make your bicycle first? And all those spokes in the wheels - did you put those together, also (not a trivial task)? Did you make the rubber for the tires and weld the frame? I'll bet that you did not. You simply got on a bike and tried. All the hard stuff was done for you by others. That was so that you could concentrate on learning the important things - how to balance and steer and pedal.

 

Arduino is no more nor less than your first bicycle. It is a platform on which to learn. You can easily transition to C or assembler from the Arduino programming environment. Atmel Studio 7 (AS7) makes that pretty simple. And you can do it on the Arduino board that you started with. 

 

The choice of Mega16 as a starter is likewise puzzling. That is a little like learning to ride a bike on a bike that is half size. Yes, it has handle bars and wheels, but its really not the real thing. A Mega328 gives you a wide variety of peripherals, including several timers of various sizes and capabilities. They are great for learning. There is just enough complexity to give you something to chew on for a fair while. 

 

You could do FAR worse than a minimal Arduino with a Mega328. They are inexpensive, readily available, and worthy of your attention.

 

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

Last Edited: Mon. Aug 5, 2019 - 03:39 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0


 

ka7ehk wrote:
That is a little like learning to ride a bike on a bike that is half size
More like learning to ride on a penny-farthing:

 

 

... instead of a more sensible contemporary design:

 

 

"Experience is what enables you to recognise a mistake the second time you make it."

"Good judgement comes from experience.  Experience comes from bad judgement."

"Wisdom is always wont to arrive late, and to be a little approximate on first possession."

"When you hear hoofbeats, think horses, not unicorns."

"Fast.  Cheap.  Good.  Pick two."

"We see a lot of arses on handlebars around here." - [J Ekdahl]

 

Last Edited: Mon. Aug 5, 2019 - 03:53 PM