{"id":529,"date":"2017-11-25T15:06:48","date_gmt":"2017-11-25T14:06:48","guid":{"rendered":"http:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=529"},"modified":"2017-12-30T19:41:15","modified_gmt":"2017-12-30T18:41:15","slug":"92-id_check-library-stm32f4","status":"publish","type":"page","link":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/92-id_check-library-stm32f4\/","title":{"rendered":"92-ID_Check-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\/91-spi-dma-library-stm32f4\/\" title=\"91-SPI-DMA-Library (STM32F4)\"><span class=\"meta-nav\">\u2190<\/span> 91-SPI-DMA-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\/93-otp-library-stm32f4\/\" title=\"93-OTP-Library (STM32F4)\">93-OTP-Library (STM32F4) <span class=\"meta-nav\">&rarr;<\/span><\/a><\/div><\/div><!-- #nav-below --><\/p>\n<p>Mit dieser Library kann die 96bit lange \u201cunique ID\u201d der CPU ausgelesen werden.<\/p>\n<p>Mit einer zweiten Funktion kann auch die CPU-ID und die CPU-Revision ausgelesen werden.<\/p>\n<p><strong>Voraussetzungen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">Benutzte Module der CooCox-IDE : keine\r\nBenutzte Librarys : keine<\/pre>\n<p><strong>Enumerationen \u00a0:<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">typedef enum {\r\n  UID_WORD_0 =0,  \/\/ Bit 0-31\r\n  UID_WORD_1,     \/\/ Bit 32-63\r\n  UID_WORD_2      \/\/ Bit 64-95\r\n}UID_WORD_t;<\/pre>\n<p><strong>:<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">typedef enum {\r\n  ID_DEVICE =0,  \/\/ Device-ID\r\n  ID_REVISION    \/\/ Revision-ID\r\n}ID_TYP_t;<\/pre>\n<p><strong>Funktionen \u00a0:<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">uint32_t UB_IDCHK_Read_UID(UID_WORD_t word_nr);  \/\/ zum auslesen der \"uique id\"\r\nuint32_t UB_IDCHK_Read_ID(ID_TYP_t id_typ);      \/\/ zum auslesen der cpu id und revision<\/pre>\n<p><strong>Beispiel \u00a0:<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">\/\/--------------------------------------------------------------\r\n\/\/ File     : main.c\r\n\/\/ Datum    : 01.01.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.4\r\n\/\/ GCC      : 4.7 2012q4\r\n\/\/ Module   : CMSIS_BOOT, M4_CMSIS_CORE\r\n\/\/ Funktion : Demo der ID-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_id_check.h\"\r\n\r\nint main(void)\r\n{\r\n  uint32_t w0,w1,w2;\r\n\r\n  SystemInit(); \/\/ Quarz Einstellungen aktivieren\r\n\r\n  \/\/ auslesen der 96bit \"unique ID\"\r\n  w0=UB_IDCHK_Read_UID(UID_WORD_0);\r\n  w1=UB_IDCHK_Read_UID(UID_WORD_1);\r\n  w2=UB_IDCHK_Read_UID(UID_WORD_2);\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\/2015\/01\/ub_stm32f4_idcheck_v100.zip\">ub_stm32f4_idcheck_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\/2015\/01\/Demo_92_IDCheck.zip\">Demo_92_IDCheck<\/a><\/p>\n<hr \/>\n<h3 id=\"comments-title\">Eine Antwort auf <em>92-ID_Check-Library (STM32F4)<\/em><\/h3>\n<ol class=\"commentlist\">\n<li id=\"li-comment-2805\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-2805\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/a7fff991982875211e148fbdac247ede?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\"><a class=\"url\" href=\"http:\/\/noone.com\/\" rel=\"external nofollow\">noone<\/a><\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">10. Januar 2015 um 14:55<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p><a href=\"http:\/\/stm32f4-discovery.com\/2014\/12\/library-44-stm32f4-unique-id-and-flash-size\/\" rel=\"nofollow\">http:\/\/stm32f4-discovery.com\/2014\/12\/library-44-stm32f4-unique-id-and-flash-size\/<\/a><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Mit dieser Library kann die 96bit lange \u201cunique ID\u201d der CPU ausgelesen werden. Mit einer zweiten Funktion kann auch die CPU-ID und die CPU-Revision ausgelesen werden. Voraussetzungen : Benutzte Module der CooCox-IDE : keine Benutzte Librarys : keine Enumerationen \u00a0: &hellip; <a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/stm32f4\/komplette-library-liste-stm32f4\/92-id_check-library-stm32f4\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":144,"menu_order":92,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[128],"tags":[250,9,7,249],"class_list":["post-529","page","type-page","status-publish","hentry","category-stm32f4","tag-cpu-id","tag-library","tag-stm32f4","tag-unique-id"],"_links":{"self":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/529","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=529"}],"version-history":[{"count":3,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/529\/revisions"}],"predecessor-version":[{"id":1635,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/pages\/529\/revisions\/1635"}],"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=529"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/categories?post=529"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-json\/wp\/v2\/tags?post=529"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}