{"id":412,"date":"2017-11-24T23:10:58","date_gmt":"2017-11-24T22:10:58","guid":{"rendered":"http:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=412"},"modified":"2017-12-31T00:57:24","modified_gmt":"2017-12-30T23:57:24","slug":"43-lcd_eadog-library-stm32f4","status":"publish","type":"page","link":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/43-lcd_eadog-library-stm32f4\/","title":{"rendered":"43-LCD_EADOG-Library (STM32F4)"},"content":{"rendered":"<p><div id=\"nav-below\" class=\"navigation\"><div class=\"nav-previous\"><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/42-iwdg-library-stm32f4\/\" title=\"42-IWDG-Library (STM32F4)\"><span class=\"meta-nav\">\u2190<\/span> 42-IWDG-Library (STM32F4)<\/a><\/div><\/div><!-- #nav-below --><div id=\"nav-below\" class=\"navigation\"><div class=\"nav-next\"><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/44-udp_server-library-stm32f4\/\" title=\"44-UDP_Server-Library (STM32F4)\">44-UDP_Server-Library (STM32F4) <span class=\"meta-nav\">&rarr;<\/span><\/a><\/div><\/div><!-- #nav-below --><\/p>\n<p>Mit dieser Library k\u00f6nnen verschiedene Grafik-Displays der EA-DOG-Serie (von Electronic Assembly)\u00a0benutzt werden.<\/p>\n<p>Der Einfachheit halber habe ich nur eine einzige Library geschrieben und man muss im H-File sein Display per Define ausw\u00e4hlen.<\/p>\n<p>Im Moment werden 3 Displays unterst\u00fctzt :<br \/>\nChip : ST7565 [Display =\u00a0EA-DOGM_132_5 mit 132 x 32 Pixel]<br \/>\nChip : UC1610 [Display =\u00a0EA-DOG_160-7 mit 160 x 104 Pixel]<br \/>\nChip : UC1701 [Display =\u00a0EA-DOGS_102_6 mit 102 x 64 Pixel]<\/p>\n<p>Ein 8\u00d75-Pixel-Font ist auch dabei, um Texte ausgeben zu k\u00f6nnen.<\/p>\n<p>Die Displays werden im 4-Wire-SPI-Mode betrieben und aus dem Grund wird noch eine SPI-Library ben\u00f6tigt und im Mode-3 initialisiert.<\/p>\n<p>Die GPIO-Pins f\u00fcr ChipSelect und CD-Pin k\u00f6nnen im H-File frei eingestellt werden.<\/p>\n<p><strong>Beispielbilder :<\/strong><\/p>\n<div id=\"gallery-1\" class=\"gallery galleryid-1734 gallery-columns-3 gallery-size-thumbnail\">\n<dl class=\"gallery-item\">\n<dt class=\"gallery-icon\"><a title=\"eadog1\" href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/eadog1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-thumbnail\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/eadog1-150x150.jpg\" alt=\"Display1\" width=\"150\" height=\"150\" \/><\/a><\/dt>\n<dd class=\"wp-caption-text gallery-caption\">Display1<\/dd>\n<\/dl>\n<dl class=\"gallery-item\">\n<dt class=\"gallery-icon\"><a title=\"eadog2\" href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/eadog2.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-thumbnail\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/eadog2-150x150.jpg\" alt=\"Display2\" width=\"150\" height=\"150\" \/><\/a><\/dt>\n<dd class=\"wp-caption-text gallery-caption\">Display2<\/dd>\n<\/dl>\n<p>&nbsp;<\/p>\n<\/div>\n<p><strong>Benutzte Pins :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">SCK an PB13\r\nSDA an PB15\r\nChipSelect an PA8\r\nCD an PB2<\/pre>\n<p><strong>Voraussetzungen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">Benutzte Module der CooCox-IDE : GPIO\r\nBenutzte Librarys : STM32_UB_SPI2<\/pre>\n<p><strong>Funktionen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">ErrorStatus UB_EADOG_Init(void);                                     \/\/ zum Init vom Display\r\nvoid UB_EADOG_Clear(void);                                           \/\/ zum l\u00f6schen vom Display\r\nvoid UB_EADOG_DrawByte(uint8_t xpos, uint8_t ypage, uint8_t wert);   \/\/ um ein einzelnes Byte zu zeichnen\r\nvoid UB_EADOG_DrawChar(uint8_t xpos, uint8_t ypage, uint8_t ascii);  \/\/ zum ausgeben von einem Zeichen\r\nvoid UB_EADOG_DrawString(uint8_t xpos, uint8_t ypage, char *ptr);    \/\/ zum ausgeben von einem String<\/pre>\n<p><strong>Beispiel :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">\/\/--------------------------------------------------------------\r\n\/\/ File     : main.c\r\n\/\/ Datum    : 29.05.2013\r\n\/\/ Version  : 1.0\r\n\/\/ Autor    : UB\r\n\/\/ EMail    : mc-4u(@)t-online.de\r\n\/\/ Web      : www.mikrocontroller-4u.de\r\n\/\/ CPU      : STM32F4\r\n\/\/ IDE      : CooCox CoIDE 1.7.0\r\n\/\/ Module   : CMSIS_BOOT, M4_CMSIS_CORE\r\n\/\/ Funktion : Demo der LCD EADOG-Library\r\n\/\/ Hinweis  : Diese zwei Files muessen auf 8MHz stehen\r\n\/\/              \"cmsis_boot\/stm32f4xx.h\"\r\n\/\/              \"cmsis_boot\/system_stm32f4xx.c\"\r\n\/\/--------------------------------------------------------------\r\n\r\n#include \"main.h\"\r\n#include \"stm32_ub_eadog.h\"\r\n\r\nint main(void)\r\n{\r\n  SystemInit(); \/\/ Quarz Einstellungen aktivieren\r\n\r\n  \/\/ init vom EADOG Display\r\n  UB_EADOG_Init();\r\n\r\n  \/\/ l\u00f6schen vom Display\r\n  UB_EADOG_Clear();\r\n\r\n  \/\/ zwei Zeilen Text schreiben\r\n  UB_EADOG_DrawString(0,0,\"Hallo\");\r\n  UB_EADOG_DrawString(0,1,\"Leute\");\r\n\r\n  while(1)\r\n  {\r\n\r\n  }\r\n}\r\n<\/pre>\n<p>Hier die Library zum\u00a0<strong>Download :<\/strong><\/p>\n<p><a href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/ub_stm32f4_lcd_eadog_v100.zip\">ub_stm32f4_lcd_eadog_v100<\/a><\/p>\n<p>Hier der komplette CooCox-Projektordner zum\u00a0<strong>Download :<\/strong><\/p>\n<p><a href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/Demo_43_LCD_EADOG.zip\">Demo_43_LCD_EADOG<\/a><\/p>\n<h3 id=\"comments-title\">5 Antworten auf <em>43-LCD_EADOG-Library (STM32F4)<\/em><\/h3>\n<ol class=\"commentlist\">\n<li id=\"li-comment-879\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-879\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/af5be9fa3f95b3ec9c424ed130b7f2d3?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Cortex-Einsteiger<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">13. Oktober 2013 um 14:07<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Demo getestet mit UC1701:<br \/>\ndefine \u00e4ndern -&gt; compilieren -&gt; flashen -&gt; l\u00e4uft <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_smile.gif\" alt=\":)\" \/><br \/>\neinfacher geht nicht mehr, danke!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1422\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1422\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6bfecef152dd31b50c176354fce35dac?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">\u00b5C Einsteiger<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">27. Februar 2014 um 18:55<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>hallo,<\/p>\n<p>ich habe hier ein STM32F4-Discovery und ein EA DOGXL160x104 und weiss leider nicht so recht, wie ich dies in betrieb nehmen kann. welche pins des display m\u00fcssen wie beschaltet werden, ausser den 4 von der library verwendeten?<\/p>\n<p>super arbeit,<br \/>\ngr\u00fc\u00dfe<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1424\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1424\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">27. Februar 2014 um 19:36<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>hier gibts das Datenblatt :<br \/>\n<a href=\"http:\/\/www.lcd-module.de\/deu\/pdf\/grafik\/dogxl160-7.pdf\" rel=\"nofollow\">http:\/\/www.lcd-module.de\/deu\/pdf\/grafik\/dogxl160-7.pdf<\/a><br \/>\nAuf Seite 4 ist der 4-Wire-8Bit-SPI-Mode beschrieben mit Grundbeschaltung. Du brauchst 2 externe Kondensatoren 2,2uF und einen Block-C. Falls du auch die Hintergrundbeleuchtung willst, die Vorwiderst\u00e4nde der LEDs nicht vergessen.<br \/>\n(Reset kannst du auf Vcc legen)<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1822\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-1822\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f86849525c5dcb3d872f8b6bea58aa95?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Dmitry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">28. Mai 2014 um 15:03<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>What about RESET (RST) pin? It\u2019s not mentioned in the library\u2026<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1825\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1825\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">30. Mai 2014 um 11:02<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>because i dont used the reset pin. I tied it to Vcc. If you want, connect a gpio and make a short reset pulse (about 10ms) in the init function.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Mit dieser Library k\u00f6nnen verschiedene Grafik-Displays der EA-DOG-Serie (von Electronic Assembly)\u00a0benutzt werden. Der Einfachheit halber habe ich nur eine einzige Library geschrieben und man muss im H-File sein Display per Define ausw\u00e4hlen. Im Moment werden 3 Displays unterst\u00fctzt : Chip &hellip; <a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/43-lcd_eadog-library-stm32f4\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":144,"menu_order":43,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[128],"tags":[191,139,9,7],"class_list":["post-412","page","type-page","status-publish","hentry","category-stm32f4","tag-ea-dog","tag-lcd","tag-library","tag-stm32f4"],"_links":{"self":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/412","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/comments?post=412"}],"version-history":[{"count":5,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/412\/revisions"}],"predecessor-version":[{"id":1750,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/412\/revisions\/1750"}],"up":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/144"}],"wp:attachment":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/media?parent=412"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/categories?post=412"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/tags?post=412"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}