{"id":1463,"date":"2018-11-29T21:11:24","date_gmt":"2018-11-29T12:11:24","guid":{"rendered":"http:\/\/kats-eye.net\/info\/?p=1463"},"modified":"2020-01-19T19:05:57","modified_gmt":"2020-01-19T10:05:57","slug":"espr-drv-motor","status":"publish","type":"post","link":"https:\/\/kats-eye.net\/info\/2018\/11\/29\/espr-drv-motor\/","title":{"rendered":"ESPr Developer\u3067\u30e2\u30fc\u30bf\u3092\u52d5\u304b\u3059"},"content":{"rendered":"<p>&nbsp;<\/p>\n<table style=\"width: 98.9452%; border-collapse: collapse; border-style: none; height: 27px;\" border=\"1\">\n<tbody>\n<tr style=\"height: 27px;\">\n<td style=\"width: 3.37549%; border-style: none; background-color: #1414f7; height: 27px;\"><\/td>\n<td style=\"width: 2.15054%; border-style: none; background-color: #f0f09b; height: 27px;\"><\/td>\n<td style=\"width: 95.3341%; border-style: none; background-color: #f0f09b; height: 27px;\"><span style=\"color: #000080; font-size: 18pt;\"><strong>DRV8830\u30ad\u30c3\u30c8\u3068\uff29<sup>\uff12<\/sup>\uff23\u63a5\u7d9a<\/strong><\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>ESPr Developer\u304b\u3089\u3001\u6a21\u578b\u7b49\u306b\u4f7f\u308f\u308c\u308b\u30e2\u30fc\u30bf\u30fc\u3092\u52d5\u304b\u3057\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3059\u3002\u4eca\u56de\u306f\u79cb\u6708\u96fb\u5b50\u901a\u5546\u3067\u8ca9\u58f2\u3057\u3066\u3044\u308b\uff29<sup>\uff12<\/sup>\uff23\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u5185\u8535\u306e\u201c<a href=\"http:\/\/akizukidenshi.com\/catalog\/g\/gK-06489\/\" target=\"_blank\" rel=\"noopener\">\uff24\uff32\uff36\uff18\uff18\uff13\uff10\u4f7f\u7528\uff24\uff23\u30e2\u30fc\u30bf\u30fc\u30c9\u30e9\u30a4\u30d6\u30ad\u30c3\u30c8<\/a>\u201d\u3092\u4f7f\u3044\u307e\u3059\u3002DRV8830\u30ad\u30c3\u30c8\u306f\u3001\uff29<sup>\uff12<\/sup>\uff23\u63a5\u7d9a\u3067CONTROL\u30ec\u30b8\u30b9\u30bf\u306b\u56de\u8ee2\u65b9\u5411\u30fb\u505c\u6b62\u306a\u3069\u306e\u5236\u5fa1\u5185\u5bb9\u3068\u901f\u5ea6\uff08\u96fb\u5727\uff09\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u66f8\u304d\u8fbc\u3093\u3067\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u51fa\u6765\u307e\u3059\u3002<br \/>\n\u63a5\u7d9a\u65b9\u6cd5\u306f\u3001\u79cb\u6708\u96fb\u5b50\u901a\u5546\u306eHP\u30da\u30fc\u30b8\u306b\u8aac\u660e\u66f8\u3084\u63a5\u7d9a\u4f8b\u3078\u306e\u30ea\u30f3\u30af\u304c\u3042\u308a\u307e\u3059\u3002\u4eca\u56de\u306f\u3001\u30ea\u30f3\u30af\u306e\u63a5\u7d9a\u4f8b\u3068\u540c\u3058\u63a5\u7d9a\u3067\u3059\u3002<br \/>\n\u5148\u305a\u306f\u3069\u306e\u69d8\u306b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3059\u308b\u306e\u304b\u3092\u5358\u7d14\u306a\u63a5\u7d9a\u3067\u78ba\u8a8d\u3057\u307e\u3059\u3002\u904e\u53bb\u306b\u6295\u7a3f\u3057\u305f\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u30b5\u30a4\u30b3\u30ed\u3084\u6e29\u5ea6\u30c7\u30fc\u30bf\u6e2c\u5b9a\u3067\u4f7f\u7528\u3057\u305f\u57fa\u677f\u30bb\u30c3\u30c8\uff08\u5199\u771f\u53f3\u5074\u5f8c\u65b9\uff09\u306bDRV8830\u30ad\u30c3\u30c8\u3092\uff29<sup>\uff12<\/sup>\uff23\u63a5\u7d9a\u3057\u3066\u3044\u307e\u3059\u3002DRV8830\u30ad\u30c3\u30c8\u306f\u63a5\u7d9a\u4f8b\u901a\u308a\u3001\u96fb\u6e90\u5074\u306b\u30b3\u30f3\u30c7\u30f3\u30b5\u30fc\u3092\u63a5\u7d9a\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<p><img loading=\"lazy\" class=\"aligncenter size-full wp-image-1476\" src=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/102.jpg\" alt=\"\" width=\"582\" height=\"461\" srcset=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/102.jpg 582w, https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/102-300x238.jpg 300w\" sizes=\"(max-width: 582px) 100vw, 582px\" \/>\u6b21\u306e\u5199\u771f\u306f\u914d\u7f6e\u3092\u5909\u3048\u3001\u914d\u7dda\u3092\u5c11\u3057\u5224\u308a\u3084\u3059\u304f\u64ae\u5f71\u3057\u305f\u3082\u306e\u3067\u3059\u3002ESPR\u57fa\u677f\u30bb\u30c3\u30c8\u5074\u30d4\u30f3\u30bd\u30b1\u30c3\u30c8\u30b3\u30cd\u30af\u30bf\u306e\u7a7a\u304d\u7aef\u5b50\u306b\uff15V\u96fb\u6e90\u3001GND\u3001\uff29<sup>\uff12<\/sup>\uff23\u7aef\u5b50\uff08SCL\uff65SDA\uff09\u3092\u5916\u90e8\u306b\u53d6\u308a\u51fa\u305b\u308b\u69d8\u306b\u30b8\u30e3\u30f3\u30d1\u30fc\u914d\u7dda\u3057\u3066\u3044\u307e\u3059\u3002\u3053\u308c\u3089\u306e\u7aef\u5b50\u304b\u3089\u3001DRV8830\u30ad\u30c3\u30c8\u5074\u306b\u96fb\u6e90\u3068\uff29<sup>\uff12<\/sup>\uff23\u4fe1\u53f7\u3092\u63a5\u7d9a\u3057\u307e\u3059\u3002ESPR\u57fa\u677f\u30bb\u30c3\u30c8\u5074\u306e\u30b8\u30e3\u30f3\u30d1\u30fc\u63a5\u7d9a\u524d\u306e\u914d\u7dda\u306f\u3001\u4e0b\u8a18\u306b\u3042\u308a\u307e\u3059\u306e\u3067\u53c2\u8003\u306b\u3057\u3066\u307f\u3066\u4e0b\u3055\u3044\u3002<\/p>\n<ul>\n<li><a href=\"https:\/\/kats-eye.net\/info\/2018\/11\/09\/internet_dice\/\" target=\"_blank\" rel=\"noopener\">ESPR DEVELOPER\u3092\u4f7f\u3063\u3066\u3001\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u30c0\u30a4\u30b9\uff08\u30b5\u30a4\u30b3\u30ed\uff09\u3092\u4f5c\u3063\u3066\u307f\u305f\u3002<\/a><\/li>\n<li><a href=\"https:\/\/kats-eye.net\/info\/2018\/11\/18\/espr-adt7410\/\" target=\"_blank\" rel=\"noopener\">ESPR DEVELOPER\u3092\u4f7f\u3063\u3066\u3001\u6e29\u5ea6\u3092\u6e2c\u5b9a\u3057\u3001\u30b5\u30fc\u30d0\u30fc\u4e0a\u306eSQLITE\u30d5\u30a1\u30a4\u30eb\u306b\u8a18\u9332\u3057\u3066\u307f\u308b<\/a><\/li>\n<\/ul>\n<p><img loading=\"lazy\" class=\"aligncenter size-full wp-image-1477\" src=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/103.jpg\" alt=\"\" width=\"976\" height=\"552\" srcset=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/103.jpg 976w, https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/103-300x170.jpg 300w, https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/103-768x434.jpg 768w\" sizes=\"(max-width: 976px) 100vw, 976px\" \/><br \/>\n<noscript><a href=\"\/\/ck.jp.ap.valuecommerce.com\/servlet\/referral?sid=3422639&#038;pid=885499439\" target=\"_blank\" rel=\"nofollow\"><img src=\"\/\/ad.jp.ap.valuecommerce.com\/servlet\/gifbanner?sid=3422639&#038;pid=885499439\" border=\"0\"><\/a><\/noscript><\/p>\n<table style=\"width: 98.9452%; border-collapse: collapse; border-style: none; height: 27px;\" border=\"1\">\n<tbody>\n<tr style=\"height: 27px;\">\n<td style=\"width: 3.37549%; border-style: none; background-color: #1414f7; height: 27px;\"><\/td>\n<td style=\"width: 2.15054%; border-style: none; background-color: #f0f09b; height: 27px;\"><\/td>\n<td style=\"width: 95.3341%; border-style: none; background-color: #f0f09b; height: 27px;\"><span style=\"color: #000080; font-size: 18pt;\"><strong>DRV8830\u30ad\u30c3\u30c8\u00a0 \u30d7\u30ed\u30b0\u30e9\u30e0<\/strong><\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>DRV8830\u30ad\u30c3\u30c8\u306e\uff29<sup>\uff12<\/sup>\uff23\u30c7\u30d0\u30a4\u30b9\u30a2\u30c9\u30ec\u30b9\u306f\u3001\u904e\u53bb\u306b\u3082\u4f7f\u3063\u305f \u201c<a href=\"https:\/\/playground.arduino.cc\/Main\/I2cScanner\" target=\"_blank\" rel=\"noopener\">\u00a0i2c_scanner.ino<\/a>\u201d\u306a\u308b\uff29<sup>\uff12<\/sup>\uff23\u30d0\u30b9\u4e0a\u306b\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u30c7\u30d0\u30a4\u30b9\u3092\u30c1\u30a7\u30c3\u30af\u3059\u308b\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u4f7f\u3063\u3066\u8abf\u3079\u307e\u3057\u305f\u3002DRV8830\u306e\uff29<sup>\uff12<\/sup>\uff23\u30a2\u30c9\u30ec\u30b9\u8a2d\u5b9a\u7aef\u5b50\u3092\u30aa\u30fc\u30d7\u30f3\u306e\u72b6\u614b\u3067\u201c0x64\u201d\u3067\u3057\u305f\u3002\u5b9f\u969b\u306b\u30e2\u30fc\u30bf\u99c6\u52d5\u3082\u7279\u306b\u554f\u984c\u7121\u3044\u69d8\u3067\u3057\u305f\u306e\u3067\u3053\u306e\u307e\u307e\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n\u6b21\u306e\u52d5\u753b\u306f\u78ba\u8a8d\u7528\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u52d5\u4f5c\u72b6\u6cc1\u3067\u3059\u3002\u6b21\u306e\u52d5\u4f5c\u30d5\u30ed\u30fc\u3092\u7e70\u308a\u8fd4\u3057\u3066\u3044\u307e\u3059\u3002\u201c\u6b63\u8ee2\uff08\u4f4e\u901f\uff09\u2192\u6b63\u8ee2\uff08\u9ad8\u901f\uff09\u2192\u6b63\u8ee2\uff08\u4f4e\u901f\uff09\u2192\u505c\u6b62\u2192\u53cd\u8ee2\uff08\u4f4e\u901f\uff09\u2192\u53cd\u8ee2\uff08\u9ad8\u901f\uff09\u2192\u53cd\u8ee2\uff08\u4f4e\u901f\uff09\u2192\u505c\u6b62\u201d<br \/>\n\u4f4e\u901f(0x06 (0.48V))\u3001\u9ad8\u901f(0x25 (2.97V))\u306e\uff12\u6bb5\u968e\u306e\u901f\u5ea6\u8a2d\u5b9a\u3057\u304b\u3057\u3066\u3044\u307e\u305b\u3093\u304c\u3001\u8aac\u660e\u66f8\u306b\u3088\u308b\u3068\u30010x06 (0.48V) \uff5e 0x3F (5.06V) \u307e\u3067\u3001\u7d040.08V\u5358\u4f4d\u3067\u8a2d\u5b9a\u3067\u304d\u308b\u69d8\u3067\u3059\u3002<\/p>\n<div style=\"width: 474px;\" class=\"wp-video\"><!--[if lt IE 9]><script>document.createElement('video');<\/script><![endif]-->\n<video class=\"wp-video-shortcode\" id=\"video-1463-1\" width=\"474\" height=\"356\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/DRV8830_002.mp4?_=1\" \/><a href=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/DRV8830_002.mp4\">https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/DRV8830_002.mp4<\/a><\/video><\/div>\n<p>\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u3064\u3044\u3066\u7c21\u5358\u306b\u8aac\u660e\u3057\u307e\u3059\u3002\u4ed6\u306e\uff29<sup>\uff12<\/sup>\uff23\u30c7\u30d0\u30a4\u30b9\u3068\u540c\u3058\u3088\u3046\u306b\u30c7\u30d0\u30a4\u30b9\u30a2\u30c9\u30ec\u30b9\uff0c\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u30ec\u30b8\u30b9\u30bf\u30a2\u30c9\u30ec\u30b9\u3092\u6307\u5b9a\u5f8c\u3001\u8a2d\u5b9a\u5024\u3092\u66f8\u304d\u8fbc\u307f\u307e\u3059\u3002\u53d6\u6271\u8aac\u660e\u66f8\u306b\u8a18\u8f09\u304c\u3042\u308b\u901a\u308a\u3001\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u30ec\u30b8\u30b9\u30bf\u306e\u4e2d\u8eab\u306f\u3001\u4e0a\u4f4d\uff16\u30d3\u30c3\u30c8\u304c\u901f\u5ea6\u3001\u4e0b\u4f4d\uff12\u30d3\u30c3\u30c8\u3067\u52d5\u4f5c\u5185\u5bb9\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br \/>\n\u884c\u756a4\uff5e6\u3067\u306f\u3001\u30c7\u30d0\u30a4\u30b9\u30a2\u30c9\u30ec\u30b9\uff0c\u30ec\u30b8\u30b9\u30bf\u30a2\u30c9\u30ec\u30b9\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002\u884c\u756a9\uff5e12\u3067\u52d5\u4f5c\u5185\u5bb9\u3001\u884c\u756a15\u3067\u4eca\u56de\u4f7f\u7528\u3059\u308b\u901f\u5ea6\u3092\u5909\u6570\u306b\u683c\u7d0d\u3057\u307e\u3059\u3002\u884c\u756a18\uff5e24\u306f\u30ec\u30b8\u30b9\u30bf\u30a2\u30c9\u30ec\u30b9\uff0c\u901f\u5ea6\uff0c\u52d5\u4f5c\u5185\u5bb9\u3092\u5f15\u6570\u3068\u3057\u3066\u53d7\u3051\u53d6\u308a\u3001\uff29<sup>\uff12<\/sup>\uff23\u901a\u4fe1\u306b\u3088\u3063\u3066\u30c7\u30d0\u30a4\u30b9\u30a2\u30c9\u30ec\u30b9\u306e\u4e2d\u8eab\u3092\u66f8\u304d\u5909\u3048\u308b\u95a2\u6570\u3067\u3059\u3002\u884c\u756a19\u3067\u901f\u5ea6\u30c7\u30fc\u30bf\u3092\uff12\u30d3\u30c3\u30c8\u30b7\u30d5\u30c8\u3057\u4e0a\u4f4d\uff16\u30d3\u30c3\u30c8\u306b\u79fb\u52d5\u3057\u305f\u3082\u306e\u3068\u52d5\u4f5c\u5185\u5bb9(\u4e0b\u4f4d\uff12\u30d3\u30c3\u30c8)\u306e\u30d3\u30c3\u30c8\u30aa\u30a2\uff08\u8ad6\u7406\u548c\uff09\u51e6\u7406\u3057\u3001\u66f8\u304d\u8fbc\u307f\u30c7\u30fc\u30bf\u3068\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n\uff14\u3064\u306e\u52d5\u4f5c\u30e2\u30fc\u30c9\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u5b9f\u969b\u306b\u30d7\u30ed\u30b0\u30e9\u30e0\u4e2d\u3067\u3053\u306e\u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u3066\u3044\u307e\u3059\u306e\u3067\u78ba\u8a8d\u3057\u3066\u307f\u3066\u4e0b\u3055\u3044\u3002\u305d\u308c\u305e\u308c\u30d7\u30ed\u30b0\u30e9\u30e0\u5185\u306b\u30b3\u30e1\u30f3\u30c8\u304c\u3042\u308a\u307e\u3059\u306e\u3067\u3001\u8a73\u7d30\u8aac\u660e\u306f\u7701\u7565\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"height-set:true lang:arduino decode:true\" title=\"ESPR_DRV8830_02\">#include &lt;Wire.h&gt;\r\n\r\n\/\/ I2C\u30a2\u30c9\u30ec\u30b9\r\n#define ADR_DVC   0x64  \/\/ I2C\uff83\uff9e\uff8a\uff9e\uff72\uff7d\uff71\uff84\uff9e\uff9a\uff7d\uff08DRV8830\uff09\r\n#define CTR_ADR   0x00  \/\/ CONTROL_\uff9a\uff7c\uff9e\uff7d\uff80\r\n#define FLT_ADR   0x01  \/\/ FAULT___\uff9a\uff7c\uff9e\uff7d\uff80\r\n\r\n\/\/ \u99c6\u52d5\u5236\u5fa1\r\n#define D_RDY  0x00     \/\/ \u30b9\u30bf\u30f3\u30d0\u30a4   \r\n#define D_REV  0x01     \/\/ \u9006\u8ee2\r\n#define D_STD  0x02     \/\/ \u6b63\u8ee2\r\n#define D_BRK  0x03     \/\/ \u30d6\u30ec\u30fc\u30ad\r\n\r\n\/\/ \u96fb\u5727\u8a2d\u5b9a\r\nbyte SET_V[]={ 0x00 , 0x06 , 0x25};\r\n\r\n\/\/ \u5236\u5fa1\u30b3\u30de\u30f3\u30c9\u9001\u4fe1\r\nvoid w_rg_v(byte reg , byte v_set , byte cont_d){\r\n    int reg_data = v_set &lt;&lt; 2 | cont_d ;\r\n    Wire.beginTransmission(ADR_DVC) ;\r\n    Wire.write(reg) ;\r\n    Wire.write(reg_data);\r\n    Wire.endTransmission(true);\r\n}\r\n\r\n\r\nvoid setup() {\r\n    Wire.begin(12,14);\r\n\r\n    \/\/ \u30b9\u30bf\u30f3\u30d0\u30a4\r\n    w_rg_v(CTR_ADR , SET_V[0] , D_RDY); \r\n    delay(1000);\r\n}\r\n\r\nvoid loop() {\r\n\r\n    \/\/ \u9806\u65b9\u5411 \u59cb\u52d5\uff08\u4f4e\u901f\uff09   \r\n    w_rg_v(CTR_ADR , SET_V[1] , D_STD); \r\n    delay(3000);\r\n\r\n    \/\/ \u9806\u65b9\u5411 \u52a0\u901f\uff08\u9ad8\u901f\uff09\r\n    w_rg_v(CTR_ADR , SET_V[2] , D_STD); \r\n    delay(3000);\r\n \r\n    \/\/ \u9806\u65b9\u5411 \u6e1b\u901f\uff08\u4f4e\u901f\uff09 \r\n    w_rg_v(CTR_ADR , SET_V[1] , D_STD); \r\n    delay(3000);\r\n\r\n    \/\/ \u30d6\u30ec\u30fc\u30ad\uff08\u505c\u6b62\uff09      \r\n    w_rg_v(CTR_ADR , SET_V[0] , D_BRK); \r\n    delay(3000);\r\n\r\n    \/\/ \u9006\u65b9\u5411 \u59cb\u52d5\uff08\u4f4e\u901f\uff09   \r\n    w_rg_v(CTR_ADR , SET_V[1] , D_REV); \r\n    delay(3000);\r\n\r\n    \/\/ \u9006\u65b9\u5411 \u52a0\u901f\uff08\u9ad8\u901f\uff09\r\n    w_rg_v(CTR_ADR , SET_V[2] , D_REV); \r\n    delay(3000);\r\n \r\n    \/\/ \u9006\u65b9\u5411 \u6e1b\u901f\uff08\u4f4e\u901f\uff09 \r\n    w_rg_v(CTR_ADR , SET_V[1] , D_REV); \r\n    delay(3000);\r\n\r\n    \/\/ \u30d6\u30ec\u30fc\u30ad\uff08\u505c\u6b62\uff09      \r\n    w_rg_v(CTR_ADR , SET_V[0] , D_BRK); \r\n    delay(3000);\r\n\r\n}<\/pre>\n<p><noscript><a href=\"\/\/ck.jp.ap.valuecommerce.com\/servlet\/referral?sid=3422639&#038;pid=885499453\" target=\"_blank\" rel=\"nofollow\"><img src=\"\/\/ad.jp.ap.valuecommerce.com\/servlet\/gifbanner?sid=3422639&#038;pid=885499453\" border=\"0\"><\/a><\/noscript><\/p>\n<table style=\"width: 98.9452%; border-collapse: collapse; border-style: none; height: 27px;\" border=\"1\">\n<tbody>\n<tr style=\"height: 27px;\">\n<td style=\"width: 3.37549%; border-style: none; background-color: #1414f7; height: 27px;\"><\/td>\n<td style=\"width: 2.15054%; border-style: none; background-color: #f0f09b; height: 27px;\"><\/td>\n<td style=\"width: 95.3341%; border-style: none; background-color: #f0f09b; height: 27px;\"><span style=\"color: #000080; font-size: 18pt;\"><strong>\u5916\u90e8\u64cd\u4f5c\u7528\u63a5\u7d9a<\/strong><\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u6b21\u306b\u5b9f\u969b\u306b\u5916\u90e8\u30b9\u30a3\u30c3\u30c1\uff0cLED\u3092\u3064\u3051\u3066\u3001\u4eba\u306e\u64cd\u4f5c\u6a5f\u80fd\u3092\u8ffd\u52a0\u3057\u3066\u307f\u307e\u3059\u3002\u4e0b\u306e\u5199\u771f\u306f\u3001\u4ee5\u524d Arduino UNO \u3067\u8a55\u4fa1\u3057\u305f\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\uff08MCP23017-E\/SP\uff09\u3067\u30c7\u30b8\u30bf\u30eb\u5165\u51fa\u529b\u3092\u62e1\u5f35\u3057\u305f\u3082\u306e\u3067\u3059\u3002MCP23017-E\/SP\u306e\u30c7\u30d0\u30a4\u30b9\u30a2\u30c9\u30ec\u30b9\u3092\u8a2d\u5b9a\u3059\u308b15\uff5e17pin\u3092\u5168\u3066GND\u306b\u843d\u3068\u3057\u3066\u3044\u307e\u3059\u306e\u3067\u3001\u30c7\u30d0\u30a4\u30b9\u30a2\u30c9\u30ec\u30b9\u306f\u201c0x20\u201d\u3067\u3059\u3002\u4ed6\u306e\u96fb\u6e90\u3001LED\u3001\u30b9\u30a3\u30c3\u30c1\u7b49\u306e\u63a5\u7d9a\u306f\u5b9c\u3057\u3051\u308c\u3070\u904e\u53bb\u6295\u7a3f\u3092\u53c2\u8003\u306b\u3057\u3066\u307f\u3066\u4e0b\u3055\u3044\u3002<br \/>\n<span style=\"text-decoration: underline;\">\u3010\u53c2\u8003\u3011<span style=\"font-size: 12pt;\"><a href=\"https:\/\/kats-eye.net\/info\/2018\/11\/07\/mcp23017-esp\/\" target=\"_blank\" rel=\"noopener\">I2C\u63a5\u7d9a\u306e\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\u3092\u4f7f\u3063\u3066\u307f\u308b<\/a><br \/>\n<\/span><\/span><span style=\"font-size: 12pt;\">\u5c1a\u3001\u8a08\u753b\u6027\u306a\u304f\u7d99\u304e\u8db3\u3057\u3066\u3044\u307e\u3059\u306e\u3067\u5224\u308a\u306b\u304f\u304f\u7533\u3057\u8a33\u3042\u308a\u307e\u305b\u3093\u3002\u305f\u3060\u3001\u3053\u306e\u69d8\u306b\u8ffd\u52a0\u3057\u3084\u3059\u3044\u306e\u304c\u3001\uff29<sup>\uff12<\/sup>\uff23\u63a5\u7d9a\u306e\u5229\u70b9\u3067\u3042\u308b\u3068\u601d\u3044\u307e\u3059\u3002<\/span><\/p>\n<p><span style=\"text-decoration: underline;\"><img loading=\"lazy\" class=\"aligncenter size-full wp-image-1498\" src=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/022-1.jpg\" alt=\"\" width=\"1013\" height=\"815\" srcset=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/022-1.jpg 1013w, https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/022-1-300x241.jpg 300w, https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/022-1-768x618.jpg 768w\" sizes=\"(max-width: 1013px) 100vw, 1013px\" \/><\/span>\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\uff08MCP23017-E\/SP\uff09\u306b\u306f\u3001\u5199\u771f\u306e\u901a\u308a\u5de6\u304b\u3089LED\uff11\uff5e\uff17\u3001\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\uff08SW1\uff0cSW\uff12\uff09\u3001\u30d7\u30c3\u30b7\u30e5\u30b9\u30a3\u30c3\u30c1\uff08SW\uff13\uff09\u3092\u63a5\u7d9a\u3057\u3066\u3044\u307e\u3059\u3002\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\u306f\u5de6\u30fb\u4e2d\u9593\u30fb\u53f3\u306e\uff13\u30f6\u6240\u3067\u505c\u307e\u308a\u3001\u4e2d\u9593\u3067\u306fSW1\uff0c\uff12\u3068\u3082\u30aa\u30d5\u72b6\u614b\u306b\u306a\u308a\u307e\u3059\u3002<br \/>\n\u4e0b\u306e\u8868\u306f\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\uff08MCP23017-E\/SP\uff09\u3068\u5404SW\uff0cLED\u306e\u63a5\u7d9a\u72b6\u614b\u3067\u3059\u3002\u4eca\u56de\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u4f7f\u7528\u3059\u308b\u306e\u306f\u3001\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\uff08SW1\uff0cSW\uff12\uff09\u3068 LED\uff11\uff5e\uff13\u3067\u3059\u3002<\/p>\n<p><img loading=\"lazy\" class=\"aligncenter size-full wp-image-1530\" src=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/106.jpg\" alt=\"\" width=\"489\" height=\"147\" srcset=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/106.jpg 489w, https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/106-300x90.jpg 300w\" sizes=\"(max-width: 489px) 100vw, 489px\" \/><\/p>\n<table style=\"width: 98.9452%; border-collapse: collapse; border-style: none; height: 27px;\" border=\"1\">\n<tbody>\n<tr style=\"height: 27px;\">\n<td style=\"width: 3.37549%; border-style: none; background-color: #1414f7; height: 27px;\"><\/td>\n<td style=\"width: 2.15054%; border-style: none; background-color: #f0f09b; height: 27px;\"><\/td>\n<td style=\"width: 95.3341%; border-style: none; background-color: #f0f09b; height: 27px;\"><span style=\"color: #000080; font-size: 18pt;\"><strong>\u5916\u90e8\u64cd\u4f5c\u7528\u30d7\u30ed\u30b0\u30e9\u30e0<\/strong><\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"text-decoration: underline; color: #000000; background-color: #ffcc00;\">\uff08\uff11\uff09\u30b9\u30a3\u30c3\u30c1\u5165\u529b\u6642\u306e\u30d7\u30ed\u30da\u30e9\u99c6\u52d5\u30d7\u30ed\u30b0\u30e9\u30e0\u2460<\/span><br \/>\n\u5916\u90e8\u30b9\u30a3\u30c3\u30c1\uff0cLED\u3092\u4f7f\u3063\u3066\u3001\u4eba\u306e\u64cd\u4f5c\u3092\u8003\u616e\u3057\u305f\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u691c\u8a0e\u3057\u307e\u3059\u3002\u52d5\u4f5c\u3068\u3057\u3066\u306f\u3001\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\uff08SW1\uff09\u5165\u529b\u6642\u306b\u30d7\u30ed\u30da\u30e9\u306f\u6b63\u8ee2\u3001LED\uff11\u70b9\u706f\u3001\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\uff08SW\uff12\uff09\u5165\u529b\u6642\u306b\u30d7\u30ed\u30da\u30e9\u306f\u9006\u8ee2\u3001LED\uff12\u70b9\u706f\u3001\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\u672a\u5165\u529b\u6642\u30d7\u30ed\u30da\u30e9\u306f\u505c\u6b62\u3001LED\u306f\u5168\u6d88\u706f\u306b\u306a\u308b\u69d8\u306b\u3057\u307e\u3059\u3002<\/p>\n<p>\u5148\u305a\u3001\u4eca\u56de\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\uff08MCP23017-E\/SP\uff09\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059\u306e\u3067\u3001\u30c7\u30d0\u30a4\u30b9\u30a2\u30c9\u30ec\u30b9\u5b9a\u7fa9\uff08\u884c\u756a3\uff5e5\uff09\u3001<span style=\"font-size: 12pt;\">\uff29<sup>\uff12<\/sup>\uff23\u63a5\u7d9a\u306b\u3088\u308b\u66f8\u8fbc\u95a2\u6570\uff08\u884c\u756a30\uff5e36\uff09\uff0f\u8aad\u51fa\u95a2\u6570\uff08\u884c\u756a38\uff5e47\uff09\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n\u5c1a\u3001DRV8830\u3078\u306e\u66f8\u304d\u8fbc\u307f\u95a2\u6570\uff08\u884c\u756a24\uff5e28\uff09\u306f\u3001\u901f\u5ea6\u30c7\u30fc\u30bf\u3068\u52d5\u4f5c\u5185\u5bb9\u3092\u66f8\u304d\u8fbc\u307f\u30c7\u30fc\u30bf\u306b\u5909\u63db\u3059\u308b\u51e6\u7406\u306e\u307f\u3092\u884c\u3044\u3001\u66f8\u304d\u8fbc\u307f\u306f\u66f8\u8fbc\u95a2\u6570\uff08\u884c\u756a30\uff5e36\uff09\u306b\u96c6\u7d04\u3057\u3066\u3044\u307e\u3059\u3002\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\u306e\u30dd\u30fc\u30c8\u5165\u51fa\u529b\u8a2d\u5b9a\u306f\u3001\u884c\u756a58\uff5e62\u3067\u884c\u3063\u3066\u3044\u307e\u3059\u3002<\/span><\/p>\n<p>\u6b21\u306b\u30e1\u30a4\u30f3\u30eb\u30fc\u30d7\u5185\u306e\u51e6\u7406\u306b\u3064\u3044\u3066\u8aac\u660e\u3057\u307e\u3059\u3002<br \/>\n\u884c\u756a69\u3067\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\u306eA\u30dd\u30fc\u30c8\u304b\u3089\u3001SW\u306e\u5165\u529b\u72b6\u614b\u3092\u8aad\u307f\u53d6\u3063\u305f\u5f8c\u3001\u884c\u756a70\u3067\u30d3\u30c3\u30c8\u53cd\u8ee2\u51e6\u7406\u3092\u884c\u3063\u3066\u3044\u307e\u3059\u3002\uff08\u5165\u529b\u304c\u3042\u308b\u5834\u5408\u306b\u30d3\u30c3\u30c8\u304c\u201d\uff11\u201d\u306b\u306a\u308b\u69d8\u306b\u3057\u3066\u3044\u307e\u3059\u3002\uff09<br \/>\n\u884c\u756a72\u3067\uff11\u30d3\u30c3\u30c8\u76ee\uff08SW\uff11\uff09\u306e\u5165\u529b\u5224\u5b9a\u3092\u884c\u3044\u3001\u5165\u529b\u304c\u3042\u308b\u5834\u5408\u3001\u884c\u756a73\u3067LED1\u3092\u70b9\u706f\u3057\u3001\u884c\u756a74\u3067\u5909\u6570\u00a0 r_MODE \u306b\u52d5\u4f5c\u5185\u5bb9\uff08\u6b63\u8ee2\uff09\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br \/>\n\u540c\u69d8\u306b<span style=\"font-size: 12pt;\">\u884c\u756a75\u3067\u3001SW\uff12\u306e\u5165\u529b\u5224\u5b9a\u3092\u884c\u3044\u3001\u884c\u756a76\u3067LED2\u3092\u70b9\u706f\u3001\u884c\u756a77\u3067\u5909\u6570\u00a0 r_MODE \u306b\u52d5\u4f5c\u5185\u5bb9\uff08\u9006\u8ee2\uff09\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br \/>\n<\/span><span style=\"font-size: 12pt;\">\u884c\u756a78\u306f\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\u304c\u4e2d\u9593\u4f4d\u7f6e\u306e\u5834\u5408\u3067\u3059\u3002\uff08\uff11\u3001\uff12\u30d3\u30c3\u30c8\u5165\u529b\u304c\u306a\u3044\u72b6\u614b\uff09\u3053\u306e\u5834\u5408\u306fLED3\u3092\u70b9\u706f\u3057\u3001\u52d5\u4f5c\u5185\u5bb9\uff08\u30d6\u30ec\u30fc\u30ad\uff09\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br \/>\n\u52d5\u4f5c\u5185\u5bb9\u304c \u201c\u30d6\u30ec\u30fc\u30ad\u201d \u4ee5\u5916\u306e\u5834\u5408\u3001\u884c\u756a84\uff5e94\u304c\u5b9f\u884c\u3055\u308c\u3001\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\u306e\u5165\u529b\u306b\u5bfe\u5fdc\u3059\u308b\u65b9\u5411\u306b\u3001\u4f4e\u901f\u2192\u9ad8\u901f\u2192\u4f4e\u901f \u306e\u9806\u306b\u56de\u8ee2\u3057\u307e\u3059\u3002\u305d\u306e\u5f8c\u3001\u52d5\u4f5c\u5185\u5bb9\u306b\u95a2\u4fc2\u306a\u304f\u3001\u884c\u756a97\uff5e99\u306b\u3088\u3063\u3066\uff13\u79d2\u9593\u505c\u6b62\u3057\u3001\u518d\u3073\u30dd\u30fc\u30c8A\u8aad\u307f\u53d6\u308a\u304b\u3089\u51e6\u7406\u304c\u518d\u958b\u3055\u308c\u307e\u3059\u3002<br \/>\n<\/span><\/p>\n<pre class=\"height-set:true lang:arduino decode:true\" title=\"ESPR_DRV8830_02_mdfy01.ino\">#include &lt;Wire.h&gt;\r\n\r\n\/\/ \u2605 IO-EXPANDER(MCP23017)\u5b9a\u6570\u30fb\u5909\u6570\r\n#define DVC_MCP23017 0x20                         \/\/ IO-EXPANDER_00 \uff71\uff84\uff9e\uff9a\uff7d\uff08\u5916\u90e8\u7aef\u5b50\u8a2d\u5b9a\uff09\r\nuint8_t U_PA = 0 ;                                \/\/ I\/O \u8aad\u8fbc\u5909\u6570  \r\n\r\n\/\/ \u5171\u901a\r\nuint8_t r_MODE ;\r\n\r\n\/\/ \u25c6 DRV8830 I2C\uff71\uff84\uff9e\uff9a\uff7d(\uff93\uff70\uff80\u5236\u5fa1\u57fa\u677f)\r\n#define ADR_DVC   0x64                            \/\/ I2C\uff83\uff9e\uff8a\uff9e\uff72\uff7d\uff71\uff84\uff9e\uff9a\uff7d\uff08DRV8830\uff09\r\n#define CTR_ADR   0x00                            \/\/ CONTROL_\uff9a\uff7c\uff9e\uff7d\uff80\r\n#define FLT_ADR   0x01                            \/\/ FAULT___\uff9a\uff7c\uff9e\uff7d\uff80\r\n\r\n\/\/ \u25c6 \u99c6\u52d5\u5236\u5fa1\r\n#define D_RDY  0x00                               \/\/ \u30b9\u30bf\u30f3\u30d0\u30a4   \r\n#define D_REV  0x01                               \/\/ \u9006\u8ee2\r\n#define D_STD  0x02                               \/\/ \u6b63\u8ee2\r\n#define D_BRK  0x03                               \/\/ \u30d6\u30ec\u30fc\u30ad\r\n\r\n\/\/ \u25c6 \u96fb\u5727\u8a2d\u5b9a\r\nbyte SET_V[]={ 0x00 , 0x06 , 0x25 };\r\n\r\n\/\/ \u25c6 \u5236\u5fa1\u30b3\u30de\u30f3\u30c9\u9001\u4fe1\r\nvoid w_rg_v(byte reg , byte v_set , byte cont_d){\r\n    int reg_data = v_set &lt;&lt; 2 | cont_d ;\r\n    wrt_reg( ADR_DVC , reg , reg_data);\r\n}\r\n\r\n\/\/ \u2605 \u6307\u5b9a\u30ec\u30b8\u30b9\u30bf\u306b\u30c7\u30fc\u30bf\u66f8\u304d\u8fbc\u307f\r\nvoid wrt_reg(byte dvc_adrs , uint8_t reg , uint8_t value) {\r\n    Wire.beginTransmission(dvc_adrs);             \/\/ \u30c7\u30d0\u30a4\u30b9\u6307\u5b9a\u3001\u901a\u4fe1\u958b\u59cb\r\n    Wire.write((uint8_t)reg);                     \/\/ \u30ec\u30b8\u30b9\u30bf\u6307\u5b9a\r\n    Wire.write((uint8_t)(value));                 \/\/ \u30c7\u30fc\u30bf\u66f8\u8fbc\r\n    Wire.endTransmission();                       \/\/ \u9001\u4fe1\u5b8c\u4e86\r\n}\r\n\r\n\/\/ \u2605 \u6307\u5b9a\u30ec\u30b8\u30b9\u30bf\u304b\u3089\u30c7\u30fc\u30bf\u8aad\u307f\u51fa\u3057\r\nuint8_t read_reg(byte dvc_adrs , uint8_t reg) {\r\n    Wire.beginTransmission(dvc_adrs);             \/\/ \u9001\u4fe1\u51e6\u7406\u958b\u59cb\r\n    Wire.write(reg);                              \/\/ \u30ec\u30b8\u30b9\u30bf\u6307\u5b9a\r\n    Wire.endTransmission(false);                  \/\/ \u9001\u4fe1\u5b8c\u4e86(\u30b3\u30cd\u30af\u30b7\u30e7\u30f3\u7dad\u6301)\r\n    Wire.requestFrom(dvc_adrs , 1);               \/\/ 1byte\u30c7\u30fc\u30bf\u306b\u8981\u6c42\r\n\r\n    if (! Wire.available()) return -1;            \/\/ \u30c7\u30fc\u30bf\u6709\u7121\u5224\u5b9a\r\n    return (Wire.read());                         \/\/ 1byte\u30c7\u30fc\u30bf  \r\n}\r\n\r\n\/\/ \u8d77\u52d5\u5f8c\u3001\u521d\u56de\u51e6\u7406\r\nvoid setup() {\r\n    Wire.begin(12,14);\r\n    \r\n    \/\/ \u30b9\u30bf\u30f3\u30d0\u30a4\r\n    w_rg_v(CTR_ADR , SET_V[0] , D_RDY); \r\n    Serial.begin(115200);\r\n    Serial.println(\"STAND BY\");\r\n\r\n    \/\/ DVC_MCP23017(DVC\u30a2\u30c9\u30ec\u30b9\uff1a0x20)\r\n    wrt_reg( DVC_MCP23017 , 0x00 , 0xFF );        \/\/ I\/O-PortA \u5165\u529b\u8a2d\u5b9a\r\n    wrt_reg( DVC_MCP23017 , 0x0C , 0xFF );        \/\/ I\/O-PortA \u5165\u529b\uff8c\uff9f\uff99\uff71\uff6f\uff8c\uff9f\u8a2d\u5b9a\r\n    wrt_reg( DVC_MCP23017 , 0x01 , 0x00 );        \/\/ I\/O-PortB \u51fa\u529b\u8a2d\u5b9a\r\n    wrt_reg( DVC_MCP23017 , 0x13 , 0x00 );        \/\/ I\/O-PortB \u5168OFF\r\n \r\n    delay(1000);\r\n}\r\n\r\n\/\/ \u7e70\u308a\u8fd4\u3057\u51e6\u7406\r\nvoid loop() {\r\n    U_PA = read_reg( DVC_MCP23017 , 0x12 );       \/\/ \uff83\uff9e\uff8a\uff9e\uff72\uff7d\uff65\uff9a\uff7c\uff9e\uff7d\uff80\u6307\u5b9a\u3057\uff83\uff9e\uff70\uff80\u8aad\u53d6\r\n    uint8_t P_PA = 255 - U_PA ;                   \/\/ \u88dc\u6570\uff08High\/Low\u53cd\u8ee2\u51e6\u7406\uff09\r\n\r\n    if ((P_PA &amp; 1 ) == 1 ){\r\n        wrt_reg( DVC_MCP23017 , 0x13 , 0x01 );    \/\/ DVC00 I\/O-PortB \u51fa\u529b\u8a2d\u5b9a\r\n        r_MODE = D_STD ;\r\n    }else if ((P_PA &amp; 2 ) == 2 ){\r\n        wrt_reg( DVC_MCP23017 , 0x13 , 0x02 );    \/\/ DVC00 I\/O-PortB \u51fa\u529b\u8a2d\u5b9a\r\n        r_MODE = D_REV ;\r\n    } else {\r\n        wrt_reg( DVC_MCP23017 , 0x13 , 0x04 );    \/\/ DVC00 I\/O-PortB \u51fa\u529b\u8a2d\u5b9a\r\n        r_MODE = D_BRK ;\r\n    }\r\n\r\n    if (r_MODE != D_BRK){\r\n          \/\/ \u9806\u65b9\u5411 \u59cb\u52d5\uff08\u4f4e\u901f\uff09   \r\n          w_rg_v(CTR_ADR , SET_V[1] , r_MODE); \r\n          delay(3000);\r\n\r\n          \/\/ \u9806\u65b9\u5411 \u52a0\u901f\uff08\u9ad8\u901f\uff09\r\n          w_rg_v(CTR_ADR , SET_V[2] , r_MODE); \r\n          delay(3000);\r\n \r\n          \/\/ \u9806\u65b9\u5411 \u6e1b\u901f\uff08\u4f4e\u901f\uff09 \r\n          w_rg_v(CTR_ADR , SET_V[1] , r_MODE); \r\n          delay(3000);\r\n    }\r\n\r\n    \/\/ \u30d6\u30ec\u30fc\u30ad      \r\n    w_rg_v(CTR_ADR , SET_V[ 0 ] , D_BRK); \r\n    delay(3000);\r\n    \r\n}<\/pre>\n<p>\u4e00\u5fdc\u3001\u52d5\u304d\u307e\u3057\u305f\u304c\u3053\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u306f\u6c17\u306b\u306a\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002\u884c\u756a83\uff5e99\u306e \u201cdelay(3000);\u201d \u3092\u542b\u3080\u30d7\u30ed\u30da\u30e9\u904b\u8ee2\u3057\u3066\u3044\u308b\u9593\u306f\u30b9\u30a3\u30c3\u30c1\u5165\u529b\u3092\u691c\u51fa\u3059\u308b\u3053\u3068\u304c\u51fa\u6765\u305a\u3001\u30b9\u30a3\u30c3\u30c1\u3092\u5909\u66f4\u3057\u3066\u3082\u9577\u3044\u3068\u304d\u306b\u306f\uff11\uff12\u79d2\u7a0b\u5ea6\uff08=\uff13\u79d2X4\u56de\uff09\u53cd\u5fdc\u3057\u306a\u3044\u306e\u3067\u3059\u3002\u30d7\u30ed\u30b0\u30e9\u30e0\u2461\u3067\u306f\u3001\u5fdc\u7b54\u6642\u9593\u306e\u6539\u5584\u3092\u8a66\u307f\u307e\u3059\u3002<\/p>\n<p><noscript><a href=\"\/\/ck.jp.ap.valuecommerce.com\/servlet\/referral?sid=3422639&#038;pid=885466328\" target=\"_blank\" rel=\"nofollow\"><img src=\"\/\/ad.jp.ap.valuecommerce.com\/servlet\/gifbanner?sid=3422639&#038;pid=885466328\" border=\"0\"><\/a><\/noscript><\/p>\n<p><span style=\"text-decoration: underline; color: #000000; background-color: #ffcc00;\">\uff08\uff12\uff09\u30b9\u30a3\u30c3\u30c1\u5165\u529b\u6642\u306e\u30d7\u30ed\u30da\u30e9\u99c6\u52d5\u30d7\u30ed\u30b0\u30e9\u30e0\u2461<br \/>\n<\/span><span style=\"color: #000000;\">\u30c8\u30b0\u30eb\u30b9\u30a3\u30c3\u30c1\u5207\u308a\u63db\u3048\u6642\u306b\u3059\u3050\u306b\u53cd\u5fdc\u3059\u308b\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u5909\u66f4\u3057\u3066\u307f\u307e\u3057\u305f\u3002\u5148\u305a\u306f\u52d5\u753b\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002<br \/>\n<\/span><\/p>\n<div style=\"width: 474px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1463-2\" width=\"474\" height=\"356\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/DRV8830_003.mp4?_=2\" \/><a href=\"https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/DRV8830_003.mp4\">https:\/\/kats-eye.net\/info\/wp-content\/uploads\/2018\/11\/DRV8830_003.mp4<\/a><\/video><\/div>\n<p>\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u6982\u8981\u3092\u8aac\u660e\u3057\u307e\u3059\u3002\u30eb\u30fc\u30d7\u5185\u306e\u51e6\u7406\u3092\u6b62\u3081\u3066\u3057\u307e\u3046 \u201cdelay();\u201d \u306f\u57fa\u672c\u7684\u306b\u9664\u53bb\u3057\u307e\u3057\u305f\u3002\u6587\u5b57\u5909\u6570\u201cDRV_STS\u201d\u306b\u5404\u51e6\u7406\u5b8c\u4e86\u6642\u306b\u7570\u306a\u308b\u6587\u5b57\u3092\u8a2d\u5b9a\u3001\u6b21\u51e6\u7406\u306b\u79fb\u884c\u3057\u307e\u3059\u3002\u4f8b\u3048\u3070\u884c\u756a96\u3067\u201cDRV_STS\u201d\u3092&#8221;STS01&#8243;\u306b\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\u304c\u3001\u3053\u306e\u6b21\u306b\u5b9f\u884c\u3067\u304d\u308b\u53ef\u80fd\u6027\u304c\u3042\u308b\u51e6\u7406\u306f\u884c\u756a101\uff5e105\u3067\u3059\u3002\u4f46\u3057\u3001\u524d\u306e\u51e6\u7406\u304c\u5b8c\u4e86\u3057\u305f\u00a0 time_bef\u00a0 \u304b\u3089\uff13\u79d2\u4ee5\u4e0a\u7d4c\u904e\u6642\u306b\u6761\u4ef6\u3092\u6e80\u305f\u3057\u3001\u305d\u306e\u5f8c\u51e6\u7406\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002\u6642\u9593\u306e\u8a08\u6e2c\u306b\u306f\u30d7\u30ed\u30b0\u30e9\u30e0\u958b\u59cb\u5f8c\u306e\u7d4c\u904e\u6642\u9593\u3092\u5f97\u308b\u3053\u3068\u304c\u51fa\u6765\u308b\u00a0 millis()\u00a0 \u3068\u3044\u3046\u95a2\u6570\u3092\u4f7f\u3063\u3066\u3044\u307e\u3059\u3002<br \/>\n\u3053\u306e\u69d8\u306b\u3059\u308b\u3053\u3068\u3067\u3001\u30eb\u30fc\u30d7\u306e\u4e2d\u306e\u51e6\u7406\u304c\u7e70\u308a\u8fd4\u3057\u5b9f\u884c\u3055\u308c\u308b\u69d8\u306b\u306a\u308a\u3001\u30b9\u30a3\u30c3\u30c1\u7b49\u306e\u5916\u90e8\u5165\u529b\u3092\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u3067\u691c\u51fa\u3067\u304d\u308b\u69d8\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<pre class=\"height-set:true lang:arduino decode:true \" title=\"ESPR_DRV8830_02_mdfy02\">#include &lt;Wire.h&gt;\r\n\r\n\/\/ \u2605 IO-EXPANDER(MCP23017)\u5b9a\u6570\u30fb\u5909\u6570\r\n#define DVC_MCP23017 0x20                         \/\/ IO-EXPANDER_00 \uff71\uff84\uff9e\uff9a\uff7d\uff08\u5916\u90e8\u7aef\u5b50\u8a2d\u5b9a\uff09\r\nuint8_t U_PA = 0 ;                                \/\/ I\/O \u8aad\u8fbc\u5909\u6570  \r\n\r\n\/\/ \u5171\u901a\r\nuint8_t r_MODE = 0 ;\r\nuint8_t r_MODE_bef = 0 ;\r\nString DRV_STS = \"\" ;\r\n\r\nunsigned long time_bef ;\r\n\r\n\r\n\/\/ \u25c6 DRV8830 I2C\uff71\uff84\uff9e\uff9a\uff7d(\uff93\uff70\uff80\u5236\u5fa1\u57fa\u677f)\r\n#define ADR_DVC   0x64                            \/\/ I2C\uff83\uff9e\uff8a\uff9e\uff72\uff7d\uff71\uff84\uff9e\uff9a\uff7d\uff08DRV8830\uff09\r\n#define CTR_ADR   0x00                            \/\/ CONTROL_\uff9a\uff7c\uff9e\uff7d\uff80\r\n#define FLT_ADR   0x01                            \/\/ FAULT___\uff9a\uff7c\uff9e\uff7d\uff80\r\n\r\n\/\/ \u25c6 \u99c6\u52d5\u5236\u5fa1\r\n#define D_RDY  0x00                               \/\/ \u30b9\u30bf\u30f3\u30d0\u30a4   \r\n#define D_REV  0x01                               \/\/ \u9006\u8ee2\r\n#define D_STD  0x02                               \/\/ \u6b63\u8ee2\r\n#define D_BRK  0x03                               \/\/ \u30d6\u30ec\u30fc\u30ad\r\n\r\n\/\/ \u25c6 \u96fb\u5727\u8a2d\u5b9a\r\nbyte SET_V[]={ 0x00 , 0x06 , 0x25 };\r\n\r\n\/\/ \u25c6 \u5236\u5fa1\u30b3\u30de\u30f3\u30c9\u9001\u4fe1\r\nvoid w_rg_v(byte reg , byte v_set , byte cont_d){\r\n    int reg_data = v_set &lt;&lt; 2 | cont_d ;\r\n    wrt_reg( ADR_DVC , reg , reg_data);\r\n}\r\n\r\n\/\/ \u2605 \u6307\u5b9a\u30ec\u30b8\u30b9\u30bf\u306b\u30c7\u30fc\u30bf\u66f8\u304d\u8fbc\u307f\r\nvoid wrt_reg(byte dvc_adrs , uint8_t reg , uint8_t value) {\r\n    Wire.beginTransmission(dvc_adrs);             \/\/ \u30c7\u30d0\u30a4\u30b9\u6307\u5b9a\u3001\u901a\u4fe1\u958b\u59cb\r\n    Wire.write((uint8_t)reg);                     \/\/ \u30ec\u30b8\u30b9\u30bf\u6307\u5b9a\r\n    Wire.write((uint8_t)(value));                 \/\/ \u30c7\u30fc\u30bf\u66f8\u8fbc\r\n    Wire.endTransmission();                       \/\/ \u9001\u4fe1\u5b8c\u4e86\r\n}\r\n\r\n\/\/ \u2605 \u6307\u5b9a\u30ec\u30b8\u30b9\u30bf\u304b\u3089\u30c7\u30fc\u30bf\u8aad\u307f\u51fa\u3057\r\nuint8_t read_reg(byte dvc_adrs , uint8_t reg) {\r\n    Wire.beginTransmission(dvc_adrs);             \/\/ \u9001\u4fe1\u51e6\u7406\u958b\u59cb\r\n    Wire.write(reg);                              \/\/ \u30ec\u30b8\u30b9\u30bf\u6307\u5b9a\r\n    Wire.endTransmission(false);                  \/\/ \u9001\u4fe1\u5b8c\u4e86(\u30b3\u30cd\u30af\u30b7\u30e7\u30f3\u7dad\u6301)\r\n    Wire.requestFrom(dvc_adrs , 1);               \/\/ 1byte\u30c7\u30fc\u30bf\u306b\u8981\u6c42\r\n\r\n    if (! Wire.available()) return -1;            \/\/ \u30c7\u30fc\u30bf\u6709\u7121\u5224\u5b9a\r\n    return (Wire.read());                         \/\/ 1byte\u30c7\u30fc\u30bf  \r\n}\r\n\r\n\/\/ \u8d77\u52d5\u5f8c\u3001\u521d\u56de\u51e6\u7406\r\nvoid setup() {\r\n    Serial.begin(115200);\r\n    Wire.begin(12,14);\r\n    \r\n    \/\/ \u30b9\u30bf\u30f3\u30d0\u30a4\r\n    w_rg_v(CTR_ADR , SET_V[0] , D_RDY); \r\n    \r\n\r\n    \/\/ DVC_MCP23017(DVC\u30a2\u30c9\u30ec\u30b9\uff1a0x20)\r\n    wrt_reg( DVC_MCP23017 , 0x00 , 0xFF );        \/\/ I\/O-PortA \u5165\u529b\u8a2d\u5b9a\r\n    wrt_reg( DVC_MCP23017 , 0x0C , 0xFF );        \/\/ I\/O-PortA \u5165\u529b\uff8c\uff9f\uff99\uff71\uff6f\uff8c\uff9f\u8a2d\u5b9a\r\n    wrt_reg( DVC_MCP23017 , 0x01 , 0x00 );        \/\/ I\/O-PortB \u51fa\u529b\u8a2d\u5b9a\r\n    wrt_reg( DVC_MCP23017 , 0x13 , 0x00 );        \/\/ I\/O-PortB \u5168OFF\r\n \r\n    delay(1000);\r\n}\r\n\r\n\/\/ \u7e70\u308a\u8fd4\u3057\u51e6\u7406\r\nvoid loop() {\r\n    U_PA = read_reg( DVC_MCP23017 , 0x12 );       \/\/ \uff83\uff9e\uff8a\uff9e\uff72\uff7d\uff65\uff9a\uff7c\uff9e\uff7d\uff80\u6307\u5b9a\u3057\uff83\uff9e\uff70\uff80\u8aad\u53d6\r\n    uint8_t P_PA = 255 - U_PA ;                   \/\/ \u88dc\u6570\uff08High\/Low\u53cd\u8ee2\u51e6\u7406\uff09\r\n    \r\n    if ((P_PA &amp; 1 ) == 1 ){\r\n        wrt_reg( DVC_MCP23017 , 0x13 , 0x01 );    \/\/ DVC00 I\/O-PortB \u51fa\u529b\u8a2d\u5b9a\r\n        r_MODE = D_STD ;\r\n    }else if ((P_PA &amp; 2 ) == 2 ){\r\n        wrt_reg( DVC_MCP23017 , 0x13 , 0x02 );    \/\/ DVC00 I\/O-PortB \u51fa\u529b\u8a2d\u5b9a\r\n        r_MODE = D_REV ;\r\n    } else {\r\n        wrt_reg( DVC_MCP23017 , 0x13 , 0x04 );    \/\/ DVC00 I\/O-PortB \u51fa\u529b\u8a2d\u5b9a\r\n        r_MODE = D_BRK ;\r\n    }\r\n    \r\n    Serial.println(r_MODE_bef) ;\r\n    \r\n    if (r_MODE != D_BRK &amp;&amp; (r_MODE_bef == 0 || r_MODE_bef == r_MODE)){\r\n          r_MODE_bef = r_MODE ;\r\n          \r\n          \/\/ \u9806\u65b9\u5411 \u59cb\u52d5\uff08\u4f4e\u901f\uff09 \r\n          if(DRV_STS==\"\"){                \r\n              w_rg_v(CTR_ADR , SET_V[1] , r_MODE);\r\n              DRV_STS = \"STS01\" ; \r\n              time_bef = millis() ;\r\n          }\r\n\r\n          \/\/ \u9806\u65b9\u5411 \u52a0\u901f\uff08\u9ad8\u901f\uff09\r\n          if (DRV_STS == \"STS01\" &amp;&amp; millis() - time_bef &gt; 3000){\r\n              w_rg_v(CTR_ADR , SET_V[2] , r_MODE); \r\n              DRV_STS = \"STS02\" ; \r\n              time_bef = millis() ;\r\n          }\r\n          \r\n          \/\/ \u9806\u65b9\u5411 \u6e1b\u901f\uff08\u4f4e\u901f\uff09 \r\n          if (DRV_STS == \"STS02\" &amp;&amp; millis() - time_bef &gt; 3000){\r\n              w_rg_v(CTR_ADR , SET_V[1] , r_MODE); \r\n              DRV_STS = \"STS03\" ; \r\n              time_bef = millis() ;\r\n          }\r\n\r\n          \/\/ \u30d6\u30ec\u30fc\u30ad\r\n          if (DRV_STS == \"STS03\" &amp;&amp; millis() - time_bef &gt; 3000){\r\n              w_rg_v(CTR_ADR , SET_V[ 0 ] , D_BRK);\r\n              DRV_STS = \"STS04\" ;\r\n              time_bef = millis() ;\r\n          }\r\n\r\n          \/\/ \u9045\u5ef6\u51e6\u7406\r\n          if (DRV_STS == \"STS04\" &amp;&amp; millis() - time_bef &gt; 3000){ \r\n              r_MODE_bef = 0 ;\r\n              DRV_STS = \"\" ;\r\n          }\r\n          \r\n    }else{\r\n          \/\/ \u30d6\u30ec\u30fc\u30ad      \r\n          w_rg_v(CTR_ADR , SET_V[ 0 ] , D_BRK); \r\n          r_MODE_bef = 0 ;\r\n          DRV_STS = \"\" ;\r\n          delay(500) ; \r\n    }\r\n}<\/pre>\n<p>&nbsp;<\/p>\n<table style=\"width: 98.9452%; border-collapse: collapse; border-style: none; height: 27px;\" border=\"1\">\n<tbody>\n<tr style=\"height: 27px;\">\n<td style=\"width: 3.37549%; border-style: none; background-color: #1414f7; height: 27px;\"><\/td>\n<td style=\"width: 2.15054%; border-style: none; background-color: #f0f09b; height: 27px;\"><\/td>\n<td style=\"width: 95.3341%; border-style: none; background-color: #f0f09b; height: 27px;\"><span style=\"color: #000080;\"><span style=\"font-size: 24px;\"><b>\u307e\u3068\u3081<\/b><\/span><\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u6700\u521d\u30e2\u30fc\u30bf\u30fc\u306e\u30c9\u30e9\u30a4\u30d0\u30fc\u3068\u3057\u3066\u624b\u6301\u3061\u306e\u6771\u829d\u201cTA7291P\u201d\u3068\u3044\u3046\u90e8\u54c1\u3092\u4f7f\u3046\u3053\u3068\u3092\u8003\u3048\u3066\u3044\u307e\u3057\u305f\u304c\u3001ESPr DEVELOPER \u304c\uff13.\uff13V\u306a\u306e\u3067\u3001\u30ec\u30d9\u30eb\u5909\u63db\u3092\u3057\u306a\u304f\u3066\u306f\u3044\u3051\u306a\u3044\u306e\u304b\uff08\uff1f\uff09\u3068\u9762\u5012\u306b\u601d\u3063\u3066\u3044\u305f\u3068\u3053\u308d\u3001DRV8830\u30ad\u30c3\u30c8\u3092\u898b\u3064\u3051\u4f7f\u3063\u3066\u307f\u307e\u3057\u305f\u3002\u3057\u304b\u3057\u306a\u304c\u3089\u3001\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\uff08MCP23017-E\/SP\uff09\u4f7f\u3063\u3066\u3044\u307e\u3059\u306e\u3067\u3001\uff29\uff0f\uff2f\u30a8\u30ad\u30b9\u30d1\u30f3\u30c0\u30fc\u7d4c\u7531\u3067\u6771\u829d\u201cTA7291P\u201d\u3092\u5236\u5fa1\u3059\u308c\u3070\u826f\u3044\u3068\u3044\u3046\u3053\u3068\u306b\u6c17\u3065\u304d\u307e\u3057\u305f\u3002<br \/>\n\u307e\u3068\u3081\u3068\u3057\u307e\u3057\u3066\u306f\u3001\u8a08\u753b\u7684\u306b\u9032\u3081\u3088\u3046\u3068\u3044\u3046\u3053\u3068\u3067\u3059\u3002<br \/>\n\u6298\u89d2\u3067\u3059\u306e\u3067\u3001\u6b21\u56de\u306f\u30e2\u30fc\u30bf\u30fc\u3092\u4f7f\u3063\u3066\u3061\u3087\u3063\u3068\u3057\u305f\u304a\u3082\u3061\u3083\u3092\u4f5c\u3063\u3066\u307f\u3088\u3046\u3068\u601d\u3063\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; DRV8830\u30ad\u30c3\u30c8\u3068\uff29\uff12\uff23\u63a5\u7d9a ESPr Developer\u304b\u3089\u3001\u6a21\u578b\u7b49\u306b\u4f7f\u308f\u308c\u308b\u30e2\u30fc\u30bf\u30fc\u3092\u52d5\u304b\u3057\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3059\u3002\u4eca\u56de\u306f\u79cb\u6708\u96fb\u5b50\u901a\u5546\u3067\u8ca9\u58f2\u3057\u3066\u3044\u308b\uff29\uff12\uff23\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u5185\u8535\u306e\u201c\uff24\uff32\uff36\uff18\uff18\uff13\uff10\u4f7f\u7528\uff24\uff23\u30e2 &hellip; <a href=\"https:\/\/kats-eye.net\/info\/2018\/11\/29\/espr-drv-motor\/\" class=\"more-link\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"screen-reader-text\">ESPr Developer\u3067\u30e2\u30fc\u30bf\u3092\u52d5\u304b\u3059<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":1478,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[24],"tags":[50,25,16,23,52],"_links":{"self":[{"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/posts\/1463"}],"collection":[{"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/comments?post=1463"}],"version-history":[{"count":56,"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/posts\/1463\/revisions"}],"predecessor-version":[{"id":2867,"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/posts\/1463\/revisions\/2867"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/media\/1478"}],"wp:attachment":[{"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/media?parent=1463"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/categories?post=1463"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kats-eye.net\/info\/wp-json\/wp\/v2\/tags?post=1463"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}