{"id":8269,"date":"2022-02-27T22:48:25","date_gmt":"2022-02-27T22:48:25","guid":{"rendered":"https:\/\/www.fambach.net\/?p=8269"},"modified":"2022-03-01T07:50:00","modified_gmt":"2022-03-01T07:50:00","slug":"balken-im-crystal-lcd-retro-style","status":"publish","type":"post","link":"https:\/\/www.fambach.net\/en\/balken-im-crystal-lcd-retro-style\/","title":{"rendered":"Bars in Crystal LCD Retro Style"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 ez-toc-wrap-left counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Contents\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewbox=\"0 0 24 24\" version=\"1.2\" baseprofile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Zweck\" >Purpose<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Kompatibilitat\" >Kompatibilit&auml;t<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Controller\" >Controller<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#TFT_Displays\" >TFT displays<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Arduino_Bibliothekar\" >Arduino Library<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Git_Download\" >Download Git<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Probleme\" >Problems<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Fazit\" >Conclusion<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Andere_Biliotheken\" >Other libraries<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/#Weitere_Quellen\" >Further sources<\/a><\/li><\/ul><\/nav><\/div>\n\n<p class=\"wp-block-paragraph\">Ich bin immer wieder verwundert, dass es doch ein paar Leser hier im Block gibt. Neulich schrieb mich Siegfried an und meinte er m&ouml;chte ein paar Balken auf einem Cristal LCD Display darstellen, ob ich das schon mal gemacht habe. Die Antwort war nein sollte sich aber bald &auml;ndern. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Facts<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Parts list<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Arduino<a href=\"https:\/\/www.fambach.net\/en\/arduino-uno\/\" data-type=\"post\" data-id=\"447\"> One<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.fambach.net\/en\/arduino-lcd-keypad-shield\/\" data-type=\"post\" data-id=\"1380\">Arduino LCD Shield<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Areas of application<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Darstellungen von Messerwerten in abh&auml;nigkeit der Zeit<\/li><li>Equaliser visualisation<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Views<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">It's there at the end \ud83d\ude09 <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Analyse<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Such an LCD display consists of several rows and columns. Only one character fits into each row and column combination. <\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<div class=\"wp-block-group\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1185\" height=\"498\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/CrystalLCDDisplaRowsCols.jpg\" alt=\"\" class=\"wp-image-8278\"><figcaption>LCD Crystal Display \u2013 Construction<\/figcaption><\/figure>\n\n\n\n\n\n\n<p class=\"wp-block-paragraph\">Die Pixel eines Zeichens k&ouml;nnen nicht einzeln angesprochen werden, es ist aber m&ouml;glich eigenen Zeichen zu erstellen. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"656\" height=\"546\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/CrystalLCDDisplaCharacters.jpg\" alt=\"\" class=\"wp-image-8276\"><figcaption> LCD Crystal Display \u2013 Structure of a Character<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Somit habe ich f&uuml;r jeden F&uuml;llstand ein Zeichen erstellt. Das Leere Zeichen habe ich weggelassen weil bei meinem Display das gleiche wie bei C8 angezeigt wurde und da ich vorher das Display l&ouml;sche, macht es keinen Unterschied.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1120\" height=\"271\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/CrystalLCDDisplaNewCharacters.jpg\" alt=\"\" class=\"wp-image-8277\"><figcaption> LCD Cristal Display &#8211; Neue Zeichen f&uuml;r die Balken<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Um beide Zeilen nutzen zu k&ouml;nnen m&uuml;ssen die jeweiligen Ergebnisse zweigeteilt (f&uuml;r mehr Zeilen sind mehr Teilungen n&ouml;tig) werden, ist die untere Zeile voll (also C8) geht es weiter mit der oberen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"406\" height=\"393\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/CrystalLCDDisplaTwoLineBar.jpg\" alt=\"\" class=\"wp-image-8279\"><figcaption> LCD Cristal Display &#8211; Balken &uuml;ber mehr als eine Zeile<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Die Werte f&uuml;r jeden Balken halten wir in einem Array vor. Das Array wird dann direkt in die Balken umgewandelt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Programming<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Libraries<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The library for the display is already included in the Arduino GUI.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Test programme<\/h3>\n\n\n\n<script>\nvar project = \"sfambach\/arduino\/tree\/master\/projects\/LcdBarChart\";\nvar file = \"\/LcdBarChart.ino\";\nvar test = project + file;\nvar startAt = 7;\nvar endAt = 0;\n\n\ndocument.write('<div a class=\"wp-block-file\" ><a a class=\"wp-block-file__button\" href=\"https:\/\/github.com\/'+project+'\" target=\"_blank\">Link zu Git');\ndocument.write('<a a class=\"wp-block-file__button\" href=\"https:\/\/downgit.github.io\/#\/home?url=https:\/\/github.com\/'+project+'\" target=\"_blank\">Download des Projektes mit DownGit<\/script><p>&#8218;);\n\ndocument.write(&#8218;<\/p><div style=\"font-size:1vw\">&#8218;);\ndocument.write(&#8218;<script src=\"https:\\\/\\\/gist-it-dot-helloid-roadmap.ew.r.appspot.com\\\/github.com\\\/'+test+'\\?slice='+startAt+':'+endAt+'\"><\\\/script>');\ndocument.write('<\/script><p>&#8218;);\n\n\n\n\n<\/p><p class=\"wp-block-paragraph\">Das Testprogramm generiert alle 4 Sekunden einen neuen zuf&auml;lligen Wert. Mit jedem neuen Wert werden die Ergebnisse im Array um eins nach rechts geschoben. Ist das Array voll wird der letzte Wert verworfen.<\/p><p class=\"wp-block-paragraph\">And that's how it looks:<\/p><figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Bar chart on crystal LCD display\" width=\"840\" height=\"473\" src=\"https:\/\/www.youtube.com\/embed\/k7CsoKZ5hLU?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<figcaption> LCD Cristal Display &#8211;  Funktionsvideo leider etwas lang \ud83d\ude09<\/figcaption><\/figure><h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Probleme\"><\/span>Problems<span class=\"ez-toc-section-end\"><\/span><\/h2><h3 class=\"wp-block-heading\">Quirky fragments in the custom characters<\/h3><p class=\"wp-block-paragraph\">Wenn ich die Reihenfolge im Setup &auml;nderere, also bevor ich etwas auf dem display ausgegeben habe die Benutzerdefinierten Zeichen hinzuf&uuml;ge, bekomme ich diese Fragmente. Ich nehme an das Display Init hat in der Bibliothek noch einen Fehler und erst mit der ersten Ausgabe ist es richtig initialisiert.<\/p><h2 class=\"wp-block-heading\">Miscellaneous<\/h2><p class=\"wp-block-paragraph\">nix &#8230;<\/p><h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Fazit\"><\/span>Conclusion<span class=\"ez-toc-section-end\"><\/span><\/h2><p class=\"wp-block-paragraph\">Nachdem die Funktion des Displays ersteimal klar war und ich wusste dass ich &uuml;ber die benutzerdefinierten Zeichen gehen muss, war es fast ein Kinderspiel. Die Daten in einem Array zu organisieren bietet eine gute M&ouml;glichkeit sie sp&auml;ter zu manipulieren und in Schleifen abzuarbeiten. Ich hoffe es gef&auml;llt euch, vielen Dank an Siegfried f&uuml;r die Idee, solltet ihr noch Erweiterungsw&uuml;nsche oder Fragen haben lasst einen Kommentar da.<\/p><h2 class=\"wp-block-heading\">Verwandte Beitr&auml;ge<\/h2><ul class=\"display-posts-listing\">\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/preview-rundes128-zoll-tft-lcd-display\/\">Preview \u2013 Round 1.28 inch TFT LCD Display<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/balken-im-crystal-lcd-retro-style\/\">Bars in Crystal LCD Retro Style<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/tft_espi-display-bibliothek\/\">TFT_eSPI Display Library<\/a><\/li>\n<\/ul>\n\n\n\n<\/p><h2 class=\"wp-block-heading\">Sources<\/h2><p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.arduino.cc\/en\/Reference\/LiquidCrystal\">https:\/\/www.arduino.cc\/en\/Reference\/LiquidCrystal<\/a><\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/de.wikipedia.org\/wiki\/Fl%C3%BCssigkristallanzeige\">https:\/\/de.wikipedia.org\/wiki\/Fl%C3%BCssigkristallanzeige<\/a><\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/maxpromer.github.io\/LCD-Character-Creator\/\">https:\/\/maxpromer.github.io\/LCD-Character-Creator\/<\/a><\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.hackster.io\/jacoslabbert99\/arduino-lcd-icons-custom-characters-548f38\">https:\/\/www.hackster.io\/jacoslabbert99\/arduino-lcd-icons-custom-characters-548f38<\/a><\/p><figure class=\"wp-block-embed is-type-wp-embed is-provider-engineers-garage wp-block-embed-engineers-garage\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"RRlFrLCe2L\"><a href=\"https:\/\/www.engineersgarage.com\/making-custom-characters-on-lcd-using-arduino\/\">Creating and displaying custom characters on an Arduino Uno with a 16x2 LCD<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"\u201cMaking and displaying custom characters on an LCD with Arduino Uno and a 16x2 LCD\u201d - Engineers Garage\" src=\"https:\/\/www.engineersgarage.com\/making-custom-characters-on-lcd-using-arduino\/embed\/#?secret=xIoARxUHex#?secret=RRlFrLCe2L\" data-secret=\"RRlFrLCe2L\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/figure><figure class=\"wp-block-embed is-type-wp-embed is-provider-stefan-039-s-webblog wp-block-embed-stefan-039-s-webblog\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"v6ahw2CIEi\"><a href=\"https:\/\/www.fambach.net\/en\/arduino-lcd-keypad-shield\/\">Arduino LCD Keypad Shield<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"\u201eArduino LCD Keypad Shield \u2014 Stefan&#039;s Weblog\" src=\"https:\/\/www.fambach.net\/arduino-lcd-keypad-shield\/embed\/#?secret=v6ahw2CIEi\" data-secret=\"v6ahw2CIEi\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/figure><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p><p class=\"wp-block-paragraph\"><\/p>","protected":false},"excerpt":{"rendered":"<p>Ich bin immer wieder verwundert, dass es doch ein paar Leser hier im Block gibt. Neulich schrieb mich Siegfried an und meinte er m&ouml;chte ein paar Balken auf einem Cristal LCD Display darstellen, ob ich das schon mal gemacht habe. Die Antwort war nein sollte sich aber bald &auml;ndern. Fakten Teileliste Arduino Uno Arduino LCD &#8230;<\/p>\n<a href=\"https:\/\/www.fambach.net\/en\/espressif-idf-tasks\/\" class=\"read-more-link\">Carry on reading <span class=\"screen-reader-text\">\"Espressif IDF &#8211; Tasks\"<\/span> <span class=\"meta-nav\">\u2192<\/span><\/a>","protected":false},"author":1,"featured_media":8282,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"no","_lmt_disable":"no","footnotes":""},"categories":[175,340],"tags":[29,557,556,138,137,111],"class_list":["post-8269","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arduino-gui","category-lcd","tag-arduino","tag-crystal","tag-crystel","tag-display","tag-lcd","tag-shield","penguin-post","penguin-post-not-sticky"],"modified_by":"sfambach","_links":{"self":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/8269","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/comments?post=8269"}],"version-history":[{"count":12,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/8269\/revisions"}],"predecessor-version":[{"id":8292,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/8269\/revisions\/8292"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/media\/8282"}],"wp:attachment":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/media?parent=8269"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/categories?post=8269"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/tags?post=8269"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}