OrnamentEnglish: Difference between revisions

From BlinkenArea Wiki
Jump to: navigation, search
No edit summary
No edit summary
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
__NOEDITSECTION__
__NOEDITSECTION__
{{InfoboxEnglish
{{InfoboxEnglish
|Jahr=
|Name=Ornament
|Pixel=
|Bild=Ornament14_mini.jpg
|Jahr=2006
|Pixel=16
|Farben=2
|Leuchtmittel=16-segment LED display
|Leistung=
|Leistung=
|Kontakt= [[User:ArneRossius|Arne Rossius]]
|Kontakt= [[User:ArneRossius|Arne Rossius]]
|Webseite=
|Webseite=
}}
}}
{{FlagDe|target=Ornament}}
''[[Projects|back to summary]]''


The "ornament" is a very simple blinking project consisting of only 2 parts and no circuit board. A microcontroller displays a sequence of letters on a 16 segment LED display, thus communicating a short text to the observer. The idea and the name were stolen from [http://www.evilmadscientist.com/article.php/ledholiday Evil Mad Scientist Laboratories], but the software is of my own making since I didn't like it that you couldn't change the displayed text at any time.
The "ornament" is a very simple blinking project consisting of only 2 parts and no circuit board. A microcontroller displays a sequence of letters on a 16 segment LED display, thus communicating a short text to the observer. The idea and the name were stolen from [http://www.evilmadscientist.com/article.php/ledholiday Evil Mad Scientist Laboratories], but the software is of my own making since I didn't like it that you couldn't change the displayed text at any time.
Line 14: Line 16:
== Assembly ==
== Assembly ==


[[Image:ornament22.jpg|thumb]]
The software for my version is available in two variants - one for the old GDR displays (VQB201C, maybe others with similar names) and one for the slightly bigger Kingbright displays available nowadays. The text and the speed can be changed using a simple RS232 cable with no additional components, just connect ground and TxD to the AVR. Because of this very simple method, it is possible that the transmission may not work with all serial ports (the LED on the controller's input pin prevents the signal level reaching a low enough voltage when using a weak serial port - especially red displays are a problem here). Some ports also need a hardware handshaking simulation, you can achieve this by connecting pins 1, 4 and 6 as well as 7 and 8 together (pin numbers given for a 9-pin connector).
The software for my version is available in two variants - one for the old GDR displays (VQB201C, maybe others with similar names) and one for the slightly bigger Kingbright displays available nowadays. The text and the speed can be changed using a simple RS232 cable with no additional components, just connect ground and TxD to the AVR. Because of this very simple method, it is possible that the transmission may not work with all serial ports (the LED on the controller's input pin prevents the signal level reaching a low enough voltage when using a weak serial port - especially red displays are a problem here). Some ports also need a hardware handshaking simulation, you can achieve this by connecting pins 1, 4 and 6 as well as 7 and 8 together (pin numbers given for a 9-pin connector).


== Programming ==
== Programming ==
'''If you enconter problems when programming, try using old batteries!''' After finishing programming, put in the fresh batteries again.


The text is being programmed by connecting the serial cable before applying power to the controller. If the text display starts anyway, either the contacts are interchanged or the serial port is too weak. If the connection succeeds, you can send the following commands with 1200 Baud (8 data bits, 1 stop bit):
The text is being programmed by connecting the serial cable before applying power to the controller. If the text display starts anyway, either the contacts are interchanged or the serial port is too weak. If the connection succeeds, you can send the following commands with 1200 Baud (8 data bits, 1 stop bit):
Line 22: Line 27:
* set display duration of each character (in 1/100 seconds): <ESC> D <3 digit value> <ENTER>
* set display duration of each character (in 1/100 seconds): <ESC> D <3 digit value> <ENTER>
* set pause between two characters (in 1/100 seconds): <ESC> P <3 digit value> <ENTER>
* set pause between two characters (in 1/100 seconds): <ESC> P <3 digit value> <ENTER>
* change to text display: &lt;ESC&gt; &lt;ESC&gt; &lt;ENTER&gt; or &lt;ESC&gt; Q &lt;ENTER&gt; or &lt;CTRL-D&gt; (or just remove the <p align="justify">connection to the PC and disconnect the battery for a short while)
* set brightness (PSA08-11 only, values 1 to 10): &lt;ESC&gt; B &lt;3 digit value&gt; &lt;ENTER&gt;
* change to text display: &lt;ESC&gt; &lt;ESC&gt; &lt;ENTER&gt; or &lt;ESC&gt; Q &lt;ENTER&gt; or &lt;CTRL-C&gt; (or just remove the connection to the PC and disconnect the battery for a short while)
&lt;ENTER&gt; means either &lt;CR&gt; or &lt;LF&gt; or even both (as an empty string will be ignored), &lt;CTRL-D&gt; can also be used. Instead of the uppercase letters, lowercase is also possible. The 3 digit values must be 3 digits long (use 010 instead of 10) and must be in the range of 001 to 255 (not checked by the software!). Other commands than the ones described above will be ignored.</p>
&lt;ENTER&gt; means either &lt;CR&gt; or &lt;LF&gt; or even both (as an empty string will be ignored), &lt;CTRL-D&gt; can also be used. Instead of the uppercase letters, lowercase is also possible. The 3 digit values must be 3 digits long (use 010 instead of 10) and must be in the range of 001 to 255 (not checked by the software!). Other commands than the ones described above will be ignored.</p>


Line 28: Line 34:


* [[:Image:Ornament.png|Schematic]] for both versions
* [[:Image:Ornament.png|Schematic]] for both versions
* [[:Image:Ornament.brd|"Layouts"]] for Eagle, please note that the controller is mounted on the solder side!
* [[:Media:Ornament.brd|"Layouts"]] for Eagle, please note that the controller is mounted on the solder side!
* [[:Image:Ornament.zip|AVR Firmware v0.8]] (assembly code and hexfile)
* [[:Media:Ornament.zip|AVR Firmware v0.8]] (assembly code and hexfile)
* [[:Media:Ornament-1.0.zip|AVR Firmware v1.0]] (assembly code and hexfile)
* [[:Media:Ornament-instrux-new.pdf|Instructions for Ornament]]
* [[:Media:Ornament-programmer-instrux-new.pdf|Instructions for programmer cable]]


== Photos ==
== Photos ==


[http://arne.blinkenarea.org/ornament/gallery.htm Gallery] of this project and [[OrnaMatrixEnglish|OrnaMatrix]].
[http://arne.blinkenarea.org/ornament/gallery.htm Gallery] of this project and [[OrnaMatrixEnglish|OrnaMatrix]].
[[Category:Projects]]

Latest revision as of 19:05, 13 January 2013

project overview
Zur deutschsprachigen Version dieser Seite
Ornament14 mini.jpg
Year 2006
Number of pixels 16
Grayscales / Colors 2
Illuminant 16-segment LED display
Power input
Contact person Arne Rossius
Project website

The "ornament" is a very simple blinking project consisting of only 2 parts and no circuit board. A microcontroller displays a sequence of letters on a 16 segment LED display, thus communicating a short text to the observer. The idea and the name were stolen from Evil Mad Scientist Laboratories, but the software is of my own making since I didn't like it that you couldn't change the displayed text at any time.

Assembly

Ornament22.jpg

The software for my version is available in two variants - one for the old GDR displays (VQB201C, maybe others with similar names) and one for the slightly bigger Kingbright displays available nowadays. The text and the speed can be changed using a simple RS232 cable with no additional components, just connect ground and TxD to the AVR. Because of this very simple method, it is possible that the transmission may not work with all serial ports (the LED on the controller's input pin prevents the signal level reaching a low enough voltage when using a weak serial port - especially red displays are a problem here). Some ports also need a hardware handshaking simulation, you can achieve this by connecting pins 1, 4 and 6 as well as 7 and 8 together (pin numbers given for a 9-pin connector).

Programming

If you enconter problems when programming, try using old batteries! After finishing programming, put in the fresh batteries again.

The text is being programmed by connecting the serial cable before applying power to the controller. If the text display starts anyway, either the contacts are interchanged or the serial port is too weak. If the connection succeeds, you can send the following commands with 1200 Baud (8 data bits, 1 stop bit):

  • set text: <text (max. 63 characters)> <ENTER>
  • set display duration of each character (in 1/100 seconds): <ESC> D <3 digit value> <ENTER>
  • set pause between two characters (in 1/100 seconds): <ESC> P <3 digit value> <ENTER>
  • set brightness (PSA08-11 only, values 1 to 10): <ESC> B <3 digit value> <ENTER>
  • change to text display: <ESC> <ESC> <ENTER> or <ESC> Q <ENTER> or <CTRL-C> (or just remove the connection to the PC and disconnect the battery for a short while)

<ENTER> means either <CR> or <LF> or even both (as an empty string will be ignored), <CTRL-D> can also be used. Instead of the uppercase letters, lowercase is also possible. The 3 digit values must be 3 digits long (use 010 instead of 10) and must be in the range of 001 to 255 (not checked by the software!). Other commands than the ones described above will be ignored.

Schematic/"Layout"/Software

Photos

Gallery of this project and OrnaMatrix.