Laborboard/en: Unterschied zwischen den Versionen

Aus LaborWiki
Wechseln zu: Navigation, Suche
(q36g9er870erlpr f32x65feop)
(Änderung 11579 von 92.241.160.25 (Diskussion) wurde rückgängig gemacht.)
Zeile 1: Zeile 1:
q36g9er870erlpr f32x65feop
__NOTOC__
 
[[Bild:LaborBoard1.jpg|300px|right]]
 
==The Laborboard==
The Laborboard is a small board for those of you that want to start programming microcontrollers.
 
 
==What does it consist of?==
The board's core is a ATmega32 controller. There are 4 buttons (Port B) and 8 LEDs (Port C) connected. Additionally there is a 16Mhz quartz oscillator, a reset button and a small circuit to stabilize the supply voltage.
 
==Getting started==
 
You can find a list of the needed [[LaborBoardTeile|parts]] in this wiki -- Find the component placement specification and circuit diagram here ''https://roulette.das-labor.org/svnview/microcontroller/doc/Layouts/'' . A lot of example code can be found in our [[Subversion]] at ''https://roulette.das-labor.org/svnview/microcontroller''.
 
==Step by==
* 06.06.2005, Do: [[Microcontroller Workshop]]
* 14.06.2005, Fr: [[Microcontroller Workshop Part II]]
* 15.06.2005, Sa: [[Microcontroller Bastel-Samstag]]
* 08.07.2005, Fr: [[Microcontroller Workshop Part III]]
* 06.08.2005, Di: [[Microcontroller Workshop Part V]] (Canbus & Co)
* 13.09.2005, Di: [[Microcontroller Workshop: Borgs]]
 
* 14.11.2006, Di: [[Microcontroller Workshop]]
* 16.11.2006, Do: [[Microcontroller Workshop]]
 
==Projects building upon the Labor Micro Board==
* [[Blinken Borgs/en]]
* Peter's [[Shortcut-Tastatur]]
* [[Automatisierung des Labors|Labor automation projekt]] with the help of [[CAN]] Bus and  [[LAP]], the Labor Automation Protocol.
 
* [[Standards zur verdrahtung| wiring standards]]
 
==Setting fuses==
For the controllers to work with the external quartz oscillator and to control the LEDs with all pins on Port C, you have to set the fuses correctly. '''ATTENTION: SETTING THE WRONG FUSES CAN BRICK YOUR CONTROLLER!''' The order is important, too: first set hfuse, then lfuse.
 
...you have been warned. ;)
 
  avrdude -c bsd -p m32 -t
...some kind of console upens up ...
  write hfuse 0 0xc9
  write lfuse 0 0x9f
  quit
 
... you should see a confirmation message
 
If you lack avrdude, you can also use uisp:
 
  uisp -dprog=bsd --wr_fuse_h=0xc9
  uisp -dprog=bsd --wr_fuse_l=0x9f
 
== pin assignment of the programming plug ==
        +-----+
    GND | 0 0 | MISO
    GND | 0 0 | SCK
    GND | 0 0  RESET (inv)
    GND | 0 0 | (not assigned)
    VCC | 0 0 | MOSI
        +-----+
==Links==
* AVR + gcc tutorial: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
* avr-libc manual: http://www.nongnu.org/avr-libc/user-manual/index.html
* Toolchain install: http://www.nongnu.org/avr-libc/user-manual/install_tools.html (do not use old port/packages! avr-libc < 1.23 has bugs in malloc)
* ATmega32 Data Sheet: http://www.atmel.com/dyn/resources/prod_documents/doc2503.pdf
 
[[Category:Microcontroller]]

Version vom 1. Juni 2009, 18:52 Uhr


LaborBoard1.jpg

The Laborboard

The Laborboard is a small board for those of you that want to start programming microcontrollers.


What does it consist of?

The board's core is a ATmega32 controller. There are 4 buttons (Port B) and 8 LEDs (Port C) connected. Additionally there is a 16Mhz quartz oscillator, a reset button and a small circuit to stabilize the supply voltage.

Getting started

You can find a list of the needed parts in this wiki -- Find the component placement specification and circuit diagram here https://roulette.das-labor.org/svnview/microcontroller/doc/Layouts/ . A lot of example code can be found in our Subversion at https://roulette.das-labor.org/svnview/microcontroller.

Step by

Projects building upon the Labor Micro Board

Setting fuses

For the controllers to work with the external quartz oscillator and to control the LEDs with all pins on Port C, you have to set the fuses correctly. ATTENTION: SETTING THE WRONG FUSES CAN BRICK YOUR CONTROLLER! The order is important, too: first set hfuse, then lfuse.

...you have been warned. ;)

 avrdude -c bsd -p m32 -t

...some kind of console upens up ...

 write hfuse 0 0xc9
 write lfuse 0 0x9f
 quit

... you should see a confirmation message

If you lack avrdude, you can also use uisp:

 uisp -dprog=bsd --wr_fuse_h=0xc9
 uisp -dprog=bsd --wr_fuse_l=0x9f

pin assignment of the programming plug

       +-----+
   GND | 0 0 | MISO
   GND | 0 0 | SCK
   GND | 0 0   RESET (inv)
   GND | 0 0 | (not assigned)
   VCC | 0 0 | MOSI
       +-----+

Links