HSC2011/Communication

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Version vom 2. Mai 2011, 21:11 Uhr von Chrysn (Diskussion | Beiträge) (documented information flow)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springenZur Suche springen

Most pieces of information (events, commands, etc.) travel through the whole software stack. The steps there and interfaces are:

File Implementation Interface Description
firmware/ hardware.{cc,h} Arduino calls most low-level hardware functions, defining which pin maps to which function
boolean button(), void buzzer(uint16_t freq), …
firmware/ firmware.cc main loop dispatch events
firmware/ firmware_net.{cc,h} (running on the buzzer) net_proc(), net_send_until_acked() send what is in send buffer, receive into send buffer
RF12 library calls
firmware/ pktspec.h struct formats for different package types "wire" format of data
firmware/ firmware_net.{cc,h} (running on the base station) RF library calls
net_proc(), net_send()
firmware/ firmware.cc main loop dispatch events
firmware/ firmware_net.{cc,h} ser_printpkt(), ser_poll() parse and serialize packages
Arduino serial library calls
Serial USB connection S 01 * * nnnn... as described in serialprotocol
Ygor Java server Sends packages inserted via HTTP interface to serial, stores packages received via serial for polling
/poll?name=ls_events.sql
software/ …/ base.js JavaScript application library for developing games
Edubuzzer.event_occurred, … game development API
your application whatever you like