___ / _ \ / /_\ \ | _ | | | | | \_| |_/
_ | | | | | |___ |_____|
__ __ \ \ / / \ \_/ / \ / | | |_|
# ### ## # # # #
## ## #### ## #### ## ##
IMPORTANT: enter the case-INsensitive alphabetic (no numbers) code AND WRITE SOME SHORT summary of changes (below) if you are saving changes. (not required for previewing changes). Wiki-spamming is not tolerated, will be removed, so it does NOT even show up in history. Spammers go away now. Visit Preferences to set your user name Summary of change: This is an AtMega128 and embedded systems course for lazy people, who like to know much, but small steps at a time (like me :-) The course will be going on these pages, with discussions on avr-hun (Hungarian) and genboard-dev (English) lists, see ListsAndForums, and subscribe. The course is optimized for people who can spend 10 minutes once in every while to learn new stuff, which makes work more efficient (sometimes pays back at the very 1st project). You will find some of it very useful, and directly useable in other projects, others will start to make you think how it can be done better. Even though we are going through the firmware of a gasoline engine management system, it is suitable for people who know nothing and not even care about engine management, but target other embedded applications. The best way to follow the course is to * have a local snapshot of the {{firmware/}} files, with * a reasonable editor at hand ({{notepad}} is lame, syntax-highlighting is nice, like programmers notepad in winavr) * use {{grep}} or other tools to find occurences of variable and function names. When a function is explained, it's nice to see where from and how it is used. * if all else fails, see the [http://cvs.sourceforge.net/viewcvs.py/megasquirtavr/firmware/ web-cvs], but a local snapshot is much better. We are looking for people who translate the course to Hungarian or other languages. If you can help, or you would like it to happen, write your name to AtMega/JTaG/Hungarian page. After doing the following steps, you will know a powerful environment that can cut down the time you need for embedded system development. * get the firmware (best if you get update cvs version, but at least a snapshot) GenBoard/FirmWare/CVSUsage * OnlineCourse/Environment * [http://www.nongnu.org/avr-libc/ AVR LIBC] DEMO Project: [http://jubal.westnet.com/AVR/doc/avr-libc-user-manual/ Online Manual] * AtMega128 the microcontroller we often use * gcc compiler: nice [http://www.embedded.com/2000/0002/0002feat2.htm page on asm-linking] (embedding asm in C code) * your first added code: OnlineCourse/BlinkingLEDs * GenBoard/CodeFlowChart * OnlineCourse/LCDLowLevel * UartComm and (little messy:) CommToPC * GenBoard/Firmware/BootLoader * OnlineCourse/SoftPwm ==== future topics ==== you can suggest topics and order... * OnlineCourse/LCDDisplay * a simple example (driving EDIS): EdisIgnition/SoftwareModule * OnlineCourse/EventQueue * GenBoard/MenuSystem * OnlineCourse/PerlScripts * how to debug using BENCHMARK, please translate Hun=>Eng from AtMega/JTaG/Hungarian Optional: Add document to category: Wiki formatting: * is Bullet list ** Bullet list subentry ... '''Bold''', ---- is horizontal ruler, <code> preformatted text... </code> See wiki editing HELP for tables and other formatting tips and tricks.