Here's a fun hack we've been experimenting with -- a computerless Arduino! It's small, inexpensive, and doesn't require a computer to change the code, so you can take it with you and make awesome things anywhere.The Computerless Arduino consists of two major components; an Arduino-compatible microcontroller loaded with a realtime code interpreter, and a stand-alone 5 button LCD display to display port values and manipulate code. The display can be connected to the Arduino via a 4-pin port at any time to peek at In/Out values, view the current code, and make changes as desired.By keeping the display separate, it's possible to have many dedicated Arduino modules (we're using one of the smallest, cheapest, and most-capable Arduino clones, the Teensy2.0 for $18), without needing to spend much on each additional device. For the display we're using the super small uLCD-144 (by 4D Systems for $29), and the system could easily be modified to use a larger display or computer if desired.The programming instruction set for the Computerless Arduino is quite small, making it easy for novices to get started while still working with real code. Navigating the user interface is a bit tedious on such a tiny display, but it's easy to learn and provides everything you need -- a basic multichannel signal scope, a code page for the setup() function which runs once at startup, and 8 pages of code for the loop() function which provides the main functionality and runs over-and-over forever.The code for the Computerless Arduino is still quite experimental, but it's all here. As always, Labs work is open source and creative commons, so if you're curious to play with it yourself or build derivative work, have at it! Arduino code with realtime interpreter for the Teensy2.0 Display code written in 4DGL for the uLCD-144(GFX) Protocol for communication between the Arduino and the displayWe're still noodling on where to take it next, but there definitely seems to be something interesting about non-conventional approaches to embedded development.
ComputerlessArduino_12:33: error: no matching function for call to 'HardwareSerial::HardwareSerial()'K:\arduino\arduino-0022\hardware\arduino\cores\arduino/HardwareSerial.h:50: note: candidates are: HardwareSerial::HardwareSerial(ring_buffer*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t)K:\arduino\arduino-0022\hardware\arduino\cores\arduino/HardwareSerial.h:32: note: HardwareSerial::HardwareSerial(const HardwareSerial&)
You can find the code for HardwareSerial in the Arduino distribution.I'm guessing this was written for an earlier version of Arduino.
HardwareSerial Uart = HardwareSerial();
the line it stops dead at and hilites is:
Quotethe line it stops dead at and hilites is:That agrees with what the compiler was telling you. The HardwareSerial class has two constructors - one that takes 11 values, and one that takes an existing instance (the copy constructor). It does not have a no-argument constructor, so that code is (now) invalid.
If I could use my android phone to edit, compile, and upload to arduino via bluetooth, that would be awesome. Too bad google and oracle are still fighting over some java issues and we probably don't get java on android very soon.