HSC2011/Software/Firmware: Unterschied zwischen den Versionen
Chrysn (Diskussion | Beiträge) copied some content from old software page |
Chrysn (Diskussion | Beiträge) added section on eeprom, moved todos to roadmap |
||
(4 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<small>< [[HSC2011]]</small> | |||
The firmware is the part of the software flashed to the ATMega328 on the EduBuzzers. It capable of both serving as a buzzer and being a base station. | The firmware is the part of the software flashed to the ATMega328 on the EduBuzzers. It capable of both serving as a buzzer and being a base station. | ||
It is written in C (technically, C++, although hardly any C++ is used). It uses the [http://www.nongnu.org/avr-libc/ avr-libc], [http://jeelabs.net/projects/cafe/repository/show/RF12 JeeLabs' RF12 library] and [http://www.pjrc.com/teensy/td_libs_OneWire.html Paul Stoffregen's OneWire library]. A fourth "external" dependency is [http://www.clifford.at/embedvm/ EmbedVM], which is documented as [[HSC2011/ | It is written in C (technically, C++, although hardly any C++ is used). It uses the [http://www.nongnu.org/avr-libc/ avr-libc], [http://jeelabs.net/projects/cafe/repository/show/RF12 JeeLabs' RF12 library] and [http://www.pjrc.com/teensy/td_libs_OneWire.html Paul Stoffregen's OneWire library]. A fourth "external" dependency is [http://www.clifford.at/embedvm/ EmbedVM], which is documented as [[HSC2011/Software/EmbedVM|our virtual machine]] as it was developed for this project. | ||
== Compiling == | == Compiling and flashing == | ||
'''Note''': You can skip this step, and instead use the file <tt>firmware/firmware.hex</tt> from the [[HSC2011/Download instructions|project repository]]. | '''Note''': You can skip this step, and instead use the file <tt>firmware/firmware.hex</tt> from the [[HSC2011/Download instructions|project repository]]. | ||
Zeile 26: | Zeile 29: | ||
(if you flash on an arduino uno, replace "duemilanove328" with "uno"; you might need to adapt the device name as well). The installation routine will be different if you use another way of flashing than flashing an ATMega sitting inside an Arduino; consult your flasher's operating instructions in that case. | (if you flash on an arduino uno, replace "duemilanove328" with "uno"; you might need to adapt the device name as well). The installation routine will be different if you use another way of flashing than flashing an ATMega sitting inside an Arduino; consult your flasher's operating instructions in that case. | ||
== | When using ATMegas that don't originate from Arduinos, we nevertheless recommend [http://arduino.cc/en/Tutorial/ArduinoISP|to flash the Arduino firmware] there, including their fuse settings. | ||
== Communication settings == | |||
The MAC address of the device and its configured base station are stored in the first 2x8 byte of the EEPROM memory. They can be configured from [[HSC2011/Software/Ygor|from Ygor]] or using the [[HSC2011/Communication/Serial protocol|M01-M05 commands]] on the serial console. | |||
[[Kategorie:HSC2011]] | |||
[[Kategorie:English]] | |||