{"id":2556,"date":"2012-12-14T16:52:09","date_gmt":"2012-12-14T08:52:09","guid":{"rendered":"http:\/\/blog.dword1511.info\/?p=2556"},"modified":"2012-12-14T16:52:09","modified_gmt":"2012-12-14T08:52:09","slug":"%e7%94%a8-avr-%e5%8d%95%e7%89%87%e6%9c%ba-diy-%e7%ae%80%e6%98%93%e7%94%b5%e5%8e%8b%e8%a1%a8","status":"publish","type":"post","link":"http:\/\/blog.dword1511.info\/?p=2556","title":{"rendered":"\u7528 AVR \u5355\u7247\u673a DIY \u7b80\u6613\u7535\u538b\u8868"},"content":{"rendered":"<p>\u8003\u8651\u5230\u5bb6\u91cc\u6709\u5927\u91cf\u4e0d\u914d\u5bf9\u7684\u5e72\u7535\u6c60\uff0c\u6bcf\u6b21\u628a\u4e07\u7528\u8868\u5e26\u56de\u53bb\u6d4b\u91cf\u53c8\u4e0d\u73b0\u5b9e\uff0c\u53e6\u5916\u4e70\u4e2a\u4e07\u7528\u8868\u53c8\u6709\u70b9\u6d6a\u8d39\uff08\u5176\u5b9e\u4e0d\u8d35\uff0c\u4f46\u662f\u90ae\u8d39\u4f60\u53ef\u6851\u5f97\u8d77\uff1f\uff09\uff0c\u8003\u8651\u5230\u624b\u5934\u8fd8\u6709\u95f2\u7f6e\u7684 ATTINY24A \u5355\u7247\u673a\u5916\u52a0\u56db\u4f4d\u6570\u7801\u7ba1\uff0c\u6240\u4ee5 DIY \u4e00\u4e2a\u4e5f\u4e0d\u662f\u4e0d\u884c\uff0c\u4e8e\u662f\u5f00\u59cb\u52a8\u624b\u3002<\/p>\n<p><!--more--><\/p>\n<p><a href=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/avrvolt.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-2564\" title=\"avrvolt\" src=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/avrvolt-400x188.png\" alt=\"\" width=\"400\" height=\"188\" srcset=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/avrvolt-400x188.png 400w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/avrvolt-1024x483.png 1024w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/avrvolt.png 1436w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/a><\/p>\n<p>\u5148\u5949\u4e0a\u7535\u8def\u56fe\u3002<\/p>\n<p>\u672c\u7740\u6210\u672c\u6700\u4f4e\u7684\u539f\u5219\uff0c\u6570\u7801\u7ba1\u7684\u6bb5\u7528\u5355\u7247\u673a\u7684 PA0 &#8211; PA6 \u76f4\u63a5\u9a71\u52a8\uff08 AVR \u7684 GPIO \u80fd\u63d0\u4f9b 20mA \u7684\u7535\u6d41\uff0c\u6728\u95ee\u9898\uff09\uff0c\u7531\u4e8e\u7535\u6e90\u662f\u4e24\u8282\u5e72\u7535\u6c60\uff08\u4e5f\u5c31\u662f 3V \uff09\uff0c\u800c\u4e14\u6570\u7801\u7ba1\u662f\u4ee5\u626b\u63cf\u7684\u65b9\u5f0f\u95f4\u6b47\u70b9\u4eae\u7684\uff0c\u6240\u4ee5\u4e0d\u52a0\u7535\u963b\u95ee\u9898\u4e0d\u5927\u3002<\/p>\n<p>\u7531\u4e8e\u624b\u5934\u4e0a\u56db\u4f4d\u7684\u6570\u7801\u7ba1\u662f\u5171\u9633\u6781\u7684\uff0c\u6240\u4ee5\u4f4d\u9a71\u52a8\u7528 S9012 PNP \u578b BJT \u5b8c\u6210\uff0c\u8fd9\u4e2a\u7ba1\u5b50\u53ef\u4ee5\u63d0\u4f9b\u6700\u5927 500mA \u7684\u7535\u6d41\uff0c\u62ff\u6765\u70b9\u6570\u7801\u7ba1\u5b8c\u5168\u8db3\u591f\u3002\u4f4d\u9a71\u52a8\u4fe1\u53f7\u7531\u5355\u7247\u673a\u7684 PB0 &#8211; PB3 \u8f93\u51fa\u3002\u81f3\u4e8e\u5c0f\u6570\u70b9\uff0c\u5982\u679c\u9700\u8981\u7684\u8bdd\u53ef\u4ee5\u5c06\u6570\u7801\u7ba1\u7684 dp \u6bb5\u901a\u8fc7\u4e00\u4e2a\u7535\u963b\u548c\u7b2c\u4e00\u4f4d\u7684\u4f4d\u9a71\u52a8\u4fe1\u53f7\u76f8\u8fde\uff0c\u8fd9\u6837\u7b2c\u4e00\u4f4d\u540e\u9762\u5c31\u4f1a\u603b\u662f\u8ddf\u7740\u4e00\u4e2a\u5c0f\u6570\u70b9\u3002<\/p>\n<p>\u7531\u4e8e ATTINY24A \u5185\u5efa\u7684 ADC \u53c2\u8003\u7535\u538b\u662f 1.1V \uff0c\u6240\u4ee5\u8fd9\u91cc\u5c06\u8f93\u5165\u7535\u538b\u7528 47.0k\u03a9 \u548c 4.70k\u03a9 \u7684\u7cbe\u5bc6\u7535\u963b\u5206\u538b\u540e\u7531 PA7 \u8f93\u5165\u7ed9\u5355\u7247\u673a\u5185\u7684 10 \u4f4d ADC \u3002\u8fd9\u6837\u91cf\u7a0b 0.000V &#8211; 9.999V \uff0c\u7cbe\u5ea6 = \uff0847 + 4.7\uff09\/4.7 \u00d7 1.1 \/ 2<sup>10<\/sup> = 0.012V \uff0c\u4e5f\u5c31\u662f\u8bf4\u6570\u7801\u7ba1\u6700\u540e\u4e00\u4f4d\u793a\u6570\u5b9e\u9645\u65e0\u610f\u4e49\u3002\u540c\u65f6\u7531\u4e8e\u5355\u7247\u673a\u81ea\u8eab\u5927\u7535\u6d41\u9a71\u52a8\u6570\u7801\u7ba1\u4f1a\u5bf9\u6a21\u62df\u90e8\u5206\u9020\u6210\u5f71\u54cd\uff0c\u6240\u4ee5\u540e\u9762\u5728\u4ee3\u7801\u91cc\u6709\u4e86\u56db\u6b21\u91c7\u6837\u53d6\u5e73\u5747\u7684\u8d85\u91c7\u6837\u505a\u6cd5\uff0c\u6d88\u9664\u5e72\u6270\u5e76\u5c3d\u53ef\u80fd\u5730\u63d0\u5347\u7cbe\u5ea6\u3002\u8f93\u5165\u7535\u538b\u5728 10.000V &#8211; 12.100V \u65f6\u53ef\u4ee5\u663e\u793a\u8d85\u91cf\u7a0b\u7b26\u53f7\u3002<\/p>\n<p>\u81f3\u6b64\uff0c\u5355\u7247\u673a\u7684 14 \u4e2a\u5f15\u811a\uff08\u5305\u62ec\u4e24\u4e2a\u7535\u6e90\u811a\uff09\u5168\u90e8\u7528\u5b8c\uff0c\u5c31\u8fde\u590d\u4f4d\u811a\u6240\u5728\u7684 PB3 \u90fd\u88ab\u5f53\u505a IO \u7ed9\u5206\u914d\u51fa\u53bb\u4e86\u3002\u56e0\u6b64\u70e7\u5199\u7a0b\u5e8f\u4e4b\u524d\u4e00\u5b9a\u8981\u5c0f\u5fc3\u68c0\u67e5\uff0c\u5426\u5219\u4e00\u65e6\u51fa\u9519\u60f3\u518d ISP \u5c31\u6bd4\u8f83\u9ebb\u70e6\u4e86\uff0c\u5f97\u4fdd\u8bc1\u5355\u7247\u673a\u5728\u7f16\u7a0b\u65f6\u4e0a\u7535\u4e4b\u524d RST \u5c31\u5df2\u7ecf\u62c9\u4f4e\u4e86\u3002<\/p>\n<p><a href=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090987.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-2557\" title=\"P1090987\" src=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090987-400x300.jpg\" alt=\"\" width=\"400\" height=\"300\" srcset=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090987-400x300.jpg 400w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090987-1024x768.jpg 1024w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/a><\/p>\n<p>\u6210\u54c1\u3002<\/p>\n<p><a href=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090992.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-2560\" title=\"P1090992\" src=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090992-400x300.jpg\" alt=\"\" width=\"400\" height=\"300\" srcset=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090992-400x300.jpg 400w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090992-1024x768.jpg 1024w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/a><\/p>\n<p>\u7531\u4e8e\u6570\u7801\u7ba1\u7684\u5f15\u811a\u6bd4\u8f83\u4e71\uff0c\u6240\u4ee5\u5e72\u8106\u4e0d\u753b\u677f\uff0c\u76f4\u63a5\u5168\u90e8\u98de\u7ebf\u3002<\/p>\n<p><a href=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090991.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-2559\" title=\"P1090991\" src=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090991-400x300.jpg\" alt=\"\" width=\"400\" height=\"300\" srcset=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090991-400x300.jpg 400w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090991-1024x768.jpg 1024w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090991.jpg 1600w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/a><\/p>\n<p>\u8d34\u7247\u7684 ATTINY24A \u8981\u6bd4\u76f4\u63d2\u7684\u4fbf\u5b9c\u4e0d\u5c11\uff0c\u6240\u4ee5\u5f53\u65f6\u5c31\u4e70\u4e86\u8d34\u7247\u7684\u82af\u7247 + \u8f6c\u63a5\u677f\u3002\u7f3a\u70b9\u662f\u4f53\u79ef\u6709\u70b9\u5927\u4e86\u3002<\/p>\n<p><a href=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090993.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-2561\" title=\"P1090993\" src=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090993-400x300.jpg\" alt=\"\" width=\"400\" height=\"300\" srcset=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090993-400x300.jpg 400w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090993-1024x768.jpg 1024w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/a><\/p>\n<p>\u7535\u6e90\uff0c\u7535\u6c60\u76d2\u81ea\u5e26\u4e86\u5f00\u5173\uff0c\u8fd9\u56de\u53c8\u53ef\u4ee5\u5077\u61d2\u4e86\u3002<\/p>\n<p><a href=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090994.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-2562\" title=\"P1090994\" src=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090994-400x300.jpg\" alt=\"\" width=\"400\" height=\"300\" srcset=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090994-400x300.jpg 400w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090994-1024x768.jpg 1024w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090994.jpg 1600w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/a><\/p>\n<p>\u4f4d\u9a71\u52a8\u7535\u8def\u7684\u4e09\u6781\u7ba1\u548c\u7535\u963b\uff0c\u8c8c\u4f3c\u5176\u4e2d\u6709\u4e00\u9897\u6709\u70b9\u95ee\u9898\uff0c\u6216\u8005\u662f\u56e0\u4e3a RST \u811a\u7684\u95ee\u9898\uff08\u5b9e\u9645\u4e2d PB3 \u63a5\u4e86\u7b2c\u4e09\u4f4d\uff0cPB2 \u63a5\u4e86\u7b2c\u56db\u4f4d\uff09\uff0c\u7b2c\u4e09\u4f4d\u603b\u662f\u6bd4\u8f83\u6697\u3002<\/p>\n<p><a href=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090989.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-2558\" title=\"P1090989\" src=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090989-400x300.jpg\" alt=\"\" width=\"400\" height=\"300\" srcset=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090989-400x300.jpg 400w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090989-1024x768.jpg 1024w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090989.jpg 1600w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/a><\/p>\n<p>\u6309\u7167\u8bbe\u5b9a\uff0c\u5f00\u673a\u81ea\u68c0\u56db\u4f4d\u5168\u90e8\u663e\u793a\u201c 8 \u201d\uff0c\u7136\u540e\u56de\u96f6\u3002<\/p>\n<p><a href=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090995.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-2563\" title=\"P1090995\" src=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090995-400x300.jpg\" alt=\"\" width=\"400\" height=\"300\" srcset=\"http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090995-400x300.jpg 400w, http:\/\/blog.dword1511.info\/wp-uploads\/2012\/08\/P1090995-1024x768.jpg 1024w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/a><\/p>\n<p>\u6d4b\u8bd5\uff0c\u6548\u679c\u8fd8\u884c\u3002\u7531\u4e8e\u6a21\u62df\u7535\u6e90\u548c\u6570\u5b57\u7535\u6e90\u6ca1\u5206\u5f00\uff08\u6bd5\u7adf\u5355\u7247\u673a\u7684\u5f15\u811a\u5c31\u90a3\u4e48\u70b9\uff09\uff0c\u6240\u4ee5\u6709\u6296\u52a8\u3001\u8f7b\u5fae\u96f6\u504f\u7684\u8bdd\u90fd\u5f88\u6b63\u5e38\uff0c\u4e00\u822c\u4e0d\u4f1a\u5927\u5230\u5f71\u54cd\u4f7f\u7528\u3002<\/p>\n<p>\u6700\u540e\u5949\u4e0a\u4ee3\u7801\uff0c\u70e7\u5199<strong>\u4e4b\u540e<\/strong>\u8bb0\u5f97\u628a\u7194\u4e1d\u8bbe\u7f6e\u6210\u300c\u00a0lfuse:0xe2 hfuse:0x5e efuse:0xff\u00a0\u300d\u3002<\/p>\n<pre class=\"brush: cpp; title: \u4ee3\u7801; notranslate\" title=\"\u4ee3\u7801\">\r\n#include &lt;avr\/io.h&gt;\r\n#include &lt;util\/delay.h&gt;\r\n#include &lt;avr\/interrupt.h&gt;\r\n\r\n#define REFRESH_RATE 500\r\n\r\n\/\/ Display buffer.\r\nuint8_t dispbuf[4] = {0x40, 0x40, 0x40, 0x40};\r\n\/\/ Digit pointer.\r\nuint8_t dispptr = 0;\r\n\/\/ NOTICE: Be careful not to pull PA7 high since it is connected to ADC.\r\n\/\/ This font is for common-anode segment displays.\r\nuint8_t dispfont[] = {\r\n  0x40, \/\/ &quot;0&quot;\r\n  0x79, \/\/ &quot;1&quot;\r\n  0x24, \/\/ &quot;2&quot;\r\n  0x30, \/\/ &quot;3&quot;\r\n  0x19, \/\/ &quot;4&quot;\r\n  0x12, \/\/ &quot;5&quot;\r\n  0x02, \/\/ &quot;6&quot;\r\n  0x78, \/\/ &quot;7&quot;\r\n  0x00, \/\/ &quot;8&quot;\r\n  0x10, \/\/ &quot;9&quot;\r\n  0x06, \/\/ &quot;E&quot;\r\n  0x7f, \/\/ &quot; &quot;\r\n};\r\n\r\n#define BIT(x) (1 &lt;&lt; (x))\r\n#define SETBIT(x, y) (x |= BIT(y))\r\n#define CLEARBIT(x, y) (x &amp;= ~ BIT(y))\r\n#define CHECKBIT(x, y) (x &amp; BIT(y))\r\n\r\nISR(TIM1_COMPA_vect) {\r\n  \/\/ Inverse all bits since &quot;0&quot; means that the digit is active.\r\n  PORTB = ~(1 &lt;&lt; dispptr);   PORTA = dispfont[dispbuf[dispptr]];   dispptr ++;   \/\/ Resetting the pointer is the most reasonable way to do it, though may not be the simplest.   if(dispptr == 4) dispptr = 0;   \/\/ Light the digit for 1800us then turn off.   _delay_us(1800);   PORTB = 0xff; } void adc_init(void) {   cli();   CLEARBIT(ADCSRA, ADEN);   \/\/ Single-end input from channel 7   ADMUX = 7;   \/\/ Internal 1.1V reference   CLEARBIT(ADMUX, REFS0);   SETBIT(ADMUX, REFS1);   \/\/ Clock \/ 128 speed   SETBIT(ADCSRA, ADPS0);   SETBIT(ADCSRA, ADPS1);   SETBIT(ADCSRA, ADPS2);   \/\/ Enable ADC   SETBIT(ADCSRA, ADEN);   \/\/ Reset ADC   CLEARBIT(ADCSRA, ADIE);   CLEARBIT(ADCSRA, ADIF);   CLEARBIT(ADCSRA, ADSC);   sei(); } uint16_t read_mv(void) {   \/\/ Start a conversion.   SETBIT(ADCSRA, ADSC);   \/\/ Wait for the conversion to complete and convert data in ADC register into mV value.   while(CHECKBIT(ADCSRA, ADIF) == 0);   return ((uint32_t)ADC * (1100 * 11) ) &gt;&gt; 10;\r\n}\r\n\r\nvoid print(uint16_t data) {\r\n  \/\/ NOTICE: PB2 and PB3 are in reversed order.\r\n  dispbuf[2] = data \/ 1000;\r\n\r\n  \/\/ Report error if voltage exceeded the range.\r\n  if(dispbuf[2] &gt; 9) {\r\n    dispbuf[2] = 10; \/\/ &quot;E&quot;\r\n    dispbuf[3] = 11; \/\/ &quot; &quot;\r\n    dispbuf[1] = 11; \/\/ &quot; &quot;\r\n    dispbuf[0] = 11; \/\/ &quot; &quot;\r\n    return;\r\n  }\r\n\r\n  \/\/ Put every digits into their positions.\r\n  dispbuf[3] = (data % 1000) \/ 100;\r\n  dispbuf[1] = (data % 100) \/ 10;\r\n  dispbuf[0] = data % 10;\r\n}\r\n\r\nint main(void) {\r\n  uint16_t avg;\r\n\r\n  \/\/ IO ports setup.\r\n  \/\/ PA7 is connected to ADC, configure it as an input pin and no pull-up.\r\n  DDRA = 0x7f;\r\n  DDRB = 0xff;\r\n\r\n  \/\/ Light up all digits and segments for display testing.\r\n  PORTA = 0x00;\r\n  PORTB = 0x00;\r\n\r\n  adc_init();\r\n\r\n  \/\/ Timer and interrupt setup.\r\n  SETBIT(TCCR1B, CS11);\r\n  SETBIT(TCCR1B, WGM12);\r\n  OCR1A = (uint16_t)(F_CPU \/ (REFRESH_RATE * 8));\r\n\r\n  \/\/ Wait 500ms for display testing, then start display refreshing interrupt.\r\n  _delay_ms(500);\r\n  SETBIT(TIMSK1, OCIE1A);\r\n\r\n  \/\/ Main loop\r\n  while(1) {\r\n    \/\/ Oversampling increases accuracy, thus makes last digit meaningful.\r\n    \/\/ Delay values are not absolute: there are interrupts.\r\n    _delay_ms(10);\r\n    avg = read_mv();\r\n    _delay_ms(10);\r\n    avg += read_mv();\r\n    _delay_ms(10);\r\n    avg += read_mv();\r\n    _delay_ms(10);\r\n    avg += read_mv();\r\n    print(avg &gt;&gt; 2);\r\n  }\r\n  return 0;\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u8003\u8651\u5230\u5bb6\u91cc\u6709\u5927\u91cf\u4e0d\u914d\u5bf9\u7684\u5e72\u7535\u6c60\uff0c\u6bcf\u6b21\u628a\u4e07\u7528\u8868\u5e26\u56de\u53bb\u6d4b\u91cf\u53c8\u4e0d\u73b0\u5b9e\uff0c\u53e6\u5916\u4e70\u4e2a\u4e07\u7528\u8868\u53c8\u6709\u70b9\u6d6a\u8d39\uff08\u5176\u5b9e\u4e0d\u8d35\uff0c\u4f46\u662f\u90ae\u8d39\u4f60 &hellip; <a href=\"http:\/\/blog.dword1511.info\/?p=2556\" class=\"more-link\">\u7ee7\u7eed\u9605\u8bfb<span class=\"screen-reader-text\">\u7528 AVR \u5355\u7247\u673a DIY \u7b80\u6613\u7535\u538b\u8868<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false},"categories":[8],"tags":[],"_links":{"self":[{"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=\/wp\/v2\/posts\/2556"}],"collection":[{"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2556"}],"version-history":[{"count":6,"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=\/wp\/v2\/posts\/2556\/revisions"}],"predecessor-version":[{"id":3157,"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=\/wp\/v2\/posts\/2556\/revisions\/3157"}],"wp:attachment":[{"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2556"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2556"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.dword1511.info\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2556"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}