{"id":205,"date":"2017-11-22T23:48:47","date_gmt":"2017-11-22T22:48:47","guid":{"rendered":"http:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=205"},"modified":"2023-03-04T17:10:35","modified_gmt":"2023-03-04T16:10:35","slug":"03-digout-library-stm32f4","status":"publish","type":"page","link":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/03-digout-library-stm32f4\/","title":{"rendered":"03-DigOut-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\/02-button-library-stm32f4\/\" title=\"02-Button-Library (STM32F4)\"><span class=\"meta-nav\">\u2190<\/span> 02-Button-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\/04-digin-library-stm32f4\/\" title=\"04-DigIn-Library (STM32F4)\">04-DigIn-Library (STM32F4) <span class=\"meta-nav\">&rarr;<\/span><\/a><\/div><\/div><!-- #nav-below --><\/p>\n<p>-diese Library dient zum steuern von Digital Ausgangspins der CPU<\/p>\n<p>-die Pins die benutzt werden sollen, m\u00fcssen im H-File deklariert und im C-File den entsprechenden Port-Pins zugeordnet werden.<\/p>\n<p>-f\u00fcr jeden Pin kann auch der Pegel beim initialisieren festgelegt werden<br \/>\n(Lo oder Hi)<\/p>\n<p>-im Beispiel wurden 4 Pins als Digital-Out definiert<\/p>\n<pre lang=\"c\" line=\"1\">PB2,PB7,PC6,PC13<\/pre>\n<p><strong>Voraussetzungen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">Benutzte Module der CooCox-IDE : GPIO\r\nBenutzte Librarys : keine<\/pre>\n<p><strong>Enumerationen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">typedef enum \r\n{\r\n  DOUT_PB2 = 0,  \/\/ PB2-Pin\r\n  DOUT_PB7 = 1,  \/\/ PB7-Pin\r\n  DOUT_PC6 = 2,  \/\/ PC6-Pin\r\n  DOUT_PC13 = 3  \/\/ PC13-Pin\r\n}DOUT_NAME_t;<\/pre>\n<p><strong>Funktionen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">void UB_DigOut_Init(void);                               \/\/ zum init der Dig-Out-Pins\r\nvoid UB_DigOut_Lo(DOUT_NAME_t dig_pin);                  \/\/ um einen Pin auf Lo zu setzen\r\nvoid UB_DigOut_Hi(DOUT_NAME_t dig_pin);                  \/\/ um einen Pin auf Hi zu setzen\r\nvoid UB_DigOut_Toggle(DOUT_NAME_t dig_pin);              \/\/ um einen Pin zu toggeln\r\nvoid UB_DigOut_Pin(DOUT_NAME_t dig_pin,BitAction wert);  \/\/ um einen Pin zu schalten<\/pre>\n<p><strong>Beispiel :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">\/\/--------------------------------------------------------------\r\n\/\/ File     : main.c\r\n\/\/ Datum    : 16.02.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 DigOut-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_dig_out.h\"\r\n\r\nvoid Delay(volatile uint32_t nCount){\r\n  while(nCount--) {\r\n  }\r\n}\r\n\r\nint main(void)\r\n{\r\n  SystemInit(); \/\/ Quarz Einstellungen aktivieren\r\n\r\n  UB_DigOut_Init(); \/\/ init aller DigOut-Pins\r\n\r\n  while(1)\r\n  {\r\n    Delay(5000000);\r\n    UB_DigOut_Toggle(DOUT_PB2);\r\n    Delay(5000000);\r\n    UB_DigOut_Toggle(DOUT_PB7);\r\n    Delay(5000000);\r\n    UB_DigOut_Toggle(DOUT_PC6);\r\n    Delay(5000000);\r\n    UB_DigOut_Toggle(DOUT_PC13);\r\n  }\r\n}\r\n<\/pre>\n<p><strong>Beschreibung :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">Funktion :\r\n-die GPIO-Pins PB2, PB7, PC6, PC13 werden als Ausgang definiert (in der LIB)\r\n-die Ausgangspins werden zyklisch getoggelt\r\n\r\nLibrarys die f\u00fcr das Beispiel benutzt werden :\r\n-stm32_ub_dig_out\r\n<\/pre>\n<p>Hier die Library zum\u00a0<strong>Download :<\/strong><\/p>\n<p><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/02\/ub_stm32f4_digout_v102.zip\">ub_stm32f4_digout_v102<\/a><\/p>\n<p>Hier der komplette CooCox-Projektordner zum\u00a0<strong>Download :<\/strong><\/p>\n<p><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/02\/Demo_03_DigOut.zip\">Demo_03_DigOut<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>-diese Library dient zum steuern von Digital Ausgangspins der CPU -die Pins die benutzt werden sollen, m\u00fcssen im H-File deklariert und im C-File den entsprechenden Port-Pins zugeordnet werden. -f\u00fcr jeden Pin kann auch der Pegel beim initialisieren festgelegt werden (Lo &hellip; <a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/03-digout-library-stm32f4\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":144,"menu_order":3,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[128],"tags":[137,9,7],"class_list":["post-205","page","type-page","status-publish","hentry","category-stm32f4","tag-digout","tag-library","tag-stm32f4"],"_links":{"self":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/205","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=205"}],"version-history":[{"count":4,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/205\/revisions"}],"predecessor-version":[{"id":3651,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/205\/revisions\/3651"}],"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=205"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/categories?post=205"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/tags?post=205"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}