{"id":1263,"date":"2025-12-06T20:01:53","date_gmt":"2025-12-06T16:31:53","guid":{"rendered":"https:\/\/ilk.ir\/sahifa\/?p=1263"},"modified":"2025-12-06T20:02:18","modified_gmt":"2025-12-06T16:32:18","slug":"%d8%a7%d8%b1%d8%aa%d8%a8%d8%a7%d8%b7-%d8%a8%d8%a7-%d8%aa%d8%b1%d8%a7%d8%b4%d9%87-mcp3201-%d8%a8%d8%a7-%d8%ad%d8%af%d8%a7%da%a9%d8%ab%d8%b1-%d8%b3%d8%b1%d8%b9%d8%aa-%d8%af%d8%b1-rpi","status":"publish","type":"post","link":"https:\/\/ilk.ir\/sahifa\/world\/%d8%a7%d9%84%da%a9%d8%aa%d8%b1%d9%88%d9%86%db%8c%da%a9\/%d8%a7%d8%b1%d8%aa%d8%a8%d8%a7%d8%b7-%d8%a8%d8%a7-%d8%aa%d8%b1%d8%a7%d8%b4%d9%87-mcp3201-%d8%a8%d8%a7-%d8%ad%d8%af%d8%a7%da%a9%d8%ab%d8%b1-%d8%b3%d8%b1%d8%b9%d8%aa-%d8%af%d8%b1-rpi\/","title":{"rendered":"\u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627 \u062a\u0631\u0627\u0634\u0647 MCP3201 \u0628\u0627 \u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u0631\u0639\u062a \u062f\u0631 RPi"},"content":{"rendered":"\n<p>\u0628\u0631\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627 \u062a\u0631\u0627\u0634\u0647 <strong>MCP3201<\/strong> (\u06a9\u0647 \u06cc\u06a9 \u0645\u0628\u062f\u0644 \u0622\u0646\u0627\u0644\u0648\u06af \u0628\u0647 \u062f\u06cc\u062c\u06cc\u062a\u0627\u0644 \u06f1\u06f2 \u0628\u06cc\u062a\u06cc \u0627\u0633\u062a) \u0628\u0627 \u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u0631\u0639\u062a \u062f\u0631 \u0631\u0632\u0628\u0631\u06cc \u067e\u0627\u06cc\u060c \u0628\u0647\u062a\u0631\u06cc\u0646 \u0631\u0648\u0634 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0631\u0627\u0628\u0637 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0644\u06cc\u0646\u0648\u06a9\u0633 \u06cc\u0639\u0646\u06cc <strong>spidev<\/strong> \u0627\u0633\u062a. \u0627\u06cc\u0646 \u0631\u0648\u0634 \u0628\u0633\u06cc\u0627\u0631 \u0633\u0631\u06cc\u0639\u200c\u062a\u0631 \u0648 \u067e\u0627\u06cc\u062f\u0627\u0631\u062a\u0631 \u0627\u0632 \u0634\u0628\u06cc\u0647\u200c\u0633\u0627\u0632\u06cc \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631\u06cc (Bit-banging) \u0627\u0633\u062a.<\/p>\n\n\n\n<p>\u0628\u0631\u0627\u06cc \u0631\u0633\u06cc\u062f\u0646 \u0628\u0647 &#8220;\u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u0631\u0639\u062a&#8221;:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>\u0627\u0632 \u06a9\u0644\u0627\u06a9 \u0633\u062e\u062a\u200c\u0627\u0641\u0632\u0627\u0631\u06cc SPI \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645.<\/li>\n\n\n\n<li>\u0627\u0632 \u062f\u0633\u062a\u0648\u0631\u0627\u062a <code>printf<\/code> \u062f\u0627\u062e\u0644 \u062d\u0644\u0642\u0647 \u062e\u0648\u0627\u0646\u062f\u0646 \u067e\u0631\u0647\u06cc\u0632 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645 (\u0686\u0648\u0646 \u0633\u0631\u0639\u062a \u0631\u0627 \u0628\u0647 \u0634\u062f\u062a \u067e\u0627\u06cc\u06cc\u0646 \u0645\u06cc\u200c\u0622\u0648\u0631\u062f).<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">\u067e\u06cc\u0634\u200c\u0646\u06cc\u0627\u0632: \u0641\u0639\u0627\u0644\u200c\u0633\u0627\u0632\u06cc SPI<\/h3>\n\n\n\n<p>\u0642\u0628\u0644 \u0627\u0632 \u0627\u062c\u0631\u0627\u060c \u0628\u0627\u06cc\u062f SPI \u0631\u0627 \u062f\u0631 \u0631\u0632\u0628\u0631\u06cc\u200c\u067e\u0627\u06cc \u0641\u0639\u0627\u0644 \u06a9\u0646\u06cc\u062f:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>\u062f\u0633\u062a\u0648\u0631 <code>sudo raspi-config<\/code> \u0631\u0627 \u0628\u0632\u0646\u06cc\u062f.<\/li>\n\n\n\n<li>\u0628\u0647 \u0628\u062e\u0634 <strong>Interface Options<\/strong> \u0628\u0631\u0648\u06cc\u062f.<\/li>\n\n\n\n<li>\u06af\u0632\u06cc\u0646\u0647 <strong>SPI<\/strong> \u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u0648 <strong>Enable<\/strong> \u06a9\u0646\u06cc\u062f.<\/li>\n\n\n\n<li>\u062f\u0633\u062a\u06af\u0627\u0647 \u0631\u0627 \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u06a9\u0646\u06cc\u062f.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u06f1. \u0627\u062a\u0635\u0627\u0644 \u0633\u062e\u062a\u200c\u0627\u0641\u0632\u0627\u0631\u06cc (Wiring)<\/h3>\n\n\n\n<p>\u062a\u0631\u0627\u0634\u0647 MCP3201 \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u0632\u06cc\u0631 \u0628\u0647 \u0631\u0632\u0628\u0631\u06cc \u067e\u0627\u06cc (\u067e\u06cc\u0646\u200c\u0647\u0627\u06cc \u0641\u06cc\u0632\u06cc\u06a9\u06cc) \u0645\u062a\u0635\u0644 \u06a9\u0646\u06cc\u062f.<\/p>\n\n\n\n<p>\u062f\u0642\u062a \u06a9\u0646\u06cc\u062f \u06a9\u0647 MCP3201 \u0631\u0627 \u0628\u0627 3.3V \u062a\u063a\u0630\u06cc\u0647 \u06a9\u0646\u06cc\u062f\u060c \u0632\u06cc\u0631\u0627 \u067e\u06cc\u0646\u200c\u0647\u0627\u06cc \u0631\u0632\u0628\u0631\u06cc \u067e\u0627\u06cc \u062a\u062d\u0645\u0644 5V \u0631\u0627 \u0646\u062f\u0627\u0631\u0646\u062f.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><td><strong>\u067e\u0627\u06cc\u0647 MCP3201<\/strong><\/td><td><strong>\u0646\u0627\u0645 \u067e\u0627\u06cc\u0647<\/strong><\/td><td><strong>\u0627\u062a\u0635\u0627\u0644 \u0628\u0647 RPi (\u0646\u0627\u0645)<\/strong><\/td><td><strong>\u067e\u06cc\u0646 \u0641\u06cc\u0632\u06cc\u06a9\u06cc RPi<\/strong><\/td><\/tr><\/thead><tbody><tr><td>1<\/td><td>VREF<\/td><td>3.3V<\/td><td>Pin 1<\/td><\/tr><tr><td>2<\/td><td>IN+<\/td><td>\u0648\u0631\u0648\u062f\u06cc \u0622\u0646\u0627\u0644\u0648\u06af<\/td><td>&#8211;<\/td><\/tr><tr><td>3<\/td><td>IN-<\/td><td>GND<\/td><td>Pin 6<\/td><\/tr><tr><td>4<\/td><td>VSS<\/td><td>GND<\/td><td>Pin 9<\/td><\/tr><tr><td>5<\/td><td>CS\/SHDN<\/td><td>SPI0 CE0<\/td><td>Pin 24<\/td><\/tr><tr><td>6<\/td><td>DOUT<\/td><td>SPI0 MISO<\/td><td>Pin 21<\/td><\/tr><tr><td>7<\/td><td>CLK<\/td><td>SPI0 SCLK<\/td><td>Pin 23<\/td><\/tr><tr><td>8<\/td><td>VDD<\/td><td>3.3V<\/td><td>Pin 17<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u06f2. \u06a9\u062f \u0628\u0631\u0646\u0627\u0645\u0647 C (\u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 spidev)<\/h3>\n\n\n\n<p>\u0627\u06cc\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u0645\u0633\u062a\u0642\u06cc\u0645\u0627\u064b \u0628\u0627 \u062f\u0631\u0627\u06cc\u0648\u0631 \u06a9\u0631\u0646\u0644 \u0644\u06cc\u0646\u0648\u06a9\u0633 \u0635\u062d\u0628\u062a \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n\n\n\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0628\u0647 \u0646\u0627\u0645 <code>adc_spi.c<\/code> \u0628\u0633\u0627\u0632\u06cc\u062f:<\/p>\n\n\n\n<p>C<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#<strong>include<\/strong> &lt;stdint.h&gt;\n#<strong>include<\/strong> &lt;unistd.h&gt;\n#<strong>include<\/strong> &lt;stdio.h&gt;\n#<strong>include<\/strong> &lt;stdlib.h&gt;\n#<strong>include<\/strong> &lt;fcntl.h&gt;\n#<strong>include<\/strong> &lt;sys\/ioctl.h&gt;\n#<strong>include<\/strong> &lt;linux\/types.h&gt;\n#<strong>include<\/strong> &lt;linux\/spi\/spidev.h&gt;\n\n\/\/ \u0645\u0633\u06cc\u0631 \u062f\u0633\u062a\u06af\u0627\u0647 SPI (\u0645\u0639\u0645\u0648\u0644\u0627\u064b CE0)\nstatic const char *device = \"\/dev\/spidev0.0\";\n\n\/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a SPI\nstatic uint8_t mode = 0; \/\/ SPI_MODE_0\nstatic uint8_t bits = 8;\n\/\/ \u0633\u0631\u0639\u062a \u06a9\u0644\u0627\u06a9 (1MHz). \u0637\u0628\u0642 \u062f\u06cc\u062a\u0627\u0634\u06cc\u062a MCP3201 \u062f\u0631 3.3V\u060c \u062d\u062f\u0627\u06a9\u062b\u0631 \u062d\u062f\u0648\u062f 1MHz \u0627\u06cc\u0645\u0646 \u0627\u0633\u062a.\n\/\/ \u0627\u06af\u0631 \u062a\u063a\u0630\u06cc\u0647 5V \u0628\u0648\u062f (\u0628\u0627 \u0645\u0628\u062f\u0644 \u0633\u0637\u062d \u0645\u0646\u0637\u0642\u06cc) \u062a\u0627 1.6MHz \u0647\u0645 \u0645\u06cc\u200c\u0634\u062f.\nstatic uint32_t speed = 1000000; \nstatic uint16_t delay = 0;\n\n\/\/ \u062a\u0627\u0628\u0639 \u062e\u0648\u0627\u0646\u062f\u0646 \u0627\u0632 SPI\nint read_adc(int fd) {\n    int ret;\n    uint8_t tx&#91;] = {0, 0}; \/\/ \u0645\u0627 \u0686\u06cc\u0632\u06cc \u0646\u0645\u06cc\u200c\u0641\u0631\u0633\u062a\u06cc\u0645\u060c \u0641\u0642\u0637 \u06a9\u0644\u0627\u06a9 \u0645\u06cc\u200c\u0632\u0646\u06cc\u0645\n    uint8_t rx&#91;2] = {0, 0}; \/\/ \u0628\u0627\u0641\u0631 \u062f\u0631\u06cc\u0627\u0641\u062a (2 \u0628\u0627\u06cc\u062a \u0628\u0631\u0627\u06cc 12 \u0628\u06cc\u062a)\n\n    struct spi_ioc_transfer tr = {\n        .tx_buf = (unsigned long)tx,\n        .rx_buf = (unsigned long)rx,\n        .len = 2,\n        .delay_usecs = delay,\n        .speed_hz = speed,\n        .bits_per_word = bits,\n    };\n\n    ret = ioctl(fd, SPI_IOC_MESSAGE(1), &amp;tr);\n    if (ret &lt; 1) {\n        perror(\"can't send spi message\");\n        return -1;\n    }\n\n    \/\/ \u062a\u062d\u0644\u06cc\u0644 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062f\u0631\u06cc\u0627\u0641\u062a\u06cc MCP3201\n    \/\/ \u0641\u0631\u0645\u062a \u062e\u0631\u0648\u062c\u06cc: \n    \/\/ Byte 0: X X X 0 B11 B10 B9 B8\n    \/\/ Byte 1: B7 B6 B5 B4 B3 B2 B1 B0\n    \/\/ \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646 \u0628\u0627\u06cc\u062f \u0628\u06cc\u062a\u200c\u0647\u0627 \u0631\u0627 \u0634\u06cc\u0641\u062a \u062f\u0647\u06cc\u0645 \u062a\u0627 \u0639\u062f\u062f 12 \u0628\u06cc\u062a\u06cc \u0633\u0627\u062e\u062a\u0647 \u0634\u0648\u062f.\n    \n    uint16_t result = ((rx&#91;0] &amp; 0x1F) &lt;&lt; 7) | (rx&#91;1] &gt;&gt; 1);\n    return result;\n}\n\nint main(int argc, char *argv&#91;]) {\n    int fd;\n    \n    \/\/ \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u062f\u0633\u062a\u06af\u0627\u0647 SPI\n    fd = open(device, O_RDWR);\n    if (fd &lt; 0) {\n        perror(\"can't open device\");\n        return 1;\n    }\n\n    \/\/ \u062a\u0646\u0638\u06cc\u0645 \u0645\u062f (Mode 0)\n    if (ioctl(fd, SPI_IOC_WR_MODE, &amp;mode) == -1) {\n        perror(\"can't set spi mode\");\n        return 1;\n    }\n\n    \/\/ \u062a\u0646\u0638\u06cc\u0645 \u0637\u0648\u0644 \u06a9\u0644\u0645\u0647 (8 \u0628\u06cc\u062a)\n    if (ioctl(fd, SPI_IOC_WR_BITS_PER_WORD, &amp;bits) == -1) {\n        perror(\"can't set bits per word\");\n        return 1;\n    }\n\n    \/\/ \u062a\u0646\u0638\u06cc\u0645 \u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u0631\u0639\u062a\n    if (ioctl(fd, SPI_IOC_WR_MAX_SPEED_HZ, &amp;speed) == -1) {\n        perror(\"can't set max speed hz\");\n        return 1;\n    }\n\n    printf(\"SPI MCP3201 Interface Started at %d Hz\\n\", speed);\n    \n    \/\/ \u062d\u0644\u0642\u0647 \u0627\u0635\u0644\u06cc \u062e\u0648\u0627\u0646\u062f\u0646\n    while (1) {\n        int adcValue = read_adc(fd);\n        \n        \/\/ \u0645\u062d\u0627\u0633\u0628\u0647 \u0648\u0644\u062a\u0627\u0698 (\u0641\u0631\u0636 VREF = 3.3V)\n        float voltage = (adcValue * 3.3) \/ 4095.0;\n\n        printf(\"ADC Value: %d  |  Voltage: %.4f V\\n\", adcValue, voltage);\n        \n        \/\/ \u062a\u0627\u062e\u06cc\u0631 \u06a9\u0648\u062a\u0627\u0647 \u0628\u0631\u0627\u06cc \u062e\u0648\u0627\u0646\u0627\u06cc\u06cc (\u062f\u0631 \u06a9\u0627\u0631\u0628\u0631\u062f \u0648\u0627\u0642\u0639\u06cc \"\u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u0631\u0639\u062a\" \u0627\u06cc\u0646 \u062e\u0637 \u0631\u0627 \u062d\u0630\u0641 \u06a9\u0646\u06cc\u062f)\n        usleep(100000); \/\/ 100ms\n    }\n\n    close(fd);\n    return 0;\n}\n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u06f3. \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644 \u0648 \u0627\u062c\u0631\u0627<\/h3>\n\n\n\n<p>\u0628\u0631\u0627\u06cc \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644 \u0627\u06cc\u0646 \u06a9\u062f \u0646\u06cc\u0627\u0632 \u0628\u0647 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u062e\u0627\u0635\u06cc \u0646\u062f\u0627\u0631\u06cc\u062f \u0686\u0648\u0646 \u0627\u0632 \u0647\u062f\u0631\u0647\u0627\u06cc \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0644\u06cc\u0646\u0648\u06a9\u0633 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n\n\n\n<p>Bash<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>gcc -o adc_spi adc_spi.c\n<\/code><\/pre>\n\n\n\n<p>\u0627\u062c\u0631\u0627 (\u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062f\u0633\u062a\u0631\u0633\u06cc \u0631\u0648\u062a \u0628\u0627\u0634\u062f):<\/p>\n\n\n\n<p>Bash<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo .\/adc_spi\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u0646\u06a9\u0627\u062a \u0641\u0646\u06cc \u0628\u0631\u0627\u06cc &#8220;\u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u0631\u0639\u062a&#8221; (High Frequency Sampling)<\/h3>\n\n\n\n<p>\u0627\u06af\u0631 \u0647\u062f\u0641 \u0634\u0645\u0627 \u0646\u0645\u0648\u0646\u0647\u200c\u0628\u0631\u062f\u0627\u0631\u06cc \u0633\u06cc\u06af\u0646\u0627\u0644 (\u0645\u062b\u0644 \u0627\u0633\u06cc\u0644\u0648\u0633\u06a9\u0648\u067e \u06cc\u0627 \u067e\u0631\u062f\u0627\u0632\u0634 \u0635\u062f\u0627) \u0627\u0633\u062a:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>\u062d\u0630\u0641 <code>printf<\/code>:<\/strong> \u0639\u0645\u0644\u06cc\u0627\u062a \u0686\u0627\u067e \u062f\u0631 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u0628\u0633\u06cc\u0627\u0631 \u06a9\u0646\u062f \u0627\u0633\u062a. \u062f\u0631 \u06a9\u0627\u0631\u0628\u0631\u062f \u0648\u0627\u0642\u0639\u06cc\u060c \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631 \u06cc\u06a9 \u0622\u0631\u0627\u06cc\u0647 \u0628\u0632\u0631\u06af \u062f\u0631 RAM \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0646\u06cc\u062f \u0648 \u067e\u0633 \u0627\u0632 \u067e\u0631 \u0634\u062f\u0646 \u0622\u0631\u0627\u06cc\u0647\u060c \u0622\u0646\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631 \u0641\u0627\u06cc\u0644 \u0628\u0646\u0648\u06cc\u0633\u06cc\u062f \u06cc\u0627 \u067e\u0631\u062f\u0627\u0632\u0634 \u06a9\u0646\u06cc\u062f.<\/li>\n\n\n\n<li><strong>\u0641\u0631\u06a9\u0627\u0646\u0633 \u06a9\u0644\u0627\u06a9:<\/strong> \u062f\u0631 \u06a9\u062f \u0628\u0627\u0644\u0627 <code>speed<\/code> \u0631\u0648\u06cc <code>1000000<\/code> (1MHz) \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0627\u0633\u062a. \u0627\u06af\u0631 \u0648\u0644\u062a\u0627\u0698 \u062f\u0642\u06cc\u0642 \u06f3.\u06f3 \u0648\u0644\u062a \u0648 \u0633\u06cc\u0645\u200c\u06a9\u0634\u06cc \u06a9\u0648\u062a\u0627\u0647 \u0628\u0627\u0634\u062f\u060c \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u062a\u0627 \u06f1.\u06f2 \u06cc\u0627 \u06f1.\u06f5 \u0645\u06af\u0627\u0647\u0631\u062a\u0632 \u0647\u0645 \u062c\u0648\u0627\u0628 \u062f\u0647\u062f\u060c \u0627\u0645\u0627 \u0628\u0627\u0644\u0627\u062a\u0631 \u0627\u0632 \u0622\u0646 \u062f\u06cc\u062a\u0627\u06cc MCP3201 \u062e\u0631\u0627\u0628 \u0645\u06cc\u200c\u0634\u0648\u062f.<\/li>\n\n\n\n<li><strong>\u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u062c\u0627\u06cc\u06af\u0632\u06cc\u0646:<\/strong> \u0628\u0631\u0627\u06cc \u0633\u0631\u0639\u062a\u200c\u0647\u0627\u06cc \u0641\u0648\u0642\u200c\u0627\u0644\u0639\u0627\u062f\u0647 \u0628\u0627\u0644\u0627 (\u0646\u0632\u062f\u06cc\u06a9 \u0628\u0647 Real-time)\u060c \u062d\u0631\u0641\u0647\u200c\u0627\u06cc\u200c\u0647\u0627 \u0627\u0632 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 <strong>bcm2835<\/strong> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f \u06a9\u0647 \u0645\u0633\u062a\u0642\u06cc\u0645\u0627\u064b \u0628\u0647 \u0631\u062c\u06cc\u0633\u062a\u0631\u0647\u0627\u06cc \u062d\u0627\u0641\u0638\u0647 \u062f\u0633\u062a\u0631\u0633\u06cc \u062f\u0627\u0631\u062f (\u0628\u062f\u0648\u0646 \u0648\u0627\u0633\u0637\u0647 \u0633\u06cc\u0633\u062a\u0645 \u0639\u0627\u0645\u0644)\u060c \u0627\u0645\u0627 \u06a9\u062f \u0628\u0627\u0644\u0627 \u0628\u0631\u0627\u06cc \u06f9\u06f9\u066a \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627 \u06a9\u0627\u0641\u06cc \u0648 \u0627\u06cc\u0645\u0646\u200c\u062a\u0631 \u0627\u0633\u062a.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>\u0628\u0631\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627 \u062a\u0631\u0627\u0634\u0647 MCP3201 (\u06a9\u0647 \u06cc\u06a9 \u0645\u0628\u062f\u0644 \u0622\u0646\u0627\u0644\u0648\u06af \u0628\u0647 \u062f\u06cc\u062c\u06cc\u062a\u0627\u0644 \u06f1\u06f2 \u0628\u06cc\u062a\u06cc \u0627\u0633\u062a) \u0628\u0627 \u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u0631\u0639\u062a \u062f\u0631 \u0631\u0632\u0628\u0631\u06cc \u067e\u0627\u06cc\u060c \u0628\u0647\u062a\u0631\u06cc\u0646 \u0631\u0648\u0634 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0631\u0627\u0628\u0637 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0644\u06cc\u0646\u0648\u06a9\u0633 \u06cc\u0639\u0646\u06cc spidev \u0627\u0633\u062a. \u0627\u06cc\u0646 \u0631\u0648\u0634 \u0628\u0633\u06cc\u0627\u0631 \u0633\u0631\u06cc\u0639\u200c\u062a\u0631 \u0648 \u067e\u0627\u06cc\u062f\u0627\u0631\u062a\u0631 \u0627\u0632 \u0634\u0628\u06cc\u0647\u200c\u0633\u0627\u0632\u06cc \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631\u06cc (Bit-banging) \u0627\u0633\u062a. \u0628\u0631\u0627\u06cc \u0631\u0633\u06cc\u062f\u0646 \u0628\u0647 &#8220;\u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u0631\u0639\u062a&#8221;: \u0627\u0632 \u06a9\u0644\u0627\u06a9 \u0633\u062e\u062a\u200c\u0627\u0641\u0632\u0627\u0631\u06cc SPI \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645. \u0627\u0632 \u062f\u0633\u062a\u0648\u0631\u0627\u062a printf &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13],"tags":[236,65,237],"class_list":["post-1263","post","type-post","status-publish","format-standard","","category-13","tag-236","tag--mcp3201","tag-237"],"_links":{"self":[{"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/posts\/1263","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/comments?post=1263"}],"version-history":[{"count":1,"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/posts\/1263\/revisions"}],"predecessor-version":[{"id":1264,"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/posts\/1263\/revisions\/1264"}],"wp:attachment":[{"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/media?parent=1263"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/categories?post=1263"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ilk.ir\/sahifa\/wp-json\/wp\/v2\/tags?post=1263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}