{"id":399,"date":"2017-11-24T22:03:18","date_gmt":"2017-11-24T21:03:18","guid":{"rendered":"http:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=399"},"modified":"2017-12-31T19:22:58","modified_gmt":"2017-12-31T18:22:58","slug":"40-http_server-library-stm32f4","status":"publish","type":"page","link":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=399","title":{"rendered":"40-HTTP_Server-Library (STM32F4)"},"content":{"rendered":"<p><div id=\"nav-below\" class=\"navigation\"><div class=\"nav-previous\"><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=397\" title=\"39-IRMP-Library (STM32F4)\"><span class=\"meta-nav\">\u2190<\/span> 39-IRMP-Library (STM32F4)<\/a><\/div><\/div><!-- #nav-below --><div id=\"nav-below\" class=\"navigation\"><div class=\"nav-next\"><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=408\" title=\"41-RTC-Library (STM32F4)\">41-RTC-Library (STM32F4) <span class=\"meta-nav\">&rarr;<\/span><\/a><\/div><\/div><!-- #nav-below --><\/p>\n<p>Mit dieser Library kann man mit dem STM32F4-Discovery-Board und einem extern angeschlossenen PHY (von Texas Instruments \u201cDP83848C\u201d) und einer RJ45-Buchse einen HTTP-Webserver realisieren.<\/p>\n<p>Die Webseite(n) m\u00fcssen zuvor mit einem PC-Programm in ein C-File gewandelt werden, das dann im Sourcecode eingebunden wird. Eine Anleitung dazu findet sich im Netz.<\/p>\n<p>Es k\u00f6nnen CGI-Befehle in die Webseite integriert werden um z.B. GPIOs zu schalten oder Messwerte auszulesen. (Im Beispiel k\u00f6nnen die 4 LEDs vom Board geschaltet werden und der Spannungswert an PA3 wird zyklisch angezeigt)<br \/>\nDiese Funktionen k\u00f6nnen auch deaktiviert werden, wenn man sie nicht braucht.<\/p>\n<p>Als IP-Stack wird der OpenSource \u201cLwIP\u201d in der Version 1.3.2 benutzt. Und als Schnittstelle zum PHY wird der RMII-Mode benutzt (der MII-Mode funktioniert beim Discovery-Board nicht, weil die ben\u00f6tigten Pins nicht vorhanden sind)<\/p>\n<p>Falls DHCP aktiviert ist, holt sich das Modul die IP-Adresse vom Router, falls nicht kann eine statische IP im H-File eingetragen werden.<\/p>\n<p><strong>BUG HINWEIS<\/strong> : im File \u201cstm32f4x7_eth_bsp.c\u201d wird bei der Initialisierungs-Funktion \u201cETH_MACDMA_Config\u201d ein Software-Reset ausgel\u00f6st und mit einer While-Schleife gewartet bis der Reset fertig ist. Bei meinen Tests hat diese Funktion nicht immer sauber funktioniert (k.A. warum) und blieb in einer Endlosschleife h\u00e4ngen. Ich habe dann als Workaround einen Timeout-Counter hinzugef\u00fcgt.<br \/>\n(laut suche im Internet ist dieser Fehler bei mir kein Einzelfall)<br \/>\nAbhilfe beim auftreten des Fehlers waren bei mir :<br \/>\n1. nochmal am Board einen Reset per Push-Button ausl\u00f6sen.<br \/>\n2. Die Ethernet-Clock-Enable Zeile NACH dem Reset machen (und nicht davor).<br \/>\n3. Den GPIO PA8 als MCO zu initialisieren (obwohl der gar nicht benutzt wird)<\/p>\n<p><strong>Beispielbilder :<\/strong><\/p>\n<div id=\"gallery-1\" class=\"gallery galleryid-1529 gallery-columns-3 gallery-size-thumbnail\">\n<dl class=\"gallery-item\">\n<dt class=\"gallery-icon\"><a title=\"stm_eth_sch\" href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/stm_eth_sch.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-thumbnail\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/stm_eth_sch-150x150.jpg\" alt=\"Schaltplan\" width=\"150\" height=\"150\" \/><\/a><\/dt>\n<dd class=\"wp-caption-text gallery-caption\">Schaltplan<\/dd>\n<\/dl>\n<dl class=\"gallery-item\">\n<dt class=\"gallery-icon\"><a title=\"http_server_ping\" href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/http_server_ping.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-thumbnail\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/http_server_ping-150x135.jpg\" alt=\"Ping vom Modul\" width=\"150\" height=\"135\" \/><\/a><\/dt>\n<dd class=\"wp-caption-text gallery-caption\">Ping vom Modul<\/dd>\n<\/dl>\n<dl class=\"gallery-item\">\n<dt class=\"gallery-icon\"><a title=\"http_server_html\" href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/http_server_html.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-thumbnail\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/http_server_html-150x150.jpg\" alt=\"Startseite vom Webserver\" width=\"150\" height=\"150\" \/><\/a><\/dt>\n<dd class=\"wp-caption-text gallery-caption\">Startseite vom Webserver<\/dd>\n<\/dl>\n<p>&nbsp;<\/p>\n<dl class=\"gallery-item\">\n<dt class=\"gallery-icon\"><a title=\"http_server_adc\" href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/http_server_adc.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-thumbnail\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/05\/http_server_adc-150x150.jpg\" alt=\"ADC Anzeige\" width=\"150\" height=\"150\" \/><\/a><\/dt>\n<dd class=\"wp-caption-text gallery-caption\">ADC Anzeige<\/dd>\n<\/dl>\n<p>&nbsp;<\/p>\n<\/div>\n<p><strong>Benutzte Pins :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">PA1  = RMII_Ref_Clk       PC1 = ETH_MDC\r\nPA2  = ETH_MDIO           PC4 = RMII_RXD0\r\nPA7  = RMII_CRS_DV        PC5 = RMII_RXD1\r\nPB11 = RMII_TX_EN\r\nPB12 = RMII_TXD0 \r\nPB13 = RMII_TXD1\r\nPB14 = RMII_INT<\/pre>\n<p><strong>Voraussetzungen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">Benutzte Module der CooCox-IDE : GPIO, SYSCFG, EXTI, MISC\r\nBenutzte Librarys : keine<\/pre>\n<p><strong>Enumerationen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">typedef enum {\r\n  HTTP_SERVER_OK =0,\r\n  HTTP_SERVER_ETH_MACDMA_ERR,\r\n  HTTP_SERVER_ETH_PHYINT_ERR\r\n}HTTP_SERVER_STATUS_t;<\/pre>\n<p><strong>Funktionen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">HTTP_SERVER_STATUS_t UB_HTTP_Server_Init(void);  \/\/ zum init vom Server\r\nvoid UB_HTTP_Server_Do(void);                    \/\/ muss zyklisch aufgerufen werden<\/pre>\n<p><strong>Beispiel :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">\/\/--------------------------------------------------------------\r\n\/\/ File     : main.c\r\n\/\/ Datum    : 12.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 HTTP-Server 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_http_server.h\"\r\n#include \"stm32_ub_led.h\"\r\n\r\nint main(void)\r\n{\r\n  HTTP_SERVER_STATUS_t check;\r\n\r\n  SystemInit(); \/\/ Quarz Einstellungen aktivieren\r\n\r\n  \/\/ LEDs initialisieren\r\n  UB_Led_Init();\r\n\r\n  \/\/ HTTP-Server initialisieren\r\n  check=UB_HTTP_Server_Init();\r\n  if(check==HTTP_SERVER_OK) {\r\n    \/\/ wenn Server ok\r\n    UB_Led_On(LED_GREEN);\r\n  }\r\n  else {\r\n    \/\/ bei einem Fehler\r\n    UB_Led_On(LED_RED);\r\n  }\r\n\r\n  while(1)\r\n  {\r\n    \/\/ HTTP-Server zyklisch aufrufen\r\n    UB_HTTP_Server_Do();\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_http_server_v100.zip\">ub_stm32f4_http_server_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_40_HTTP_Server.zip\">Demo_40_HTTP_Server<\/a><\/p>\n<h3 id=\"comments-title\">39 Antworten auf <em>40-HTTP_Server-Library (STM32F4)<\/em><\/h3>\n<ol class=\"commentlist\">\n<li id=\"li-comment-242\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-242\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/c3135eb4a7f9496413c33b7be6b998ba?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\">lungfish<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">21. Mai 2013 um 19:10<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Erstmal danke f\u00fcr den Code. Ich habe bislang kein anderes Coocox \/ STM32F4 \/ Ethernet Beispiel gefunden, das auf Anhieb compilierbar w\u00e4re! Meine Testplattform ist ein Olimex STM32F4-E407. Leider hat uns Olimex einen KS8721 auf die F4-Boards gesetzt, so dass es erstmal gehei\u00dfen hat \u201csuch den Unterschied\u201d.<br \/>\nDer gr\u00f6\u00dfte Unterschied liegt im der RMII-Interrupt Behandlung. Die Register des KS8721 bieten mehr Interrupt Quellen und Flags. Zum Testen habe das Interrupt-Handling erstmal deaktiviert.<br \/>\nZu meinem krassen Erstaunen l\u00e4uft der lwip trotzdem, komplett mit CGI.<br \/>\nNun gilt es eigene Seiten zu basteln und die Software auf Herz und Nieren zu testen.<br \/>\nNochmal \u2013 Danke f\u00fcr die Codebasis!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-244\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-244\">\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\">21. Mai 2013 um 19:38<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Kein Problem, h\u00f6rt man gerne wenn etwas gleich funktioniert. Sch\u00f6n w\u00e4re es, wenn man die Seiten von SD-Karte laden k\u00f6nnte und nicht erst wandeln und ins Flash packen m\u00fcsste. Hab aber leider im Moment andere \u201cBaustellen\u201d. Gruss<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-720\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-720\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/c3135eb4a7f9496413c33b7be6b998ba?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\">lungfish<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">22. August 2013 um 11:36<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ich habe gerade einen Bugfix-Vorschlag zum Thema SSI-Performance beim lwip geposted (langsame Abarbeitung von mehr als einem Tag). Vielleicht hilft jemandem die Info weiter:<br \/>\n<a href=\"https:\/\/savannah.nongnu.org\/bugs\/?31948\" rel=\"nofollow\">https:\/\/savannah.nongnu.org\/bugs\/?31948<\/a><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-721\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-721\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/c3135eb4a7f9496413c33b7be6b998ba?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\">lungfish<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">22. August 2013 um 11:43<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ich bin die Tage auf gewaltigen Widerstand gesto\u00dfen, als ich den HTTP-Server auf ein MountaineerETH-Board portieren wollte.<\/p>\n<p>Die Boards sind eigentlich Basis f\u00fcr .NET Gadgeteer: <a href=\"http:\/\/www.netmf.com\/gadgeteer\" rel=\"nofollow\">http:\/\/www.netmf.com\/gadgeteer<\/a><br \/>\n<a href=\"http:\/\/www.mountaineer-boards.com\/home\/ethernet-mainboard\/\" rel=\"nofollow\">http:\/\/www.mountaineer-boards.com\/home\/ethernet-mainboard\/<\/a><\/p>\n<p>Die Besonderheit ist, dass die Boards das gro\u00dfe, pinfressende MII-Interface verwenden, statt des RMII. Die PHY ist ein 78Q2123.<\/p>\n<p>Frage: hat evtl. jemand einen erfolgreichen Port durchf\u00fchren k\u00f6nnen?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1446\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-1446\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/dd40ce9113cbf3707217e78fa7919a5e?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\">Bastler<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">7. M\u00e4rz 2014 um 16:46<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ich habe den Webserver am laufen.<br \/>\nLeider sind meine Pings im Bereich von 100 \u2013 400ms.<br \/>\nIch habe den PB14 = RMII_INT nicht anngeschlossen.<br \/>\nGeht dieser an den Pin7 vom PHY? Liegt es daran?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1449\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-1449\">\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\">8. M\u00e4rz 2014 um 10:46<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ja, PB14 geht an Pin7. Keine Ahnung ob diese fehlende Leitung schuld ist. Hast du einen Router oder Switch dazwischen oder eine direkt Verbindung vom PC zum PHY ?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1548\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-1548\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f81e8032975a2f637af76a7a36ea8d41?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\">Fabi<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. April 2014 um 11:27<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo Uwe,<br \/>\ngro\u00dfes Kompliment f\u00fcr deine tolle Seite + Library. Sie hat mir schon bei vielen Projekten weiterhelfen k\u00f6nnen.<br \/>\nHabe mir nun das stmF4Discovery Board + Base Board zugelegt und dein HTTP_Server-Demoprogramm drauf geladen. Allerdings kann ich das Board nicht anpingen\u2026 Habe nur die IP Adresse auf 192.168.2.10 und das Gateway auf 192.168.2.1 ge\u00e4ndert. Den Rest so gelassen wie er ist.<br \/>\nHast du mir einen Tipp was ich falsch mache?<\/p>\n<p>Besten Dank,<br \/>\nFabi<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1549\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-1549\">\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\">12. April 2014 um 12:12<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>leuchtet die gr\u00fcne LED zum zeichen das der Server l\u00e4uft ?. H\u00e4ng die Platine mal per CrossOver-Ethernet-Kabel direkt an deinen PC (also ohne Switch oder Router) und achte darauf das dein PC auch im Adressraum 192.168.2.x liegt. Versuch dann den Ping nochmal.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1550\" class=\"comment even depth-3\">\n<div id=\"comment-1550\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f81e8032975a2f637af76a7a36ea8d41?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\">Fabi<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. April 2014 um 13:07<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<br \/>\n1. mein Fehler dass ich diese Demoversion verwendet habe\u2026 Das Base Board hat den LAN8720 verbaut.<br \/>\n2. Habe nun das Show4_Projekt aufgespielt mit SD Karte, LED Leuchtet gr\u00fcn, abermals kein PING.<br \/>\nHabe #define F4D in stm32_ub_http_server.h gesetzt. Muss ich sonst noch was beachten?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1552\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-4\">\n<div id=\"comment-1552\">\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\">14. April 2014 um 10:41<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Vorsicht der Define \u201cF4D\u201d muss in den Compiler Settings gemacht werden (weil er in mehreren Files abgefrag wird) also bei CoIDE unter \u201cConfiguration\u201d den Define \u201cF4D\u201d hinzuf\u00fcgen !! und laut einem Bugreport von \u201cHolger\u201d fehlt dann anscheined noch die Systick-Konfig, hab das aber selbst nicht gep\u00fcft.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1553\" class=\"comment even depth-5\">\n<div id=\"comment-1553\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f81e8032975a2f637af76a7a36ea8d41?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\">Fabi<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">14. April 2014 um 16:55<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Danke, Problem war mit dem korrekten Define von F4D gel\u00f6st!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-2133\" class=\"comment odd alt depth-5\">\n<div id=\"comment-2133\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/d06464174f078d01f265bf553e711ce6?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\">MartinSt<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">10. September 2014 um 16:35<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Mich w\u00fcrde nur der Vollst\u00e4ndigkeit halber interessieren, wo das #define F4D vorkommt, ich kann die Zeichenkette \u201cF4D\u201d in der Bibliothek nirgendwo finden.<br \/>\nKann jemand erkl\u00e4ren wof\u00fcr das gebraucht wird\/wurde?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-2136\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-5\">\n<div id=\"comment-2136\">\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\">10. September 2014 um 18:30<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>in meiner LIB kommt dieser Define gar nicht vor, der war im Original-Beispiel von ST vorhanden.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1834\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1834\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/793f363dd5bedac14e03b39e35b62a8e?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\">Jo<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Juni 2014 um 09:56<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Moin Moin,<\/p>\n<p>bei mir funktioniert irgendwie leider nichts. Weder IP noch MAC wird erkannt. Pingen kann ich dementsprechend auch nicht. Hab den PHY direkt \u00fcber ein Crossover an meinem Laptop. LaptopRechner \u00fcber das Crossover funktioniert.<br \/>\nPB14 = RMII_INT ist allerdings nicht angeschlossen. Ist bei meinem Phy auch nicht rausgef\u00fchrt. Ich habe mich an die Verkabelung von <a href=\"http:\/\/blog.tkjelectronics.dk\/2012\/08\/ethernet-on-stm32f4discovery-using-external-phy\/\" rel=\"nofollow\">http:\/\/blog.tkjelectronics.dk\/2012\/08\/ethernet-on-stm32f4discovery-using-external-phy\/<\/a> gehalten. Die ist bis auf PB14 identisch.<br \/>\nHab schon diverse Librarys usw. und steh nun auf dem Schlauch.<br \/>\nDie Kabell\u00e4ngen zwischen Board und PHY sind 10cm. Liegt es daran?<br \/>\nDas Board ist das normale STM32F4Discovery und als PHY wird der von Waveshare verwendet. Mit dem DP83848<\/p>\n<p>Viele Gr\u00fc\u00dfe<br \/>\nJo<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1835\" class=\"comment even depth-2\">\n<div id=\"comment-1835\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/793f363dd5bedac14e03b39e35b62a8e?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\">Jo<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Juni 2014 um 13:58<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>So,<br \/>\nProbleme konnten behoben werden. Habe die Kabel von 10 cm auf ca 6cm gek\u00fcrzt und wieder verkabelt. Jetzt l\u00e4uft er.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-2195\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-2195\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6d15e4d56c3c35c346924280a60ba191?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\">Michi<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">29. September 2014 um 20:13<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi,<br \/>\nauf Anhieb kompilierbar, die Gr\u00fcne LED leuchtet. PB14 = RMII_INT kann ich nicht anschlie\u00dfen weil es den Pin auf meinem DP83848 nicht gibt. Hab dieses Projekt probiert: <a href=\"http:\/\/blog.tkjelectronics.dk\/2012\/08\/ethernet-on-stm32f4discovery-using-external-phy\/\" rel=\"nofollow\">http:\/\/blog.tkjelectronics.dk\/2012\/08\/ethernet-on-stm32f4discovery-using-external-phy\/<\/a> und es funktioniert. Verstehe nur nicht warum deines nicht geht \u2026 Woran k\u00f6nnte es liegen?<br \/>\nDie Verbindungen w\u00e4ren sch\u00f6n kurz ca 5cm!<br \/>\nGr\u00fc\u00dfe<br \/>\nMichi<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2200\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-2200\">\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. September 2014 um 10:04<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>kannst du das board auf \u201c192.168.0.10\u2033 pingen ?<br \/>\nIn meinem Beispiel ist \u201cDHCP\u201d aus !<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2212\" class=\"comment odd alt depth-3\">\n<div id=\"comment-2212\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6d15e4d56c3c35c346924280a60ba191?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\">Michi<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">30. September 2014 um 18:59<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Geht auch nicht kommt die Meldung: Zeit\u00fcberschreitung der Anforderung.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2213\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-4\">\n<div id=\"comment-2213\">\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. September 2014 um 20:54<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>liegt dein PC im gleichen Adressraum ?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2216\" class=\"comment odd alt depth-5\">\n<div id=\"comment-2216\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6d15e4d56c3c35c346924280a60ba191?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\">Michi<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">30. September 2014 um 21:18<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ja beides h\u00e4ngt an meinem router!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-2222\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-5\">\n<div id=\"comment-2222\">\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\">1. Oktober 2014 um 09:45<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>der Router vergibt die Adressen normalerweise per DHCP kontrolliere nochmal am PC per \u201cipconfig\u201d ob dieser wirklich eine Adresse \u201c192.168.0.x\u201d besitzt ich vermute eher was mit \u201c192.168.178.x\u201d<br \/>\ndann kannst du noch zwei sachen probieren<br \/>\n1. den PC direkt an die Platine anschlie\u00dfen und am PC manuell eine IP vergeben<br \/>\n2. Im H-File \u201cDHCP\u201d einschalten<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-2231\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-2231\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6d15e4d56c3c35c346924280a60ba191?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\">Michi<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">1. Oktober 2014 um 19:03<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>DHCP ein, und l\u00e4uft! Danke<br \/>\nGru\u00df<br \/>\nSimon<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-2452\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-2452\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/0718d9eba3a0a5b48654b4a7d235b1ee?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\">malte<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">9. November 2014 um 16:52<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>kann mir jemand sagen ob und wenn f\u00fcr was RMII_INT verwendet wird. Ich mache gerade eine Platine und w\u00fcrde den Pin PB14 gerne f\u00fcr etwas anderes nutzen. Bei anderen Projekten die ich gefunden habe wird dieser Pin nicht verbunden.<\/p>\n<p>Im Datenblatt des DP\u2026. hei\u00dft es:<br \/>\nThe Power Down and Interrupt functions are multiplexed on pin 7 of the device. By default, this pin functions as a power down input and the interrupt function is disabled. Setting bit 0 (INT_OE) of MICR (0x11h) will configure the pin as an active low interrupt output.<\/p>\n<p>Jetzt konnte ich in den Sourcen zwar finden das PB14 verwendet wird, wird aber auch der Interrupt initialisiert? Falls nein, dann w\u00fcrde mir doch ein Pullup reichen um den Phy Aktiv zu halten?<br \/>\nPOWER DOWN: The pin is an active low input in this mode and should be asserted low to put the device in a Power Down mode.<\/p>\n<p>Gr\u00fc\u00dfe<br \/>\nMalte<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-2903\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-2903\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/9558b4e7f230803e73649bcc255d8789?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\">joof<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">16. Februar 2015 um 17:24<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo zusammen,<\/p>\n<p>hat schon mal jemand mit einem anderen Phy dieses Beispiel zum laufen gebracht?<br \/>\nIch habe hier einen eigenen Aufbau mit dem micrel KSZ8081RNB und komme leider nicht weiter <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_sad.gif\" alt=\":(\" \/><\/p>\n<p>Gru\u00df joof<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-2986\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-2986\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6e1fac3f5474e5b89e550b2d747e22d2?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\">Matt<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">16. M\u00e4rz 2015 um 17:15<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>in der Funktion tcp_send_empty_ack und tcp_keepalive sind die Zeilen tcphdr = tcp_output_set_header jeweils auskommentiert. In den Originalsourcen sind sie aber drin. Diese Zeilen f\u00fcllen den TCP header z.B. f\u00fcr leere ACK-Pakete aus. Wenn man die auskommentiert l\u00e4\u00dft und z.B. den Stack anders benutzen will um gro\u00dfe Datenmengen zu empfangen gibt es korrupte ACK \u2013 Pakete und die \u00dcbertragung geht nicht. Wenn ich das wieder mit reinnehme geht alles, warum sind die also hier auskommentiert?<\/p>\n<p>Matthias<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2989\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-2989\">\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\">16. M\u00e4rz 2015 um 19:11<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Uhhh\u2026das ist zu lange her, kann ich mich nicht erinnern. Vermutlich mein Fehler bei copy&amp;paste.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-3102\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-3102\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/d032c87fce48fd990050dfa7311a4853?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\">Flip<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">10. April 2015 um 10:52<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>ich habe den Webserver mit dem STM32E407 zum laufen gebracht.<br \/>\nEinwandfrei muss ich sagen.<br \/>\nJetzt m\u00f6chte ich aber wissen, wie ich mittels diesem Webserver weitere GPIOs ansprechen kann. Ich habe leider noch keine Ahnung, wie\/wo die Webserverkommunikation im C-Code stattfindet, k\u00f6nntest du mir da bitte weiter Helfen.<\/p>\n<p>Des Weiteren, k\u00f6nntest du mir die Dateien, die du mittels dem Tool \u201cmakefsdata.exe\u201d zur \u201cfsdata.c\u201d gewandelt hast zur Verf\u00fcgung stellen, vielleicht werde ich daraus schlauer, wie ich weitere Funktionen einf\u00fcgen und entfernen kann.<\/p>\n<p>Vielen Dank schoneinmal im Voraus<\/p>\n<p>Gr\u00fc\u00dfe<br \/>\nPhil<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-3113\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-3113\">\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\">12. April 2015 um 14:59<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>die files sind alle in der library enthalten. Im Unterordner \u201cub_lib\/http_server\/doc\u201d<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-3120\" class=\"comment even depth-3\">\n<div id=\"comment-3120\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/d032c87fce48fd990050dfa7311a4853?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\">Flip<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">16. April 2015 um 06:38<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>ah, besten Dank. Habe ich wohl \u00fcbersehen.<\/p>\n<p>K\u00f6nntest du mir noch sagen, in welcher c-source-file dann die Checkboxen der http f\u00fcr die LED abgefragt werden und in welcher c-source-file diese dann ein-\/ausgeschaltet werden.<br \/>\nW\u00fcrde mir auf die schnelle einiges erleichtern. Vielen Dank<br \/>\nGru\u00df Phil<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-3158\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-3158\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/2a234226734164d889af8d486d1a5c0d?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\">Jens<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">24. April 2015 um 06:48<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>ich versuche mit dieser Webserver Demo, weitere \u201cADC_Handler\u201d zu implementieren, aber es funktioniert einfach nicht.<br \/>\nDabei passe ich die Datei \u201chttpd_cgi_ssi.c\u201d sowie die \u201cxxxx.shtml\u201d Seite an. Auf was muss ich alles achten, um mehrere Handler hinzubekommen? Mit dem LED Handler funktionieren mehrere soweit ganz gut.<\/p>\n<p>Danke, MFG J<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-3162\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-3162\">\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\">24. April 2015 um 19:55<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>hab ich mich noch nicht mit besch\u00e4ftigt<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-4027\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-4027\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/4632e5e1fe0a2afddb99552b9eac0ac2?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\">Hand<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">1. August 2015 um 14:15<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ich habe das gleiche Problem wie Joof,<\/p>\n<p>\u201d<br \/>\nhat schon mal jemand mit einem anderen Phy dieses Beispiel zum laufen gebracht?<br \/>\nIch habe hier einen eigenen Aufbau mit dem micrel KSZ8081RNB und komme leider nicht weiter <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_sad.gif\" alt=\":(\" \/> \u201d<\/p>\n<p>Ich bekomme den KSZ8081 ebenfalls nicht zum laufen, habe vorher einen ST802RT1A verwendet, der lief einwandfrei. Muss ich noch was in den Headerfiles \u00e4ndern? In dem \u201cstm32f4x7_eth_conf.h\u201d finde ich PHY anh\u00e4ngige Register, muss da etwas angepasst werden?<\/p>\n<p>Gru\u00df joof<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4028\" class=\"comment even depth-2\">\n<div id=\"comment-4028\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/4632e5e1fe0a2afddb99552b9eac0ac2?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\">Hand<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">1. August 2015 um 14:18<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>In dem Header-File finde ich folgende Zeile:<\/p>\n<p>#define PHY_SR ((uint16_t)17) \/* Value for ST802RT\/STE101P PHY *\/<\/p>\n<p>Muss ich da was anpassen?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-4030\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-4030\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/2a234226734164d889af8d486d1a5c0d?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\">Jens<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. August 2015 um 08:38<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>ich habe den Webserver lokal zum laufen bekommen. Also ich kann innerhalb meines eigenen Netzwerkes mittels fester IP-Adresse auf das Board zugreifen und eine Weboberfl\u00e4che aufrufen\/steuern.<\/p>\n<p>Jetzt m\u00f6chte ich aber nicht lokal darauf zugreifen k\u00f6nnen, sondern mittels Internet.<br \/>\n&#8211; Ist das mit diesem Webserver m\u00f6glich?<br \/>\n&#8211; Auf was muss ich achten\/anpassen, dass dies funktioniert?<br \/>\n&#8211; Gibt es Examples hierf\u00fcr?<\/p>\n<p>Viele Gr\u00fc\u00dfe und Danke f\u00fcr die M\u00fchen.<br \/>\nJens<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4035\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-4035\">\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\">4. August 2015 um 14:24<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>das muss am Router eingestellt werden. Thema : Portweiterleitung<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4038\" class=\"comment odd alt depth-3\">\n<div id=\"comment-4038\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/2a234226734164d889af8d486d1a5c0d?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\">Jens<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. August 2015 um 08:59<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>wenn ich versuche DHCP zu aktivieren, bekomme ich keine Verbindung mit dem Port.<\/p>\n<p>Was muss ich da alles aktivieren (wie z.B. #define USE_DHCP)??<\/p>\n<p>Wie kann ich danach auf den Server zugreifen? IP (die ich dann nicht kenne)? oder wie funktioniert dies dann?<\/p>\n<p>Danke <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_smile.gif\" alt=\":)\" \/><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4042\" class=\"comment even depth-4\">\n<div id=\"comment-4042\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/2a234226734164d889af8d486d1a5c0d?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\">Jens<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. August 2015 um 14:58<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>statt \u201cport\u201d meinte ich nat\u00fcrlcih \u201cBoard\u201d<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4043\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-5\">\n<div id=\"comment-4043\">\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\">6. August 2015 um 15:39<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>schau am router nach, der vergibt die ip nummern,<br \/>\noder geb sie per UART oder LCD aus.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-4232\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-4232\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/38af3f21aa7fd7ade51b0e9f90ff216b?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\">Flo<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">13. Oktober 2015 um 07:54<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hey,<\/p>\n<p>Server funktioniert ohne problem, wenn beim Starten des Boards das Netzwerkkabel angeschlossen ist.<\/p>\n<p>ABER,wenn ich das Board starte und es dabei nicht am Netzwerk angeschlossen ist, dann funktioniert der Server ja nicht. Jetzt habe ich eine Schleife eingebaut, bei dem nach dem Starten des Boards (Ethernetkabel beim Start noch nicht angeschlossen), solange in der Schleife (while) geblieben wird, bis ein bestimmter Button gedr\u00fcckt ist, um nochmals die Funktion<\/p>\n<p>\/\/ HTTP-Server initialisieren<br \/>\ncheck=UB_HTTP_Server_Init();<\/p>\n<p>aufzurufen. Wenn bei diesem erneuten Aufruf dann das Ethernet-Kabel angeschlossen ist, dann wird die while-Schleife erfolgreich verlassen, da<\/p>\n<p>check==HTTP_SERVER_OK;<\/p>\n<p>ist.<\/p>\n<p>Aber anschlie\u00dfend funktioniert der Server trotzdem nicht. Es wird zwar dies zyklisch aufgerufen:<\/p>\n<p>\/\/HTTP-Server zyklisch aufrufen<br \/>\nUB_HTTP_Server_Do();<\/p>\n<p>aber nach ein paar mal schon nichtmehr. (bleibt irgendwo h\u00e4ngen oder so,\u2026 aber genau weis ich es auch nicht).<\/p>\n<p>Was muss ich bei dieser Aktion alles beachten? Irgendwelche Funktionen, GPIOs, etc\u2026. zur\u00fccksetzen\/deinitialisieren??<\/p>\n<p>Vielen Dank.<\/p>\n<p>Gru\u00df Flou<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Mit dieser Library kann man mit dem STM32F4-Discovery-Board und einem extern angeschlossenen PHY (von Texas Instruments \u201cDP83848C\u201d) und einer RJ45-Buchse einen HTTP-Webserver realisieren. Die Webseite(n) m\u00fcssen zuvor mit einem PC-Programm in ein C-File gewandelt werden, das dann im Sourcecode eingebunden &hellip; <a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=399\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":144,"menu_order":40,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[128],"tags":[165,9,7],"class_list":["post-399","page","type-page","status-publish","hentry","category-stm32f4","tag-http-server","tag-library","tag-stm32f4"],"_links":{"self":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/399","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=399"}],"version-history":[{"count":5,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/399\/revisions"}],"predecessor-version":[{"id":1799,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/399\/revisions\/1799"}],"up":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/144"}],"wp:attachment":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=399"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=399"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=399"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}