{"id":537,"date":"2017-11-25T15:09:18","date_gmt":"2017-11-25T14:09:18","guid":{"rendered":"http:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=537"},"modified":"2017-12-30T19:42:30","modified_gmt":"2017-12-30T18:42:30","slug":"96-dcf77-library-stm32f4","status":"publish","type":"page","link":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/96-dcf77-library-stm32f4\/","title":{"rendered":"96-DCF77-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\/95-ubasic-library-stm32f4\/\" title=\"95-uBasic-Library (STM32F4)\"><span class=\"meta-nav\">\u2190<\/span> 95-uBasic-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\/97-lcd_ili9325-library-stm32f4\/\" title=\"97-LCD_ILI9325-Library (STM32F4)\">97-LCD_ILI9325-Library (STM32F4) <span class=\"meta-nav\">&rarr;<\/span><\/a><\/div><\/div><!-- #nav-below --><\/p>\n<p>Hier eine Library um ein DCF77-Modul (Funkuhr) an den STM32F4 anzuschlie\u00dfen.<\/p>\n<p>Das Modul muss \u00fcber einen GPIO-Pin an den F4 angeschlossen werden<br \/>\nund liefert dann nach sp\u00e4testens zwei Minuten das aktuelle Datum\/Uhrzeit.<\/p>\n<p>Das Modul gibt es f\u00fcr ca. 5 EUR zu kaufen.<\/p>\n<p><strong>Beispielbild :<\/strong><\/p>\n<p><strong>Benutzte Pins :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">PB0 = DCF77-Signal<\/pre>\n<p><strong><strong>Voraussetzungen :<\/strong><\/strong><\/p>\n<pre lang=\"c\" line=\"1\">GPIO, TIM, EXTI, SYSCFG, MISC<\/pre>\n<p><strong>Enumerationen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">typedef enum {\r\n  DCF77_NO_SIGNAL =0, \/\/ there is no DCF77-Signal\r\n  DCF77_READING,      \/\/ wait until time-data is complete\r\n  DCF77_TIME_ERROR,   \/\/ error\r\n  DCF77_TIME_OK       \/\/ time-data is ok\r\n}DCF77_Status_t;<\/pre>\n<p><strong>Struktur :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">typedef struct {\r\n  uint8_t sek;   \/\/ sekunden [0..59]\r\n  uint8_t min;   \/\/ minuten [0..59]\r\n  uint8_t std;   \/\/ stunden [0..23]\r\n  uint8_t tag;   \/\/ tag [1..31]\r\n  uint8_t monat; \/\/ monat [1..12]\r\n  uint8_t jahr;  \/\/ jahr [0..99]\r\n}DCF77_TIME_t;\r\nDCF77_TIME_t DCF77_TIME;<\/pre>\n<p><strong>Funktionen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">void UB_DCF77_Init(void);                \/\/ zum Init vom DCF77-Modul\r\nDCF77_Status_t UB_DCF77_ReadTime(void);  \/\/ zum auslesen der Uhrzeit<\/pre>\n<p><strong>Beispiel :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">\/\/--------------------------------------------------------------\r\n\/\/ File     : main.c\r\n\/\/ Datum    : 31.12.2015\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.8\r\n\/\/ GCC      : 4.9 2015q2\r\n\/\/ Module   : CMSIS_BOOT, M4_CMSIS_CORE\r\n\/\/ Funktion : DCF77-Demo\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_dcf77.h\"\r\n#include \"stm32_ub_uart.h\"\r\n#include \r\n\r\nint main(void)\r\n{\r\n  DCF77_Status_t status,old_status=99;\r\n  uint8_t old_sek=99;\r\n  char buf[30];\r\n\r\n  SystemInit(); \/\/ Quarz Einstellungen aktivieren\r\n\r\n  UB_Uart_Init();\r\n\r\n  \/\/ init vom DCF77-Modul\r\n  UB_DCF77_Init();\r\n\r\n  UB_Uart_SendString(COM2,\"DCF77-Start\",CRLF);\r\n\r\n  while(1)\r\n  {\r\n    status=UB_DCF77_ReadTime();\r\n    if(status!=old_status) {\r\n      old_status=status;\r\n      if(status==DCF77_NO_SIGNAL) UB_Uart_SendString(COM2,\"no signal\",CRLF);\r\n      if(status==DCF77_READING) UB_Uart_SendString(COM2,\"reading...\",CRLF);\r\n      if(status==DCF77_TIME_ERROR) UB_Uart_SendString(COM2,\"error\",CRLF);\r\n    }\r\n    if(status==DCF77_TIME_OK) {\r\n      if(DCF77_TIME.sek!=old_sek) {\r\n        old_sek=DCF77_TIME.sek;\r\n        sprintf(buf,\"h=%d, m=%d, s=%d\",DCF77_TIME.std,DCF77_TIME.min,DCF77_TIME.sek);\r\n        UB_Uart_SendString(COM2,buf,CRLF);\r\n        sprintf(buf,\"d=%d, m=%d, j=%d\",DCF77_TIME.tag,DCF77_TIME.monat,DCF77_TIME.jahr);\r\n        UB_Uart_SendString(COM2,buf,CRLF);\r\n      }\r\n    }\r\n  }\r\n}\r\n<\/pre>\n<p>Hier die Library zum\u00a0<strong>Download :<\/strong><\/p>\n<p><strong><a href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2015\/12\/ub_stm32f4_dcf77_v100.zip\">ub_stm32f4_dcf77_v100<\/a><\/strong><\/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\/2015\/12\/Demo_96_DCF77.zip\">Demo_96_DCF77<\/a><\/p>\n<hr \/>\n<h3 id=\"comments-title\">4 Antworten auf <em>96-DCF77-Library (STM32F4)<\/em><\/h3>\n<ol class=\"commentlist\">\n<li id=\"li-comment-4491\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-4491\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/5383f0e79efdf859ea090a082bb02f76?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\"><a class=\"url\" href=\"http:\/\/blog.manib.bplaced.net\/\" rel=\"external nofollow\">ManiB<\/a><\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">31. Dezember 2015 um 14:08<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>DCF-Empfangsmodul DCF1<br \/>\nPollin Best.Nr.: 810054<\/p>\n<p>Technische Daten:<br \/>\n&#8211; Betriebsspannung 1,2\u20263,5V<br \/>\n&#8211; Stromaufnahme 90uA<br \/>\n&#8211; Empfangsfrequenz 77,5 kHz<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-4502\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-4502\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/63ed6fe3ca5e34e6d68d40ddf9c2c5e2?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\">ThomasS<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">9. Januar 2016 um 11:29<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo Uwe,<br \/>\nkann man die Library auch unver\u00e4ndert f\u00fcr den STM32F746 nutzen?<br \/>\nFalls nicht, wo w\u00e4ren \u00c4nderungen erforderlich?<br \/>\n(Sorry f\u00fcr die dumme Frage, aber so intensiv bin ich noch nicht eingestiegen):<br \/>\nDanke, Thomas<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4503\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-4503\">\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\">9. Januar 2016 um 15:23<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>nein, die standard peripheral und die HAL sind nicht 1:1 kompatibel.<br \/>\nAber ich habe gerade eine Version f\u00fcr den F746 hochgeladen :<br \/>\n<a href=\"index5a23.html?page_id=5329\" rel=\"nofollow\">http:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=5329<\/a><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4507\" class=\"comment odd alt depth-3\">\n<div id=\"comment-4507\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/63ed6fe3ca5e34e6d68d40ddf9c2c5e2?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\">ThomasS<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">11. Januar 2016 um 13:25<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Danke!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Hier eine Library um ein DCF77-Modul (Funkuhr) an den STM32F4 anzuschlie\u00dfen. Das Modul muss \u00fcber einen GPIO-Pin an den F4 angeschlossen werden und liefert dann nach sp\u00e4testens zwei Minuten das aktuelle Datum\/Uhrzeit. Das Modul gibt es f\u00fcr ca. 5 EUR &hellip; <a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/96-dcf77-library-stm32f4\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":144,"menu_order":96,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[128],"tags":[161,9,7],"class_list":["post-537","page","type-page","status-publish","hentry","category-stm32f4","tag-dcf77","tag-library","tag-stm32f4"],"_links":{"self":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/537","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=537"}],"version-history":[{"count":3,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/537\/revisions"}],"predecessor-version":[{"id":1641,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/537\/revisions\/1641"}],"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=537"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/categories?post=537"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/tags?post=537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}