mirror of
https://gitee.com/Vancouver2017/luban-lite-t3e-pro.git
synced 2025-12-15 02:48:54 +00:00
2 lines
544 KiB
JavaScript
2 lines
544 KiB
JavaScript
var htmlFileInfoList = ["cshelp.html@@@Context Sensitive Help@@@...","out/external-references/video_memory.html@@@video_memory@@@\u8868 1 . Sheet1 \u5206\u8FA8\u7387 \u8BA1\u7B97\u65B9\u5F0F \u8BF4\u660E \u5BBD \u9AD8 \u8F93\u5165\u7801\u6D41buffer \uFF08\u5927\u5C0F\u53EF\u7531\u5E94\u7528\u5C42\u914D\u7F6E\uFF09 1920 1080 \u8F93\u51FA\u5E27buffer width*height*3/2 * frame_num frame_num\u81F3\u5C11\u9700\u8981\uFF08\u53C2\u8003\u5E27\u4E2A\u6570+1\uFF09\uFF1B \u76EE\u524D\u6211\u4EEC\u914D\u7F6E\u7684\u662F\uFF08\u53C2\u8003\u5E27\u4E2A\u6570+2\uFF09\uFF0C\u591A\u4E00\u4E2A\u7528\u4E8E\u663E\u793A \u5E27\u5185\u9884\u6D4B\u9700\u8981\u7684\u4E0A\u4E00\u884C\u6570\u636E width*2 \u5B8F\u5757\u4FE1\u606Fbuffer \u56FA\u5B9A12K dblk...","topics/chapter-title/chapter-interface-sdk.html@@@\u63A5\u53E3@@@CAN\u3001CAP\u3001CIR\u3001GPAI\u3001GPIO\u3001I2C\u3001PSADC\u3001PWM \u7B49\u63A5\u53E3\u6A21\u5757\u7684\u4ECB\u7ECD\u548C\u4F7F\u7528\u8BF4\u660E\u3002...","topics/chapter-title/chapter-memory-sdk.html@@@\u5B58\u50A8@@@SDMC\u3001SPI NAND\u3001SPI NOR \u4EE5\u53CA\u6587\u4EF6\u7CFB\u7EDF \u7B49\u5B58\u50A8\u6A21\u5757\u7684\u4ECB\u7ECD\u548C\u4F7F\u7528\u8BF4\u660E\u3002...","topics/chapter-title/chapter-multi-media-sdk.html@@@\u591A\u5A92\u4F53@@@GE\u3001VE\u3001Display\u3001DVP\u3001MPP\u3001MPP \u64AD\u653E\u5668\u7B49\u591A\u5A92\u4F53\u6A21\u5757\u7684\u4ECB\u7ECD\u548C\u4F7F\u7528\u8BF4\u660E\u3002...","topics/chapter-title/chapter-safety-sdk.html@@@\u5B89\u5168@@@SPI ENC\u3001CE\u3001eFuse \u7B49\u5B89\u5168\u6A21\u5757\u7684\u4ECB\u7ECD\u548C\u4F7F\u7528\u8BF4\u660E\u3002...","topics/chapter-title/chapter-system.html@@@\u7CFB\u7EDF@@@...","topics/ic/ta-if/t_format_0_TA_IF.html@@@T-Format \u57DF@@@CF Command Field (CF) \u7EC4\u6210\u7ED3\u6784\u5982\u4E0B\uFF1A \u5728\u53D1\u9001\u548C\u63A5\u6536\u7684\u8FC7\u7A0B\u5747\u6D89\u53CA\uFF0CCF \u7531\u4EE5\u4E0B\u90E8\u5206\u7EC4\u6210\uFF1A Start bit\uFF1A1'b0\uFF0C\u56FA\u5B9A\u503C\u3002 Sync code\uFF1A3\u2019b010\uFF0C\u56FA\u5B9A\u503C\u3002 ID Code\uFF1A4-bit\uFF0C\u53D1\u9001\u65F6\u53EF\u901A\u8FC7\u5BC4\u5B58\u5668\u914D\u7F6E\uFF0C\u63A5\u6536\u65F6\u89E3\u6790\u63A5\u6536\u6570\u636E\u5E76\u5B58\u5165 TSTS \u5BC4\u5B58\u5668\u3002 ID Code \u5947\u5076\u6821\u9A8C\u4F4D\uFF1A1-bit\uFF0C\u53D1\u9001\u65F6\u786C\u4EF6\u81EA\u52A8\u6839\u636E Code \u5224\u65AD\u586B\u5165\uFF0C\u63A5\u6536\u65F6\u89E3\u6790\u63A5\u6536\u6570\u636E\u5E76\u5B58\u5165...","topics/ic/ta-if/ta-if-a-format.html@@@A-Format \u57DF@@@CDF CDF \u7EC4\u6210\u7ED3\u6784\u5982\u4E0B\uFF1A CDF\uFF0CCommand Data Field\uFF0C\u53EA\u5728\u53D1\u9001\u8FC7\u7A0B\u6D89\u53CA\uFF0C\u7531\u4EE5\u4E0B\u7EC4\u6210\uFF1A Start bit\uFF1A1'b0\uFF0C\u56FA\u5B9A\u503C\u3002 Sink code\uFF1A3\u2019b010\uFF0C\u56FA\u5B9A\u503C\u3002 Frame Code\uFF1A2-bit\uFF0CCDF \u5BF9\u5E94 2\u2019b00\u3002 Encoder Address\uFF1A3-bit\uFF0C\u7F16\u7801\u5668\u7684\u5730\u5740\u3002 Comand Code\uFF1A5-bit\uFF0C\u547D\u4EE4\u4EE3\u7801\u3002 CRC code\uFF1A3-bit\uFF0CCRC...","topics/ic/ta-if/ta_interface_ta_if.html@@@TA Interface (TA_IF)@@@TFormat / AFormat Absolute Encoder Interface (TA-AEI)\uFF0C\u7B80\u79F0 TA_IF\uFF0C\u5373 TA \u7EDD\u5BF9\u503C\u7F16\u7801\u5668\u63A5\u53E3\uFF0C\u4E3B\u8981\u7528\u4F5C Master\uFF0C\u63A7\u5236 T-Format/ A-Format \u63A5\u53E3\u7684\u7EDD\u5BF9\u503C\u7F16\u7801\u5668\u3002Tamgawa \u7684\u7F16\u7801\u5668\u63A5\u53E3\u683C\u5F0F\u5BF9\u5E94\u4E3A T-Format\uFF0CNikon \u7F16\u7801\u5668\u63A5\u53E3\u683C\u5F0F\u5BF9\u5E94\u4E3A A-Format\u3002 \u7279\u6027\u8BF4\u660E \u652F\u6301 T-Format \u548C...","topics/ic/ve/ve-interface_design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@drv_ve_open \u8868 1 . drv_ve_open \u51FD\u6570\u539F\u578B struct aic_ve_client *drv_ve_open(void) \u529F\u80FD\u8BF4\u660E \u6253\u5F00 VE \u8BBE\u5907 \u53C2\u6570\u5B9A\u4E49 \u65E0 \u8FD4\u56DE\u503C VE \u8BBE\u5907 \u6CE8\u610F\u4E8B\u9879 - drv_ve_close \u8868 2 . drv_ve_close \u51FD\u6570\u539F\u578B int drv_ve_close(struct aic_ve_client *client)...","topics/ic/xspi/xspi-module.html@@@eXpanded Serial Peripheral Interface (xSPI)@@@xSPI \u6A21\u5757\u662F\u4E00\u4E2A\u9AD8\u5EA6\u7075\u6D3B\u548C\u53EF\u914D\u7F6E\u7684\u63A5\u53E3\uFF0C\u80FD\u591F\u652F\u6301\u591A\u79CD\u4E0D\u540C\u7684\u4E32\u884C\u548C\u5E76\u884C\u603B\u7EBF\u534F\u8BAE\uFF0C\u5305\u62EC\u5916\u90E8\u5E76\u884C\u603B\u7EBF Xccela\u3001HyperBus\u3001OPI\u3001 QPI\u3001\u548C 1/ 2/ 4/ 8 \u7EBF SPI\u3002xSPI \u6A21\u5757\u53EF\u4E0E\u5916\u90E8 PSRAM\u3001Flash \u5B58\u50A8\u8BBE\u5907\u7B49\u5143\u5668\u4EF6\u5B9E\u73B0\u8FDE\u63A5\uFF0C\u65E0\u9700\u989D\u5916\u7684\u786C\u4EF6\u63A5\u53E3\u6216\u9002\u914D\u5668\u3002 \u529F\u80FD\u7279\u6027 \u652F\u6301 Xccela \u534F\u8BAE \u652F\u6301 HyperBus \u534F\u8BAE \u652F\u6301 OPI \u534F\u8BAE \u652F\u6301 QPI \u534F\u8BAE...","topics/product/d12x-pu-pd-reset.html@@@\u4E0A\u4E0B\u7535\u65F6\u5E8F\u53CA\u590D\u4F4D@@@\u4E0A\u4E0B\u7535\u65F6\u5E8F VCC33_IO \u3001 VDD11_SYS \u548C LDO18 \u4F9B\u7535\u65E0\u4E0A\u4E0B\u7535\u987A\u5E8F\u8981\u6C42\u3002VCC33_IO \u4E0A\u7535\u4E0A\u5347\u6CBF\u65F6\u95F4\u9700\u5927\u4E8E 150us\u3002 \u590D\u4F4D\u6E90 \u82AF\u7247\u7CFB\u7EDF\u6709\u4EE5\u4E0B\u51E0\u79CD\u590D\u4F4D\u6E90\uFF0C\u4EFB\u4F55\u4E00\u79CD\u590D\u4F4D\u6761\u4EF6\u6210\u7ACB\uFF0C\u4F1A\u5BF9\u82AF\u7247\u4EA7\u751F\u590D\u4F4D\uFF1A \u7CFB\u7EDF\u4E0A\u7535\u590D\u4F4D\uFF1A\u5728 VCC33_IO \u548C VDD11_SYS \u4E0A\u7535\u540E\u4EA7\u751F\u590D\u4F4D\uFF0C\u4E0A\u7535 10 ms \u5185\u7CFB\u7EDF\u81EA\u52A8\u653E\u5F00\u6B64\u590D\u4F4D\u3002 \u5916\u90E8\u5F15\u811A\u590D\u4F4D\uFF1A\u5F15\u811A RESETN \u8F93\u5165\u4F4E\u7535\u5E73\u5E76\u6301\u7EED 2 ms...","topics/product/d13x-pullup-down-timing.html@@@\u4E0A\u4E0B\u7535\u65F6\u5E8F\u53CA\u590D\u4F4D@@@\u4E0A\u4E0B\u7535\u65F6\u5E8F VCC33_IO \u3001VDD11_SYS \u548C LDO18 \u4F9B\u7535\u65E0\u4E0A\u4E0B\u7535\u987A\u5E8F\u8981\u6C42\u3002VCC33_IO \u4E0A\u7535\u4E0A\u5347\u6CBF\u65F6\u95F4\u9700\u5927\u4E8E 150 us\u3002 \u590D\u4F4D\u6E90 \u82AF\u7247\u7CFB\u7EDF\u6709\u4EE5\u4E0B\u590D\u4F4D\u6E90\uFF0C\u4EE5\u4E0B\u4EFB\u4F55\u4E00\u79CD\u590D\u4F4D\u6761\u4EF6\u6210\u7ACB\uFF0C\u4F1A\u5BF9\u82AF\u7247\u4EA7\u751F\u590D\u4F4D\uFF1A \u7CFB\u7EDF\u4E0A\u7535\u590D\u4F4D\uFF1A\u5728 VCC33_IO \u548C VDD11_SYS \u4E0A\u7535\u540E\u4EA7\u751F\u590D\u4F4D\uFF0C\u4E0A\u7535 10 ms \u5185\u7CFB\u7EDF\u81EA\u52A8\u653E\u5F00\u6B64\u590D\u4F4D\u3002 RTC \u4E0A\u7535\u590D\u4F4D\uFF1A\u5728 RTC \u4E0A\u7535\u540E\uFF08\u4F9B\u7535\u6765\u6E90...","topics/product/m680x-block-diagram.html@@@\u529F\u80FD\u6846\u56FE@@@...","topics/product/m680x-feature.html@@@\u529F\u80FD\u7279\u6027@@@CPU \u91C7\u7528\u5E73\u5934\u54E5 E907 \u9AD8\u6027\u80FD 32-bit RISC-V \u5185\u6838 RV32IMAFDCP \u6307\u4EE4\u67B6\u6784 468 MHz @1.1V\uFF0C552 MHz@1.2V L1 I/D-Cache 32 KB/32 KB \u652F\u6301\u7D27\u8026\u5408\u5B58\u50A8 (TCM)\uFF0CI/D-TCM \u6700\u5927\u53EF\u914D\u7F6E 128 KB/ 128 KB \u5355\u7CBE\u5EA6/ \u53CC\u7CBE\u5EA6\u6D6E\u70B9\u5355\u5143\uFF0C\u96C6\u6210 DSP \u6307\u4EE4\u96C6 PMP \u5B89\u5168\u4FDD\u62A4 \u6838\u5185\u4E2D\u65AD CLINT \u548C\u4E2D\u65AD\u63A7\u5236\u5668...","topics/product/m680x-typical-application.html@@@\u5178\u578B\u5E94\u7528@@@\u4F3A\u670D\u7535\u673A\u9A71\u52A8\u5668 \u6B65\u8FDB\u7535\u673A\u9A71\u52A8\u5668 BLDC \u7535\u673A\u9A71\u52A8\u5668 \u4EA4\u6D41\u53D8\u9891\u5668 \u5149\u4F0F\u9006\u53D8\u5668 \u6570\u5B57\u7535\u6E90 PLC...","topics/reused/module-clock_reused.html@@@\u6A21\u5757\u65F6\u949F@@@\u6A21\u5757\u540D\u79F0 \u603B\u7EBF\u65F6\u949F \u6A21\u5757\u65F6\u949F\u6E90 \u6A21\u5757\u65F6\u949F\u6781\u9650\u9891\u7387 \u5907\u6CE8 E907 CORE - PLL_INT0 504MHz - E907 PLIC - PLL_INT0\u00F72 252MHz - E907 CLINT - PLL_INT0\u00F72 252MHz - E907 DM - CLK_24M 24MHz - AXI AXI - 240MHz - AHB AHB - 240MHz - APB0 APB0...","topics/revinfo/revinfo_rtos.html@@@\u4FEE\u8BA2\u8BB0\u5F55@@@\u4E0B\u8868\u8BB0\u5F55\u4E86 2025-01-06 (V2.2) \u81F3\u4ECA\u7684\u6240\u6709\u4FEE\u8BA2\u5386\u53F2\uFF1A \u8868 1 . \u4FEE\u8BA2\u8BB0\u5F55 \u7248\u672C \u7AE0\u8282 \u4FEE\u8BA2\u8BF4\u660E V2.3 Ubuntu \u5220\u9664\u6682\u65F6\u4E0D\u517C\u5BB9\u7684\u7248\u672C 14.04 \u548C 16.04\u3002 \u7CFB\u7EDF\u66F4\u65B0 \u5220\u9664 \u70E7\u5F55\u5668\u70E7\u5F55 \u7AE0\u8282\u3002 \u79BB\u7EBF\u70E7\u5F55 \u65B0\u589E\u7AE0\u8282\u3002 CTP \u79FB\u690D\u6307\u5357 \u65B0\u589E\u4E86\u4E0B\u5217\u7AE0\u8282\uFF1A \u4FEE\u6539\u5DF2\u6709 CTP \u9A71\u52A8 \u83B7\u53D6\u548C\u914D\u7F6E IC \u5173\u952E\u4FE1\u606F \u5E38\u89C1\u95EE\u9898 \u4F18\u5316\u4E86 \u65B0\u5EFA CTP \u9A71\u52A8 \u548C \u6D4B\u8BD5\u6307\u5357...","topics/sdk/advanced/app.html@@@\u6DFB\u52A0\u5E94\u7528@@@GT911 \u7535\u5BB9\u5C4F\u6D4B\u8BD5\u7A0B\u5E8F\u662F\u4E00\u4E2A\u786C\u4EF6\u4E0E\u8F6F\u4EF6\u7ED3\u5408\u7684\u590D\u6742\u9879\u76EE\uFF0C\u4E3B\u8981\u7528\u4E8E\u6D4B\u8BD5\u548C\u9A8C\u8BC1\u7535\u5BB9\u89E6\u6478\u5C4F\u7684\u6027\u80FD\u548C\u529F\u80FD\u3002 \u672C\u8282\u4EE5 GT911 \u7535\u5BB9\u5C4F\u6D4B\u8BD5\u7A0B\u5E8F\u4E3A\u4F8B\uFF0C\u6F14\u793A\u6DFB\u52A0\u5E94\u7528\u7684\u6B65\u9AA4\u548C\u7F16\u8BD1\u6D41\u7A0B\u3002 \u6DFB\u52A0\u6E90\u7801 \u5728 bsp \u76EE\u5F55\u4E0B\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u53EF\u67E5\u770B GT911 \u7535\u5BB9\u5C4F\u6D4B\u8BD5\u7A0B\u5E8F\u7684\u76EE\u5F55\u7ED3\u6784\uFF1A tree \u8F93\u51FA\u793A\u4F8B\u5982\u4E0B\uFF1A . \u251C\u2500\u2500 Kconfig # \u7F16\u8BD1\u914D\u7F6E\u6587\u4EF6 ... \u251C\u2500\u2500 SConscript # \u56FA\u5B9A\u6A21\u677F \u2514\u2500\u2500...","topics/sdk/advanced/architecture.html@@@\u8BBE\u8BA1\u6846\u67B6@@@\u8BBE\u8BA1\u76EE\u6807 Luban-Lite \u7684\u8BBE\u8BA1\u89C4\u5212\u65E8\u5728\u63D0\u4F9B\u4E00\u4E2A\u7B80\u5355\u6613\u7528\uFF0C\u4E14\u80FD\u591F\u6EE1\u8DB3\u5E7F\u6CDB\u7528\u6237\u9700\u6C42\u7684\u89E3\u51B3\u65B9\u6848\uFF0C\u540C\u65F6\u8981\u786E\u4FDD\u5BF9\u4E3B\u6D41\u5B9E\u65F6\u7CFB\u7EDF\u7684\u652F\u6301\u3002 Luban-Lite \u5177\u6709\u4EE5\u4E0B\u8BBE\u8BA1\u4F18\u52BF\u548C\u7279\u70B9\uFF1A \u517C\u5BB9\u591A\u79CD\u5E02\u9762\u4E0A\u6700\u6D41\u884C\u7684 RTOS \u5185\u6838\uFF0C\u5305\u62EC RT-Thread\u3001FreeRTOS \u7B49 \u652F\u6301 baremetal \u6A21\u5F0F \u63D0\u4F9B\u5B8C\u6574\u7684\u8F6F\u4EF6\u6808\u751F\u6001\u8D44\u6E90 \u8BBE\u8BA1\u6846\u67B6 \u6839\u636E\u662F\u5426\u4F7F\u7528 OS\uFF0C Luban-Lite SDK...","topics/sdk/advanced/burn-cfg-file.html@@@\u70E7\u5F55\u955C\u50CF\u914D\u7F6E\u6587\u4EF6@@@\u4F7F\u7528 mk_image.py \u5236\u4F5C\u70E7\u5F55\u955C\u50CF\u65F6\uFF0C\u9700\u8981\u63D0\u4F9B image_cfg.json \u955C\u50CF\u914D\u7F6E\u6587\u4EF6\u3002 \u901A\u8FC7\u5D4C\u5957\u5BF9\u8C61\u7684\u65B9\u5F0F\uFF0C image_cfg.json \u63CF\u8FF0\u4E86\u4E00\u4E2A\u5F85\u751F\u6210\u7684\u955C\u50CF\u6587\u4EF6\u6240\u5305\u542B\u7684\u4FE1\u606F\u548C\u6570\u636E\uFF0C\u5982\u4E0B\u5217\u4EE3\u7801\u6240\u793A\uFF0C\u8BE5\u63CF\u8FF0\u6587\u4EF6\u5206\u4E3A\u4EE5\u4E0B\u90E8\u5206\uFF1A \u955C\u50CF\u70E7\u5F55\u7684\u76EE\u6807\u8BBE\u5907\u63CF\u8FF0\uFF0C\u8BE6\u60C5\u53EF\u67E5\u770B \u5206\u533A\u8868\u63CF\u8FF0 \u3002 \u6700\u7EC8 Image \u6587\u4EF6\u63CF\u8FF0 \uFF0C\u5305\u62EC\u4FE1\u606F\u548C\u5185\u5BB9\u6392\u5E03\uFF0C\u7531 info \u6570\u636E\uFF0C updater \u6570\u636E\u548C...","topics/sdk/advanced/burn-cfg-file_2.html@@@\u70E7\u5F55\u955C\u50CF\u914D\u7F6E\u6587\u4EF6@@@\u4F7F\u7528 mk_image.py \u5236\u4F5C\u70E7\u5F55\u955C\u50CF\u65F6\uFF0C\u9700\u8981\u63D0\u4F9B image_cfg.json \u955C\u50CF\u914D\u7F6E\u6587\u4EF6\u3002 \u901A\u8FC7\u5D4C\u5957\u5BF9\u8C61\u7684\u65B9\u5F0F\uFF0C image_cfg.json \u63CF\u8FF0\u4E86\u4E00\u4E2A\u5F85\u751F\u6210\u7684\u955C\u50CF\u6587\u4EF6\u6240\u5305\u542B\u7684\u4FE1\u606F\u548C\u6570\u636E\uFF0C\u5982\u4E0B\u5217\u4EE3\u7801\u6240\u793A\uFF0C\u8BE5\u63CF\u8FF0\u6587\u4EF6\u5206\u4E3A\u4EE5\u4E0B\u90E8\u5206\uFF1A \u955C\u50CF\u70E7\u5F55\u7684\u76EE\u6807\u8BBE\u5907\u63CF\u8FF0\uFF0C\u8BE6\u60C5\u53EF\u67E5\u770B \u5206\u533A\u8868\u63CF\u8FF0 \u3002 \u6700\u7EC8 Image \u6587\u4EF6\u63CF\u8FF0 \uFF0C\u5305\u62EC\u4FE1\u606F\u548C\u5185\u5BB9\u6392\u5E03\uFF0C\u7531 info \u6570\u636E\uFF0C updater \u6570\u636E\u548C...","topics/sdk/advanced/burn-image-add-dev-board.html@@@\u6DFB\u52A0\u5F00\u53D1\u677F@@@\u4E3A\u4E86\u5FEB\u901F\u521B\u5EFA\u677F\u5B50\u914D\u7F6E\uFF0CLuban SDK \u63D0\u4F9B\u4E86 add_board \u7A0B\u5E8F\u3002\u8BE5\u7A0B\u5E8F\u4EE5\u539F\u5382\u516C\u677F\u7684\u914D\u7F6E\u6587\u4EF6\u4E3A\u6A21\u677F\u6765\u521B\u5EFA\u65B0\u677F\u5B50\u5BF9\u5E94\u7684\u76EE\u5F55\u548C\u53C2\u6570\u914D\u7F6E\u3002\u4E00\u6B3E\u4EA7\u54C1\u5BF9\u5E94\u4E00\u4E2A\u677F\u5B50\uFF0C\u5F00\u53D1\u65B0\u4EA7\u54C1\u65F6\uFF0C\u9700\u8981\u5728 SDK \u4E2D\u521B\u5EFA\u65B0\u7684\u677F\u5B50\u4EE5\u53CA\u5BF9\u5E94\u7684\u914D\u7F6E \u3002 \u6267\u884C\u4E0B\u5217\u6B65\u9AA4\u524D\uFF0C\u7528\u6237\u9700\u8981\u63D0\u4F9B\u4E00\u4E2A\u539F\u5382\u516C\u677F\u7684\u914D\u7F6E\u6587\u4EF6\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C make add_board \u547D\u4EE4\u3002...","topics/sdk/advanced/burn-procedure-by-diff-media.html@@@\u955C\u50CF\u70E7\u5F55\u5A92\u4ECB\u53CA\u6D41\u7A0B@@@SD \u5361\u70E7\u5F55 \u82AF\u7247\u652F\u6301\u4ECE SD \u5361\u7684 FAT32 \u6587\u4EF6\u7CFB\u7EDF\u542F\u52A8\u3002 \u8981\u6C42\u4E0E\u6B65\u9AA4 \u5BF9\u82AF\u7247\u4E0E\u677F\u5B50\u7684\u8981\u6C42\uFF1A \u677F\u5B50 SD \u5361\u63A5\u53E3\uFF0C\u5E76\u4E14\u4F7F\u7528 SDMC1 \u82AF\u7247\u6CA1\u6709\u70E7\u5F55 \u8DF3\u8FC7 SD \u5361\u7684 eFuse \u5BF9 SD \u5361\u7684\u8981\u6C42\uFF1A SD \u5361\u8981\u6C42\u53EA\u6709\u4E00\u4E2A\u5206\u533A SD \u5361\u683C\u5F0F\u5316\u4E3A FAT32 \u6587\u4EF6\u7CFB\u7EDF\uFF0C\u6CE8\u610F\u4E0D\u662F exFAT\u3001\u6216\u8005 FAT16 SD \u5361\u6700\u597D\u4E3A\u4E13\u7528\u5361\uFF0C\u91CC\u9762\u4E0D\u8981\u653E\u7F6E\u592A\u591A\u5176\u4ED6\u6587\u4EF6 \u6267\u884C\u6B65\u9AA4\uFF1A \u62F7\u8D1D\u5728\u7F16\u8BD1\u8F93\u51FA\u76EE\u5F55 (...","topics/sdk/advanced/burnin_test.html@@@\u70E4\u673A\u6D4B\u8BD5@@@\u70E4\u673A\u6D4B\u8BD5\u662F\u4E00\u79CD\u957F\u65F6\u95F4\u7684\u8001\u5316\u6D4B\u8BD5\uFF0C\u7528\u4E8E\u786E\u4FDD\u786C\u4EF6\u5728\u6301\u7EED\u8FD0\u884C\u7684\u60C5\u51B5\u4E0B\u7684\u7A33\u5B9A\u6027\u548C\u53EF\u9760\u6027\u3002 \u70E4\u673A\u6D4B\u8BD5\u5177\u6709\u4EE5\u4E0B\u7279\u6027\uFF1A \u4E0D\u9700\u8981\u91CD\u65B0\u70E7\u5199\u955C\u50CF\uFF0C\u7701\u53BB\u91CF\u4EA7\u73AF\u5883\u7684\u955C\u50CF\u6587\u4EF6\u7BA1\u7406\u9EBB\u70E6\u3002 \u53EA\u9700\u51C6\u5907\u4E00\u4E2A\u5B58\u6709\u6D4B\u8BD5\u6570\u636E\u7684 SD \u5361\u3001\u6216\u8005 U \u76D8\uFF0C\u5373\u63D2\u5373\u6D4B\u3002 \u76EE\u524D\u5DF2\u652F\u6301\u7684\u6D4B\u8BD5\u9879\uFF1A \u89C6\u9891\u6587\u4EF6\u7684\u5FAA\u73AF\u64AD\u653E \u6E90\u7801\u7ED3\u6784\u8BF4\u660E \u70E4\u673A\u6D4B\u8BD5\u7684\u6E90\u7801\u4F4D\u4E8E packages/artinchip/burn-in \u76EE\u5F55\uFF0C\u7ED3\u6784\u5982\u4E0B\uFF1A packages...","topics/sdk/advanced/command_tool.html@@@\u547D\u4EE4\u884C\u5DE5\u5177\u53C2\u8003\u6307\u5357@@@\u672C\u8282\u8BE6\u7EC6\u4ECB\u7ECD\u4E86 ArtInChip SDK \u7F16\u8BD1\u8FC7\u7A0B\u4E2D\u6D89\u53CA\u7684\u547D\u4EE4\u884C\u5DE5\u5177\u4F7F\u7528\u8BF4\u660E\uFF0C\u4EC5\u4F9B\u53C2\u8003\u3002...","topics/sdk/advanced/commands.html@@@\u547D\u4EE4\u8BE6\u89E3@@@\u672C\u8282\u4ECB\u7ECD Luban-Lite SDK \u7F16\u8BD1\u8FC7\u7A0B\u4E2D\u6D89\u53CA\u7684\u547D\u4EE4\u7C7B\u578B\u4EE5\u53CA\u5404\u4E2A\u547D\u4EE4\u7684\u8BE6\u7EC6\u8BF4\u660E\u3002...","topics/sdk/advanced/commands_2.html@@@\u547D\u4EE4\u8BE6\u89E3@@@\u672C\u8282\u4ECB\u7ECD Luban-Lite SDK \u7F16\u8BD1\u8FC7\u7A0B\u4E2D\u6D89\u53CA\u7684\u547D\u4EE4\u7C7B\u578B\u4EE5\u53CA\u5404\u4E2A\u547D\u4EE4\u7684\u8BE6\u7EC6\u8BF4\u660E\u3002...","topics/sdk/advanced/compile.html@@@\u7F16\u8BD1\u9009\u9879\u4ECB\u7ECD@@@Luban-Lite SDK \u91C7\u7528 SCons \u547D\u4EE4\u7F16\u8BD1\uFF1A \u7F16\u8BD1\u64CD\u4F5C \u67E5\u770B SDK \u652F\u6301\u677F\u5361\uFF1A scons --list-def \u9009\u62E9\u677F\u5361\u914D\u7F6E\uFF1A scons --apply-def=\u9879\u76EE\u7D22\u5F15\u6216\u540D\u79F0 \u4FEE\u6539\u548C\u914D\u7F6E\u53C2\u6570\uFF1A scons --menuconfig \u7F16\u8BD1\uFF1A scons \u67E5\u770B\u751F\u6210\u76EE\u5F55\uFF1A \u67E5\u770B\u7F16\u8BD1\u5B8C\u6210\u540E\u7684\u76EE\u5F55\u7ED3\u6784...","topics/sdk/advanced/configure-precompilation-package.html@@@\u914D\u7F6E\u9884\u7F16\u8BD1\u5305@@@\u9075\u7167\u4EE5\u4E0B\u6B65\u9AA4\u914D\u7F6E\u9884\u7F16\u8BD1\u5305\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make menuconfig \u5728 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u9009\u62E9\u4EE5\u4E0B\u4EFB\u610F\u4E00\u79CD\u7F16\u8BD1\u65B9\u5F0F\uFF0C\u4EE5 Busybox \u4E3A\u4F8B\u3002 \u5BF9\u4E8E\u4E00\u4E2A\u7EC4\u4EF6\u5305\uFF0C\u7528\u6237\u53EF\u4EE5\u901A\u8FC7 menuconfig \u914D\u7F6E\u754C\u9762\u9009\u62E9\u4EE5\u4E0B\u4EFB\u610F\u4E00\u79CD\u7F16\u8BD1\u65B9\u5F0F\uFF1A \u6CE8\uFF1A \u5173\u4E8E\u4E24\u79CD\u7F16\u8BD1\u65B9\u5F0F\u7684\u5BF9\u6BD4\u548C\u8BE6\u7EC6\u63CF\u8FF0\uFF0C\u53EF\u67E5\u770B \u9884\u7F16\u8BD1\u5305\u4F18\u52BF \u3002...","topics/sdk/advanced/dfs_cmd_ref_guide.html@@@DFS \u547D\u4EE4\u884C\u5DE5\u5177\u53C2\u8003\u6307\u5357@@@\u5728 RT-Thread \u64CD\u4F5C\u7CFB\u7EDF\u4E2D\uFF0CDFS (Device File System) \u63D0\u4F9B\u4E86\u4E00\u7EC4\u57FA\u672C\u7684\u6587\u4EF6\u64CD\u4F5C\u547D\u4EE4\u3002\u4EE5\u4E0B\u662F ArtInChip SDK \u7F16\u8BD1\u8FC7\u7A0B\u4E2D\u5E38\u89C1\u7684 DFS \u7EC8\u7AEF\u547D\u4EE4\u53CA\u5176\u8BF4\u660E\u3002 cd \u6539\u53D8\u5F53\u524D\u5DE5\u4F5C\u76EE\u5F55\u3002 cd filepath \u793A\u4F8B\uFF1A\u8FDB\u5165 data \u76EE\u5F55 cd data ls \u5217\u51FA\u76EE\u5F55\u4E2D\u7684\u6587\u4EF6\u548C\u5B50\u76EE\u5F55\u3002 ls \u6BD4\u5982\uFF0C\u5217\u51FA data \u76EE\u5F55\u4E2D\u7684\u6587\u4EF6\u548C\u5B50\u76EE\u5F55\uFF0C\u8F93\u51FA\u793A\u4F8B\u5982\u4E0B\uFF1A...","topics/sdk/advanced/driver.html@@@\u6DFB\u52A0\u9A71\u52A8@@@\u672C\u8282\u4EE5\u6DFB\u52A0 GT911 \u7535\u5BB9\u5C4F\u9A71\u52A8\u4E3A\u4F8B\uFF0C\u4ECB\u7ECD\u5916\u8BBE\u9A71\u52A8\u7684\u6DFB\u52A0\u65B9\u6CD5\u3002 \u6DFB\u52A0\u5916\u8BBE \u83B7\u53D6\u6E90\u7801 \u4ECE https://github.com/RiceChen/gt911 \u4E0B\u8F7D GT911 \u7684 RT-Thread \u9A71\u52A8\u6E90\u7801\u4F4D\uFF0C\u5E76\u5C06\u5176\u89E3\u538B\u81F3 bsp/peripheral/touch \u76EE\u5F55\u4E0B\u3002 \u6E90\u7801\u7ED3\u6784\u5982\u4E0B\uFF1A touch$ tree . \u251C\u2500\u2500 gt911 \u2502 \u251C\u2500\u2500 inc \u2502 \u2502 \u2514\u2500\u2500 gt911.h \u2502...","topics/sdk/advanced/efuse_cmd_user_guide.html@@@efuse \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@efuse command usage: efuse help : Get this help. efuse init : Initialize eFuse driver. efuse dump offset len : Dump data from eFuse offset. efuse read addr offset len : Read eFuse data to RAM addr...","topics/sdk/advanced/fs_image.html@@@\u70E7\u5F55\u955C\u50CF\u683C\u5F0F\u548C\u5DE5\u5177@@@\u955C\u50CF\u683C\u5F0F ArtInChip \u7684\u70E7\u5F55\u955C\u50CF\u6587\u4EF6\u7531\u7EC4\u4EF6 (FirmWare Component, FWC) \u4EE5\u53CA\u5BF9\u5E94\u7684\u7EC4\u4EF6\u5143\u4FE1\u606F\u7EC4\u6210\u3002 \u6570\u636E\u5206\u5E03\u5982\u4E0B\u56FE\u6240\u793A\uFF1A \u56FE 1 . \u70E7\u5F55\u955C\u50CF\u683C\u5F0F \u5176\u4E2D\u4E00\u4E9B\u9700\u8981\u6253\u5305\u7684\u6570\u636E\u6587\u4EF6\uFF0C\u90FD\u88AB\u5F53\u505A\u7EC4\u4EF6 (FWC) \u8FDB\u884C\u5904\u7406\uFF0C\u5305\u62EC SPL \uFF0C os \uFF0C rodata \uFF0C data \u7B49\u6570\u636E\u3002 Image Header \u7684\u5177\u4F53\u683C\u5F0F\u5982\u4E0B\uFF1A struct...","topics/sdk/advanced/fs_image_2.html@@@\u70E7\u5F55\u955C\u50CF\u683C\u5F0F\u548C\u5DE5\u5177@@@\u955C\u50CF\u683C\u5F0F ArtInChip \u7684\u70E7\u5F55\u955C\u50CF\u6587\u4EF6\u7531\u7EC4\u4EF6 (FirmWare Component, FWC) \u4EE5\u53CA\u5BF9\u5E94\u7684\u7EC4\u4EF6\u5143\u4FE1\u606F\u7EC4\u6210\u3002 \u6570\u636E\u5206\u5E03\u5982\u4E0B\u56FE\u6240\u793A\uFF1A \u56FE 1 . \u70E7\u5F55\u955C\u50CF\u683C\u5F0F \u5176\u4E2D\u4E00\u4E9B\u9700\u8981\u6253\u5305\u7684\u6570\u636E\u6587\u4EF6\uFF0C\u90FD\u88AB\u5F53\u505A\u7EC4\u4EF6 (FWC) \u8FDB\u884C\u5904\u7406\uFF0C\u5305\u62EC SPL \uFF0C os \uFF0C rodata \uFF0C data \u7B49\u6570\u636E\u3002 Image Header \u7684\u5177\u4F53\u683C\u5F0F\u5982\u4E0B\uFF1A struct...","topics/sdk/advanced/fw_cmd_user_guide.html@@@fw_ \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@fw_setenv \u548C fw_printenv \u662F\u7528\u4E8E\u5728 Linux \u7CFB\u7EDF\u4E0B\u8BFB\u53D6\u548C\u4FEE\u6539 U-Boot \u73AF\u5883\u53D8\u91CF\u7684\u547D\u4EE4\u5DE5\u5177\uFF0C\u5141\u8BB8\u7528\u6237\u5728\u5E94\u7528\u5C42\u4E0A\u5BF9 U-Boot \u7684\u73AF\u5883\u53D8\u91CF\u8FDB\u884C\u64CD\u4F5C\uFF0C\u800C\u4E0D\u5FC5\u76F4\u63A5\u8FDB\u5165 U-Boot \u547D\u4EE4\u884C\u754C\u9762\u3002\u4EE5\u4E0B\u662F ArtInChip SDK \u7F16\u8BD1\u8FC7\u7A0B\u4E2D\u5E38\u89C1\u547D\u4EE4\u53CA\u5176\u8BF4\u660E\u3002 fw_setenv \u793A\u4F8B\uFF1A \u5C06\u4E0B\u6B21\u7CFB\u7EDF\u542F\u52A8\u5206\u533A\u8BBE\u7F6E\u4E3A B\u3002 fw_setenv osAB_next B...","topics/sdk/advanced/gdb.html@@@GDB \u8C03\u8BD5@@@GDB \u8C03\u8BD5\u5DE5\u5177\u53CA\u5176\u529F\u80FD\u63CF\u8FF0\u5982\u4E0B\uFF1A \u8868 1 . \u5DE5\u5177\u4ECB\u7ECD \u5DE5\u5177 \u8BF4\u660E T-HeadDebugServer \u8FD0\u884C GDB Server AiBurn \u955C\u50CF\u70E7\u5199\u5DE5\u5177 AIC-JTAG AIC \u8C03\u8BD5\u5668 JTAG - SDMC \u8F6C\u63A5\u7EBF \u4EC5\u7528\u4E8E\u8C03\u8BD5\u5668\u8FDE\u63A5 SDMC \u63A5\u53E3\u4F7F\u7528 Eclipse \u9002\u914D Luban-Lite SDK \u7684 IDE riscv64-unknown-elf-gdb.exe \u8C03\u8BD5\u5DE5\u5177\uFF0C\u4F4D\u4E8E...","topics/sdk/advanced/hellowold.html@@@hellowold@@@\u5728 Luban-Lite \u4E2D\u6709\u4EE5\u4E0B\u4E24\u79CD\u65B9\u6848\u6DFB\u52A0\u5F00\u673A\u8FD0\u884C\u7684 hellowold\uFF1A \u4FEE\u6539 main \u51FD\u6570 \u81EA\u52A8\u521D\u59CB\u5316 \u4FEE\u6539 main \u51FD\u6570 SDK \u9ED8\u8BA4\u521B\u5EFA\u4E86 hellowold \u4F8B\u7A0B\uFF0C\u53EF\u4EE5\u76F4\u63A5\u5728\u4F8B\u7A0B\u4E2D\u6DFB\u52A0\u79C1\u6709\u51FD\u6570\u903B\u8F91\uFF1A hellowold \u4F8B\u7A0B\u4EE3\u7801\u4E3A application/rt-thread/helloworld/main.c \u3002 main \u51FD\u6570\u662F RT-Thread \u7684\u4E3B\u5165\u53E3\u51FD\u6570\u3002...","topics/sdk/advanced/hwclock_cmd_ref_guide.html@@@hwclock \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@Busybox \u6E90\u7801\u81EA\u5E26\u4E00\u4E2A hwclock \u5DE5\u5177\uFF0C\u7528\u6765\u8BFB\u53D6\u548C\u8BBE\u7F6E RTC \u65F6\u95F4\u3002\u7528\u6CD5\u5982\u4E0B\uFF1A \u8BFB\u53D6\u5F53\u524D RTC \u65F6\u95F4\uFF08\u4E0D\u52A0\u4EFB\u4F55\u53C2\u6570\u65F6\u5C31\u9ED8\u8BA4\u662F\u8BFB\u53D6\uFF09\uFF1A hwclock -r \u8F93\u51FA\u793A\u4F8B\u5982\u4E0B\uFF1A Thu Jan 100 : 00 : 00 19700.000000 seconds \u8BFB\u53D6\u5F53\u524D RTC \u65F6\u95F4\uFF0C\u5E76\u52A0\u4E0A\u65F6\u533A\u6821\u51C6\uFF1A hwclock -ru \u5C06\u5F53\u524D\u7684\u7CFB\u7EDF\u65F6\u95F4\u540C\u6B65\u8BBE\u7F6E\u5230 RTC\uFF1A hwclock -w...","topics/sdk/advanced/image_burn_and_config.html@@@\u914D\u7F6E\u70E7\u5F55\u955C\u50CF@@@Luban-Lite SDK \u7F16\u8BD1\u7684\u6700\u7EC8\u8F93\u51FA\u7ED3\u679C\u662F\u4E00\u4E2A\u7528\u4E8E\u70E7\u5F55\u5230\u76EE\u6807\u5E73\u53F0\u7684\u955C\u50CF\u6587\u4EF6\u3002 \u8868 1 . \u70E7\u5F55\u5DE5\u5177 \u5DE5\u5177 \u8BF4\u660E AiBurn \u7528\u4E8E\u901A\u8FC7 PC \u70E7\u5F55\u955C\u50CF\u3002 \u4E32\u53E3\u8C03\u8BD5\u5DE5\u5177 \u7528\u4E8E\u901A\u8FC7\u547D\u4EE4\u884C\u8FDB\u5165\u70E7\u5F55\u6A21\u5F0F\u3001\u67E5\u770B\u70E7\u5F55\u3001\u542F\u52A8\u72B6\u6001\u3002 \u6267\u884C\u4E0B\u5217\u6D41\u7A0B\uFF0C\u70E7\u5F55\u955C\u50CF\u6587\u4EF6\uFF1A \u6253\u5F00 AiBurn \uFF0C\u8FDB\u5165 \u70E7\u5199\u955C\u50CF \u9875\u9762\uFF1A \u9009\u62E9\u4EE5\u4E0B\u4EFB\u610F\u65B9\u5F0F\uFF0C\u4F7F\u677F\u5361\u8FDB\u5165\u70E7\u5F55\u6A21\u5F0F\uFF1A \u677F\u5361\u4E0A\u7535\u524D\uFF0C\u6309\u4F4F\u5F00\u53D1\u677F\u4E0A\u7684 UBOOT \u952E\u4E0D\u653E\uFF0C\u518D\u4E0A\u7535\u3002...","topics/sdk/advanced/lb-delete-dev-board.html@@@\u5220\u9664\u5F00\u53D1\u677F@@@Luban SDK \u63D0\u4F9B\u5FEB\u901F\u5220\u9664\u5F00\u53D1\u677F\u914D\u7F6E\u7684\u65B9\u6CD5\u3002 \u7528\u6237\u53EF\u5728\u9009\u62E9\u4E00\u4E2A\u9700\u8981\u5220\u9664\u7684\u914D\u7F6E\u6587\u4EF6\u540E\uFF0C\u4F7F\u7528 del_board \u7A0B\u5E8F\u5220\u9664\u548C\u8FD9\u4E2A\u914D\u7F6E\u6587\u4EF6\u76F8\u5173\u7684\u76EE\u5F55\u548C\u914D\u7F6E\uFF0C\u8BE6\u7EC6\u6D41\u7A0B\u5982\u4E0B\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C make del_board \u547D\u4EE4\u3002 \u6839\u636E\u63D0\u793A\uFF0C\u63D0\u4F9B\u5FC5\u8981\u7684\u4FE1\u606F\u3002\u4F8B\u5982\uFF1A Reference defconfig:(Delete one board base on selected defconfig)...","topics/sdk/advanced/lb_usage_add_new_package.html@@@\u6DFB\u52A0\u65B0\u5E94\u7528@@@\u5728 Luban SDK \u4E2D\u6DFB\u52A0\u65B0\u5E94\u7528\u7684\u6D41\u7A0B\u5305\u62EC\u914D\u7F6E\u5E94\u7528\u5305\u3001\u6E90\u7801\u7BA1\u7406\u3001\u7F16\u8BD1\u548C\u8865\u4E01\u5236\u4F5C\u3002 \u5982\u9700\u5728 Luban SDK \u4E2D\u6DFB\u52A0\u65B0\u7684\u5E94\u7528\uFF0C\u53EF\u6267\u884C\u4E0B\u5217\u6B65\u9AA4\uFF1A \u5728 package \u76EE\u5F55\u4E0B\u6DFB\u52A0\u4E0B\u5217\u5FC5\u8981\u7684\u6587\u4EF6\uFF1A pkg > |-> pkg .mk --> \u5FC5\u987B\u6587\u4EF6\uFF0C\u7528\u4E8E\u5B9A\u4E49\u5305\u7684\u57FA\u672C\u4FE1\u606F\u3002 |-> Config.in --> \u53EF\u9009\u6587\u4EF6\uFF0C\u7528\u4E8E\u914D\u7F6E\u5305\u7684\u7F16\u8BD1\u9009\u9879\u3002 |-> Config.in.host --> \u4EC5...","topics/sdk/advanced/lb_usage_commands.html@@@\u547D\u4EE4\u8BE6\u89E3@@@\u5E38\u89C4\u547D\u4EE4 make board _defconfig make all - \u9879\u76EE\u67E5\u770B\uFF1Amake list --> \u5217\u51FA\u5F53\u524D\u53EF\u7528\u7684\u9879\u76EE\u914D\u7F6E - \u914D\u7F6E\uFF1Amake d211_demo128_nand_defconfig --> \u5E94\u7528\u9879\u76EE\u914D\u7F6E\uFF08\u4FDD\u5B58\u76EE\u5F55\uFF1Atarget/configs\uFF09 - \u7F16\u8BD1\uFF1Amake --> \u7F16\u8BD1\uFF0C\u81EA\u52A8\u8FDB\u884C\u4FEE\u6539\u68C0\u6D4B\uFF0C\u589E\u91CF\u7F16\u8BD1 - \u6E05\u9664\uFF1Amake clean --> \u6E05\u9664\u7F16\u8BD1\u751F\u6210\u5185\u5BB9...","topics/sdk/advanced/lb_usage_fs_image.html@@@\u914D\u7F6E\u5206\u533A\u548C\u955C\u50CF@@@\u5728\u6784\u5EFA\u7CFB\u7EDF\u955C\u50CF\u65F6\uFF0C\u9996\u5148\u9700\u8981\u914D\u7F6E\u5206\u533A\u548C\u955C\u50CF\uFF0C\u5305\u62EC\u5B9A\u4E49\u4E0D\u540C\u7684\u6587\u4EF6\u7CFB\u7EDF\u7C7B\u578B\u3001\u5927\u5C0F\u4EE5\u53CA\u6302\u8F7D\u70B9\u3002\u4F8B\u5982\uFF0C\u4F7F\u7528 menuconfig \u5DE5\u5177\u6765\u9009\u62E9\u548C\u914D\u7F6E\u6240\u9700\u7684\u8F6F\u4EF6\u5305\u3002 \u5B9A\u5236\u8F6F\u4EF6\u5305 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make menuconfig \u5BFC\u822A\u5230\u8F6F\u4EF6\u5305\u9009\u9879\uFF0C\u6839\u636E\u9879\u76EE\u9700\u6C42\u52FE\u9009\u6240\u9700\u7684\u8F6F\u4EF6\u5305\uFF0C\u7F16\u8BD1\u5230\u8BE5\u9879\u76EE\u7684\u955C\u50CF\u4E2D\u3002...","topics/sdk/advanced/lb_usage_structure.html@@@\u4EE3\u7801\u7ED3\u6784@@@\u56FE 1 . Luban SDK \u6839\u76EE\u5F55 Luban SDK \u4E2D\u6709\u4EE5\u4E0B\u91CD\u8981\u7684\u6587\u4EF6\u548C\u76EE\u5F55\uFF0C\u5176\u5206\u7C7B\u548C\u529F\u80FD\u5982\u4E0B\u6240\u8FF0\u3002 Luban \u251C\u2500\u2500 dl --> \u7B2C\u4E09\u65B9\u6E90\u7801\u7684\u538B\u7F29\u5305\u4FDD\u5B58\u76EE\u5F55 \u251C\u2500\u2500 output --> \u9ED8\u8BA4\u7684\u7F16\u8BD1\u8F93\u51FA\u76EE\u5F55 \u251C\u2500\u2500 package --> \u5404\u7F16\u8BD1\u6E90\u7801\u5305/\u7EC4\u4EF6\u7684\u914D\u7F6E \u2502 \u251C\u2500\u2500 Config.in --> menuconfig \u914D\u7F6E\u7684\u9876\u5C42\u5165\u53E3 \u2502 \u251C\u2500\u2500 artinchip -->...","topics/sdk/advanced/make_commands.html@@@make \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@make \u662F\u4E00\u4E2A\u81EA\u52A8\u5316\u6784\u5EFA\u5DE5\u5177\uFF0C\u901A\u8FC7\u8BFB\u53D6 Makefile \u6587\u4EF6\u4E2D\u7684 \u6307\u4EE4\u6765\u81EA\u52A8\u5B8C\u6210\u9879\u76EE\u7684\u7F16\u8BD1\u3001\u94FE\u63A5\u7B49\u6784\u5EFA\u4EFB\u52A1\u3002 \u8B66\u544A\uFF1A \u5728 make \u547D\u4EE4\u4E2D\u4F7F\u7528 -j \u53C2\u6570\u3002Luban \u5728\u7F16\u8BD1\u7684\u8FC7\u7A0B\u4E2D\uFF0C\u9ED8\u8BA4\u4F7F\u7528\u4E86 -j0 \u53C2\u6570\uFF0C\u5373\u6839\u636E\u7CFB\u7EDF\u7684 CPU \u6838\u5FC3\u6570\u91CF\uFF0C\u52A8\u6001\u5206\u914D\u7F16\u8BD1\u7684\u7EBF\u7A0B\u3002\u5982\u679C\u5916\u90E8\u518D\u63D0\u4F9B -j \u53C2\u6570\uFF0C\u4F1A\u5BFC\u81F4 SDK \u7F16\u8BD1\u8FC7\u7A0B\u4E2D\u51FA\u73B0\u4E00\u4E9B\u9AD8\u5C42\u6B21\u7684\u76EE\u6807\u7F16\u8BD1 \u4E0D\u540C\u6B65\u7684\u9519\u8BEF\u3002 \u8868 1 . make...","topics/sdk/advanced/make_pkg.html@@@make pkg-@@@make pkg \u5B8C\u6210\u4ECE extract/ patch/ ../ build/ install \u7684\u5168\u90E8\u7F16\u8BD1\u6D41\u7A0B\u3002 \u793A\u4F8B\uFF1A make qt make pkg -extract \u4EC5\u5BF9\u6E90\u7801\u5305\u8FDB\u884C\u89E3\u538B\u3002 \u793A\u4F8B 1\uFF1A\u89E3\u538B\u7F29 ethtool \u5305 make ethtool-extract \u793A\u4F8B 2\uFF1A\u628A dl \u4E2D\u7684\u538B\u7F29\u5305\u89E3\u538B\u5230 source \u76EE\u5F55 make qt-extract make pkg -patch...","topics/sdk/advanced/menuconfig_user_guide.html@@@menuconfig \u547D\u4EE4\u5DE5\u5177\u53C2\u8003\u6307\u5357@@@menuconfig \u662F\u4E00\u4E2A\u56FE\u5F62\u5316\u7684\u914D\u7F6E\u5DE5\u5177\uFF0C\u4E3B\u8981\u7528\u4E8E\u914D\u7F6E Linux \u5185\u6838\u548C\u5F00\u6E90\u9879\u76EE\uFF08\u5982 BusyBox\uFF09\u7684\u7F16\u8BD1\u9009\u9879\u3002 \u542F\u52A8 Menuconfig GUI \u914D\u7F6E\u754C\u9762 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\u8FDB\u5165 menuconfig \u7684\u4E3B\u914D\u7F6E\u754C\u9762\uFF1A \u5E38\u89C4\u547D\u4EE4 scons --menuconfig \u5173\u4E8E make \u547D\u4EE4\u7684\u8BE6\u7EC6\u8BF4\u660E\uFF0C\u53EF\u67E5\u770B OneStep \u7B80\u6D01\u547D\u4EE4 me \u5173\u4E8E OneStep...","topics/sdk/advanced/msh_cmd_ref_guide.html@@@MSH \u547D\u4EE4\u884C\u5DE5\u5177\u53C2\u8003\u6307\u5357@@@\u5728 Linux \u7CFB\u7EDF\u4E2D\uFF0CMSH\uFF08Micro Shell\uFF09\u662F\u4E00\u79CD\u8F7B\u91CF\u7EA7\u7684 shell \u73AF\u5883\u3002MSH \u547D\u4EE4\u63D0\u4F9B\u4E86\u4E00\u5957\u4F9B\u7528\u6237\u5728\u547D\u4EE4\u884C\u8C03\u7528\u7684\u64CD\u4F5C\u63A5\u53E3\uFF0C\u4E3B\u8981\u7528\u4E8E\u8C03\u8BD5\u6216\u67E5\u770B\u7CFB\u7EDF\u4FE1\u606F\u3002\u4EE5\u4E0B\u662F ArtInChip SDK \u7F16\u8BD1\u8FC7\u7A0B\u4E2D\u5E38\u89C1\u7684 MSH \u7EC8\u7AEF\u547D\u4EE4\u53CA\u5176\u8BF4\u660E\u3002 pin \u5728 MSH \u7EC8\u7AEF\u4F7F\u7528 pin \u547D\u4EE4\uFF0C\u8BBE\u7F6E\u5F15\u811A\u76F8\u5173\u529F\u80FD\uFF0C\u7528\u4E8E\u8C03\u8BD5\u529F\u80FD\u3002 \u8BED\u6CD5 pin options \u53C2\u6570 num \u4ECE\u786C\u4EF6\u4E2D\u83B7\u53D6 GPIO...","topics/sdk/advanced/onestep_command_ref.html@@@OneStep \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@OneStep \u662F ArtInChip \u5BF9 SCons \u5DE5\u5177\u4E8C\u6B21\u5C01\u88C5\u7684\u603B\u79F0\uFF0C\u5728\u57FA\u7840\u547D\u4EE4\u4E0A\u5F00\u53D1\u4E86\u4E00\u7EC4\u66F4\u9AD8\u6548\u548C\u65B9\u4FBF\u7684\u5FEB\u6377\u547D\u4EE4\uFF0C \u4EE5\u5B9E\u73B0\u4EFB\u610F\u76EE\u5F55\u3001\u4E00\u6B65\u5373\u8FBE\u7684\u76EE\u7684\u3002\u6839\u636E\u64CD\u4F5C\u7CFB\u7EDF\u7684\u4E0D\u540C\uFF0C\u53EF\u80FD\u9700\u8981\u4E0D\u540C\u7684\u8BBE\u7F6E\uFF1A Windows \u7CFB\u7EDF\u8BBE\u7F6E \u5728 Windows \u7CFB\u7EDF\u4E2D\uFF0COneStep \u81EA\u52A8\u96C6\u6210\u5230 win_cmd.bat \u548C win_env.bat \u6279\u5904\u7406\u811A\u672C\u4E2D\u3002 \u5728 CMD \u6216\u8005 ENV \u7A97\u53E3\u542F\u52A8\u540E\uFF0COneStep...","topics/sdk/advanced/onestep_command_ref_2.html@@@OneStep \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@OneStep \u662F ArtInChip \u5BF9 SCons \u5DE5\u5177\u4E8C\u6B21\u5C01\u88C5\u7684\u603B\u79F0\uFF0C\u5728\u57FA\u7840\u547D\u4EE4\u4E0A\u5F00\u53D1\u4E86\u4E00\u7EC4\u66F4\u9AD8\u6548\u548C\u65B9\u4FBF\u7684\u5FEB\u6377\u547D\u4EE4\uFF0C \u4EE5\u5B9E\u73B0\u4EFB\u610F\u76EE\u5F55\u3001\u4E00\u6B65\u5373\u8FBE\u7684\u76EE\u7684\u3002\u6839\u636E\u64CD\u4F5C\u7CFB\u7EDF\u7684\u4E0D\u540C\uFF0C\u53EF\u80FD\u9700\u8981\u4E0D\u540C\u7684\u8BBE\u7F6E\uFF1A Windows \u7CFB\u7EDF\u8BBE\u7F6E \u5728 Windows \u7CFB\u7EDF\u4E2D\uFF0COneStep \u81EA\u52A8\u96C6\u6210\u5230 win_cmd.bat \u548C win_env.bat \u6279\u5904\u7406\u811A\u672C\u4E2D\u3002 \u5728 CMD \u6216\u8005 ENV \u7A97\u53E3\u542F\u52A8\u540E\uFF0COneStep...","topics/sdk/advanced/partition.html@@@\u914D\u7F6E\u5206\u533A@@@\u5728 Luban-Lite \u7CFB\u7EDF\u4E2D\uFF0C\u5206\u533A\u7684\u8BBE\u7F6E\u548C\u7BA1\u7406\u662F\u7CFB\u7EDF\u6B63\u5E38\u8FD0\u884C\u548C\u65E5\u5E38\u7EF4\u62A4\u7684\u91CD\u8981\u65B9\u9762\u3002\u672C\u7AE0\u8282\u4ECB\u7ECD Luban-Lite \u7CFB\u7EDF\u4E2D\u5206\u533A\u7684\u7279\u70B9\u3001\u89C4\u5219\u548C\u5206\u533A\u4FEE\u6539\u7684\u65B9\u6CD5\u3002 \u6309\u7167\u5B58\u50A8\u4ECB\u8D28\u7684\u903B\u8F91\u5212\u5206\uFF0C Luban-Lite \u9ED8\u8BA4\u5206\u533A\u5305\u62EC\u4EE5\u4E0B\u51E0\u79CD\uFF1A \u542F\u52A8\u5206\u533A \uFF1A\u5B58\u653E BootLoader\uFF0C\u7528\u4E8E\u7CFB\u7EDF\u542F\u52A8\u3002 \u6570\u636E\u5206\u533A \uFF1A\u7528\u4E8E\u5B58\u50A8\u7528\u6237\u6570\u636E\u3002 \u7CFB\u7EDF A/B \u5206\u533A \uFF1A\u5206\u4E3A A/B \u7CFB\u7EDF\uFF0C\u5B9E\u73B0 OTA\uFF0C\u5373 Flash...","topics/sdk/advanced/pinmux.html@@@\u5F15\u811A\u914D\u7F6E@@@\u5728 Luban-Lite SDK \u4E2D\uFF0C\u4FEE\u6539\u540C\u4E00\u4E2A pinmux.c \u6587\u4EF6\uFF0C\u53EF\u4EE5\u914D\u7F6E\u76F8\u540C\u677F\u5361\u7684 GPIO \u5F15\u811A\u529F\u80FD\u3002 \u4F8B\u5982\uFF0C\u5BF9\u4E8E\u4EE5\u4E0B D133CBS RISC-V Kunlun Pi \u5F00\u53D1\u677F\uFF0C\u53EF\u4EE5\u4F7F\u7528 target/d13x/kunlunpi88-nor/pinmux.c \u6587\u4EF6\u6765\u914D\u7F6E GPIO \u5F15\u811A\u529F\u80FD\u3002 \u6CE8\uFF1A \u6BCF\u4E00\u4E2A\u9700\u8981\u4F7F\u7528\u5230\u7684\u5F15\u811A\u90FD\u5E94\u663E\u5F0F\u5730\u8BBE\u7F6E\u4E3A\u6307\u5B9A\u529F\u80FD\uFF0C\u5305\u62EC\u901A\u7528...","topics/sdk/advanced/pre-compilation-package.html@@@\u9884\u7F16\u8BD1\u5305\u4F18\u52BF@@@\u4E3A\u4E86\u52A0\u5FEB Luban \u7F16\u8BD1\u6846\u67B6\u4E2D\u7684 SDK \u7F16\u8BD1\u901F\u5EA6\uFF0C\u7F16\u8BD1\u8FC7\u7A0B\u4E2D\u5F15\u5165\u4E86\u9884\u7F16\u8BD1\u4E8C\u8FDB\u5236\u5305\u673A\u5236\u3002 \u4EE5\u4E0B\u4E3A\u4F7F\u7528\u6E90\u7801\u7F16\u8BD1\u65B9\u5F0F\u548C\u9884\u7F16\u8BD1\u5305\u65B9\u5F0F\u7684\u5BF9\u6BD4\uFF1A \u8868 1 . \u7F16\u8BD1\u65B9\u5F0F\u5BF9\u6BD4 \u6E90\u7801\u7F16\u8BD1\u65B9\u5F0F \u9884\u7F16\u8BD1\u4E8C\u8FDB\u5236\u538B\u7F29\u5305 \u7F16\u8BD1\u6784\u5EFA\u65F6\u95F4\u8F83\u957F\uFF0C\u7279\u522B\u662F\u7EC4\u4EF6\u8F83\u591A\u65F6\u3002 SDK \u7684\u6BCF\u4E00\u4E2A\u7EC4\u4EF6\u4ECE\u6E90\u7801\u7F16\u8BD1\u65F6\u4F1A\u7ECF\u5386\u4EE5\u4E0B\u6D41\u7A0B\uFF0C\u6BD4\u5982 Busybox \uFF1A extract patch configure build install \u63D0\u53D6\u3001...","topics/sdk/advanced/scons-commands.html@@@scons \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@SCons \u662F\u4E00\u4E2A\u8DE8\u5E73\u53F0\u7684\u6784\u5EFA\u7CFB\u7EDF\uFF0C\u88AB\u5E7F\u6CDB\u5E94\u7528\u4E8E\u8F6F\u4EF6\u5F00\u53D1\u9879\u76EE\u4E2D\uFF0C\u652F\u6301\u5728 Windows \u548C Linux \u4E0A\u4F7F\u7528\uFF0C\u4E14\u7528\u6CD5\u76F8\u540C\u3002\u672C\u8282\u5217\u793A\u4E86\u5E38\u7528\u7684 SCons \u547D\u4EE4\u548C\u529F\u80FD\u3002 scons --list-def \u89E3\u538B\u7F29 SDK \u540E\uFF0C\u4F7F\u7528 scons --list-def \u547D\u4EE4\u53EF\u4EE5\u7F57\u5217 SDK \u4E2D\u53D1\u5E03\u7684\u6240\u6709\u9879\u76EE\u540D\u79F0\uFF0C\u65B9\u4FBF\u7528\u6237\u67E5\u770B\u548C\u7BA1\u7406\u53EF\u7528\u7684\u9879\u76EE\u8D44\u6E90\u3002\u793A\u4F8B\u5982\u4E0B\uFF1A scons --list-def...","topics/sdk/advanced/scons-commands_2.html@@@scons \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@SCons \u662F\u4E00\u4E2A\u8DE8\u5E73\u53F0\u7684\u6784\u5EFA\u7CFB\u7EDF\uFF0C\u88AB\u5E7F\u6CDB\u5E94\u7528\u4E8E\u8F6F\u4EF6\u5F00\u53D1\u9879\u76EE\u4E2D\uFF0C\u652F\u6301\u5728 Windows \u548C Linux \u4E0A\u4F7F\u7528\uFF0C\u4E14\u7528\u6CD5\u76F8\u540C\u3002\u672C\u8282\u5217\u793A\u4E86\u5E38\u7528\u7684 SCons \u547D\u4EE4\u548C\u529F\u80FD\u3002 scons --list-def \u89E3\u538B\u7F29 SDK \u540E\uFF0C\u4F7F\u7528 scons --list-def \u547D\u4EE4\u53EF\u4EE5\u7F57\u5217 SDK \u4E2D\u53D1\u5E03\u7684\u6240\u6709\u9879\u76EE\u540D\u79F0\uFF0C\u65B9\u4FBF\u7528\u6237\u67E5\u770B\u548C\u7BA1\u7406\u53EF\u7528\u7684\u9879\u76EE\u8D44\u6E90\u3002\u793A\u4F8B\u5982\u4E0B\uFF1A scons --list-def...","topics/sdk/advanced/sconstruct.html@@@SConstruct@@@SConstruct\uFF0C\u4E00\u822C\u7B80\u79F0\u4E3A SCons\uFF0C\u5168\u79F0\u4E3A Software Construction Tool\uFF0C\u662F\u4E00\u4E2A\u7528 Python \u7F16\u5199\u7684\u5F00\u6E90\u6784\u5EFA\u5DE5\u5177\uFF0C\u65E8\u5728\u6539\u8FDB\u548C\u81EA\u52A8\u5316\u8F6F\u4EF6\u6784\u5EFA\u8FC7\u7A0B\u3002SConstruct \u63D0\u4F9B\u4E86\u4E00\u79CD\u66F4\u7B80\u5355\u3001\u66F4\u53EF\u9760\u4E14\u9AD8\u6548\u7684\u66FF\u4EE3\u4F20\u7EDF\u6784\u5EFA\u7CFB\u7EDF\u5982 GNU Make \u7684\u65B9\u6848\u3002 Luban-Lite \u4F7F\u7528 SConstruct \u6765\u5B9E\u73B0\u81EA\u52A8\u5316\u6784\u5EFA\u3002 \u57FA\u672C\u7528\u6CD5\u548C\u7279\u70B9 SCons \u4F7F\u7528...","topics/sdk/advanced/sdk-guide-temp-file.html@@@\u4E2D\u95F4\u6587\u4EF6\u63CF\u8FF0@@@\u201Ctemporary\u201D \u63CF\u8FF0\u7684\u662F\u955C\u50CF\u6587\u4EF6\u751F\u6210\u8FC7\u7A0B\u4E2D\u9700\u8981\u751F\u6210\u7684\u4E2D\u95F4\u6587\u4EF6\u3002\u901A\u8FC7\u63CF\u8FF0\u6570\u636E\u5BF9\u8C61\u7684\u65B9\u5F0F\uFF0C \u63CF\u8FF0\u4E0D\u540C\u7C7B\u578B\u7684\u4E2D\u95F4\u6587\u4EF6\u7684\u751F\u6210\u8FC7\u7A0B\uFF0C\u53EF\u7528\u4E8E\u5BF9\u7EC4\u4EF6\u7684\u7B7E\u540D\u3001\u52A0\u5BC6\u3001\u518D\u6B21\u6253\u5305\u7B49\u5904\u7406\u3002 \u5F53\u524D\u652F\u6301\u4E0B\u5217\u4E24\u79CD\u4E0D\u540C\u7684\u6570\u636E\u5904\u7406\uFF1A \u201Caicboot\u201D\uFF1A\u63CF\u8FF0 AIC \u542F\u52A8\u955C\u50CF\u7684\u751F\u6210 AIC \u542F\u52A8\u955C\u50CF AIC \u542F\u52A8\u955C\u50CF\u662F BROM \u89E3\u6790\u548C\u6267\u884C\u7684\u542F\u52A8\u7A0B\u5E8F\u6587\u4EF6\u3002 \u5F53\u9700\u8981\u5728\u6253\u5305\u8FC7\u7A0B\u4E2D\u751F\u6210\u4E00\u4E2A\u4E2D\u95F4\u7684 AIC \u542F\u52A8\u955C\u50CF\u6587\u4EF6\u65F6\uFF0C\u9700\u8981\u5728...","topics/sdk/advanced/sdk-guide-temp-file_2.html@@@\u4E2D\u95F4\u6587\u4EF6\u63CF\u8FF0@@@\u201Ctemporary\u201D \u63CF\u8FF0\u7684\u662F\u955C\u50CF\u6587\u4EF6\u751F\u6210\u8FC7\u7A0B\u4E2D\u9700\u8981\u751F\u6210\u7684\u4E2D\u95F4\u6587\u4EF6\u3002\u901A\u8FC7\u63CF\u8FF0\u6570\u636E\u5BF9\u8C61\u7684\u65B9\u5F0F\uFF0C \u63CF\u8FF0\u4E0D\u540C\u7C7B\u578B\u7684\u4E2D\u95F4\u6587\u4EF6\u7684\u751F\u6210\u8FC7\u7A0B\uFF0C\u53EF\u7528\u4E8E\u5BF9\u7EC4\u4EF6\u7684\u7B7E\u540D\u3001\u52A0\u5BC6\u3001\u518D\u6B21\u6253\u5305\u7B49\u5904\u7406\u3002 \u5F53\u524D\u652F\u6301\u4E0B\u5217\u4E24\u79CD\u4E0D\u540C\u7684\u6570\u636E\u5904\u7406\uFF1A \u201Caicboot\u201D\uFF1A\u63CF\u8FF0 AIC \u542F\u52A8\u955C\u50CF\u7684\u751F\u6210 AIC \u542F\u52A8\u955C\u50CF AIC \u542F\u52A8\u955C\u50CF\u662F BROM \u89E3\u6790\u548C\u6267\u884C\u7684\u542F\u52A8\u7A0B\u5E8F\u6587\u4EF6\u3002 \u5F53\u9700\u8981\u5728\u6253\u5305\u8FC7\u7A0B\u4E2D\u751F\u6210\u4E00\u4E2A\u4E2D\u95F4\u7684 AIC \u542F\u52A8\u955C\u50CF\u6587\u4EF6\u65F6\uFF0C\u9700\u8981\u5728...","topics/sdk/advanced/sdk-usage.html@@@\u4F7F\u7528\u6307\u5357@@@\u7CFB\u7EDF\u955C\u50CF\u3001\u7F16\u8BD1\u9009\u9879\u3001\u5F00\u53D1\u677F\u3001\u5E94\u7528\u7B49\u76F8\u5173\u7684\u8BE6\u7EC6\u4F7F\u7528\u8BF4\u660E\u3002...","topics/sdk/advanced/shell_cmd_ref_guide.html@@@Shell \u547D\u4EE4\u884C\u5DE5\u5177\u53C2\u8003\u6307\u5357@@@RT-Thread Shell \u547D\u4EE4\u884C\u662F RT-Thread \u64CD\u4F5C\u7CFB\u7EDF\u4E2D\u7684\u4E00\u4E2A\u91CD\u8981\u529F\u80FD\uFF0C\u5141\u8BB8\u7528\u6237\u901A\u8FC7\u547D\u4EE4\u884C\u4E0E\u7CFB\u7EDF\u8FDB\u884C\u4EA4\u4E92\uFF0C\u6267\u884C\u5404\u79CD\u64CD\u4F5C\u548C\u8C03\u8BD5\u4EFB\u52A1\u3002\u5728 RT-Thread Shell \u4E2D\uFF0C\u7528\u6237\u53EF\u4EE5\u8F93\u5165\u5404\u79CD\u547D\u4EE4\u6765\u67E5\u770B\u7CFB\u7EDF\u72B6\u6001\u3001\u7BA1\u7406\u7EBF\u7A0B\u548C\u8BBE\u5907\u3001\u63A7\u5236 GPIO \u7B49\u3002 date \u67E5\u770B\u65F6\u533A\u914D\u7F6E\u3002 date \u8F93\u51FA\u793A\u4F8B\u5982\u4E0B\uFF1A Tue Jan 601 : 41 : 27 UTC 1970 echo echo 9 >...","topics/sdk/advanced/sourcecode.html@@@\u4EE3\u7801\u7ED3\u6784@@@\u76EE\u5F55\u603B\u89C8 \u4EE3\u7801\u4E0B\u8F7D\u5B8C\u6210\u540E\uFF0C\u5728\u4EE3\u7801\u6839\u76EE\u5F55\u6267\u884C tree -L 2 \u547D\u4EE4\uFF0C\u53EF\u4EE5\u770B\u5230\u5982\u4E0B\u6240\u793A SDK \u76EE\u5F55\u7ED3\u6784\uFF1A \u6CE8\uFF1A \u4EE5\u4E0B\u76EE\u5F55\u7ED3\u6784\u4EC5\u4E3A\u53C2\u8003\u793A\u4F8B\uFF0C\u5177\u4F53\u4EE5\u5B9E\u9645\u4EE3\u7801\u5E93\u4E3A\u51C6\u3002 tree -L 2 \u251C\u2500\u2500 application // \u5B58\u653E APP \u5165\u53E3\uFF0Chelloword \u5E94\u7528\u7684 main \u51FD\u6570 \u2502 \u251C\u2500\u2500 baremetal \u2502 \u251C\u2500\u2500 freertos \u2502 \u251C\u2500\u2500 Kconfig \u2502 \u2514\u2500\u2500...","topics/sdk/advanced/tree_cmd_user_guide.html@@@tree \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@tree \u547D\u4EE4\u662F Linux \u7CFB\u7EDF\u4E2D\u4E00\u4E2A\u7528\u4E8E\u4EE5\u6811\u72B6\u56FE\u5F62\u5F0F\u663E\u793A\u76EE\u5F55\u7ED3\u6784\u7684\u547D\u4EE4\uFF1A \u663E\u793A\u5F53\u524D\u76EE\u5F55\u7ED3\u6784 \uFF1A\u76F4\u63A5\u8F93\u5165 tree \u547D\u4EE4\uFF0C\u4E0D\u8DDF\u4EFB\u4F55\u53C2\u6570\uFF0C\u5C06\u663E\u793A\u5F53\u524D\u76EE\u5F55\u4E0B\u7684\u6587\u4EF6\u548C\u5B50\u76EE\u5F55\u7ED3\u6784\u3002 \u6307\u5B9A\u76EE\u5F55\u663E\u793A \uFF1A\u901A\u8FC7\u5728 tree \u547D\u4EE4\u540E\u52A0\u4E0A\u8DEF\u5F84\u53C2\u6570\uFF0C\u53EF\u4EE5\u67E5\u770B\u7279\u5B9A\u76EE\u5F55\u7684\u7ED3\u6784\u3002 \u9012\u5F52\u663E\u793A \uFF1A\u9ED8\u8BA4\u60C5\u51B5\u4E0B\uFF0C tree \u547D\u4EE4\u4F1A\u9012\u5F52\u5730\u663E\u793A\u76EE\u5F55\u4E0B\u7684\u6240\u6709\u6587\u4EF6\u548C\u5B50\u76EE\u5F55\u3002 \u5E38\u7528\u9009\u9879 -a \uFF1A\u663E\u793A\u6240\u6709\u6587\u4EF6\uFF0C\u5305\u62EC\u9690\u85CF\u6587\u4EF6\u3002 -d...","topics/sdk/advanced/upgcmd_user_guide.html@@@upgcmd \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@upgcmd \u547D\u4EE4\u5728 AiBurn \u7684\u5B89\u88C5\u76EE\u5F55\u4E0B\uFF0C\u53EF\u4EE5\u5E2E\u52A9\u70E7\u5F55 eFuse\u3002 \u8BFB efuse upgcmd shcmd "efuse dump psk0 0x0 0x10" \u5199 efuse upgcmd shcmd "efuse writestr psk0 ArtInChip" upgcmd shcmd "efuse write customer 6968436E49747241"...","topics/sdk/advanced/userid_cmd_user_guide.html@@@userid \u547D\u4EE4\u53C2\u8003\u6307\u5357@@@U-Boot \u6D4B\u8BD5\u547D\u4EE4 U-Boot \u4E2D\u901A\u8FC7\u547D\u4EE4\u884C\u63D0\u4F9B\u4E86 UserID \u7684\u589E\u5220\u6539\u67E5\u7B49\u64CD\u4F5C\uFF0C\u5177\u4F53\u547D\u4EE4\u7684\u4F7F\u7528\u53EF\u901A\u8FC7 help \u547D\u4EE4\u67E5\u770B\uFF1A userid help userid init \uFF1A\u4ECE UserID \u5206\u533A\u52A0\u8F7D\u548C\u521D\u59CB\u5316 UserID \u6570\u636E\uFF1A userid list \uFF1A\u67E5\u770B\u5F53\u524D\u7684 ID \u5217\u8868 userid writehex name offset data \uFF1A\u5199\u5165\u65B0 ID \u793A\u4F8B\uFF1A userid...","topics/sdk/app/dm.html@@@\u52A8\u6001\u52A0\u8F7D (DM-APP)@@@\u52A8\u6001\u6A21\u5757\uFF08 Dynamic Module \uFF0C\u7B80\u79F0 dm-app\uFF09\u673A\u5236\u5141\u8BB8\u5F00\u53D1\u8005\u5728\u8FD0\u884C\u65F6\u52A8\u6001\u52A0\u8F7D\u548C\u5378\u8F7D\u5E94\u7528\u7A0B\u5E8F\uFF0C\u800C\u65E0\u9700\u91CD\u65B0\u7F16\u8BD1\u6574\u4E2A\u7CFB\u7EDF\u3002\u76EE\u524D\u8BE5\u7279\u6027\u4EC5\u5728 Luban-Lite \u5185\u6838\u4E3A RT-Thread \u65F6\u652F\u6301\u3002 Luban-Lite \u539F\u751F\u5F00\u53D1\u7684\u6620\u50CF\u4E3A Kernel \uFF0C\u4F7F\u7528 Dynamic Module \u673A\u5236\u5F00\u53D1\u7684\u5E94\u7528\u4E3A dm-app \u3002\u672C\u8282\u4ECB\u7ECD Dynamic Module \u529F\u80FD\u53CA\u5176\u914D\u7F6E\u6D41\u7A0B\u3002 DM...","topics/sdk/app/dm_app_dev.html@@@DM-APP \u5F00\u53D1@@@DM-APP \u5F00\u53D1 DM-APP \u7684\u5F00\u53D1\u76EE\u5F55\u4F4D\u4E8E luban-lite/packages/artinchip/aic-dm-apps \u3002\u9996\u5148\u786E\u4FDD luban-lite/ \u6839\u76EE\u5F55\u4E0B\u7684 Kernel \u5DE5\u7A0B\u88AB\u6B63\u786E\u914D\u7F6E\u4E14\u7F16\u8BD1\u901A\u8FC7\u540E\uFF0C\u751F\u6210\u5BF9\u5E94\u7684 DM-APP SDK\uFF1A \u8FDB\u5165 DM-APP \u7684\u5F00\u53D1\u76EE\u5F55\uFF1A cd luban-lite/packages/artinchip/aic-dm-apps...","topics/sdk/app/dm_app_gdb_debug.html@@@GDB \u8C03\u8BD5@@@\u4F7F\u7528 JTAG \u8C03\u8BD5\u5668\u8FDE\u63A5 SoC\uFF0C\u5E76\u901A\u8FC7 DebugServer \u63D0\u4F9B\u7684 GDB \u8C03\u8BD5\u63A5\u53E3\u53EF\u4EE5\u8C03\u8BD5 dm-app\u3002\u4EE5 test_dm_lib \u547D\u4EE4\u52A8\u6001\u52A0\u8F7D hello.so \u4E3A\u4F8B\uFF0C\u6574\u4E2A\u8C03\u8BD5\u8FC7\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u5728 GDB \u4E2D\u7ED9\u7CFB\u7EDF\u51FD\u6570 dlmodule_load() \u6253\u4E0A\u65AD\u70B9\uFF1A (gdb) b dlmodule_load \u5728\u4E32\u53E3 Shell \u4E2D\u6267\u884C\u4E0B\u5217\u6D4B\u8BD5\u542F\u52A8\u547D\u4EE4\uFF1A test_dm_lib GDB...","topics/sdk/app/dm_app_run_compile.html@@@\u7F16\u8BD1\u548C\u8FD0\u884C@@@DM-APP \u53EF\u4EE5\u88AB\u7F16\u8BD1\u6210\u4E24\u79CD\u7C7B\u578B\uFF1A\u53EF\u6267\u884C\u6587\u4EF6 ( .mo ) \u548C\u5E93\u6587\u4EF6 ( .so )\u3002\u672C\u8D28\u4E0A\u4E24\u8005\u90FD\u662F ET_DYN \u7C7B\u578B\u7684 ELF \u6587\u4EF6\uFF0C\u552F\u4E00\u7684\u4E0D\u540C\u662F\u53EF\u6267\u884C\u6587\u4EF6\u6307\u5B9A\u4E86 main \u51FD\u6570\u4F5C\u4E3A\u6267\u884C\u5165\u53E3\uFF0C\u800C\u5E93\u6587\u4EF6\u6307\u5B9A\u4E86 0 \u4F5C\u4E3A\u6267\u884C\u5165\u53E3\u3002 \u7F16\u8BD1\u548C\u8FD0\u884C\u53EF\u6267\u884C\u6587\u4EF6 .mo \u6267\u884C\u672C\u8282\u6B65\u9AA4\u524D\uFF0C\u786E\u8BA4\u6253\u5F00\u6B63\u786E\u7684\u547D\u4EE4\u884C\u8FD0\u884C\u73AF\u5883\uFF1A \u5728 Windows \u7CFB\u7EDF\u4E0A\uFF1A\u53CC\u51FB win_env.bat \u6253\u5F00\u547D\u4EE4\u884C\u8FD0\u884C\u73AF\u5883\u3002 \u5728...","topics/sdk/app/dm_kernel_config.html@@@Kernel \u914D\u7F6E@@@\u5982\u9700\u4F7F\u7528 Dynamic Module \u529F\u80FD\uFF0C\u9700\u8981\u5728\u5185\u6838\u4E2D\u6253\u5F00\u4EE5\u4E0B\u914D\u7F6E\uFF1A \u542F\u7528 POSIX \u6587\u4EF6\u7CFB\u7EDF\u548C I/O \uFF1A Rt-Thread options ---> RT-Thread Components ---> C/C++ and POSIX layer ---> POSIX (Portable Operating System Interface) layer ---> [*] Enable...","topics/sdk/app/mkfs_partition_image.html@@@\u5236\u4F5C\u5206\u533A\u955C\u50CF@@@\u5236\u4F5C\u6587\u4EF6\u7CFB\u7EDF\u955C\u50CF\u65F6\uFF0C\u9700\u8981\u5C06\u7F16\u8BD1\u540E\u7684\u6587\u4EF6\u548C\u8D44\u6E90\u6253\u5305\u6210\u7279\u5B9A\u683C\u5F0F\u7684\u955C\u50CF\u6587\u4EF6\uFF0C\u4EE5\u4FBF\u70E7\u5F55\u5230\u76EE\u6807\u8BBE\u5907\u4E0A\u3002\u5236\u4F5C\u6587\u4EF6\u7CFB\u7EDF\u955C\u50CF\u524D\uFF0C\u9700\u8981\u51C6\u5907\u76F8\u5E94\u7684\u8D44\u6E90\u6587\u4EF6\u3002\u5728 Luban Lite SDK \u4E2D\uFF0C\u5404\u6A21\u5757\u53EF\u4EE5\u901A\u8FC7\u914D\u7F6E INSTALL \u53C2\u6570\u6765\u6307\u5B9A\u9700\u8981\u5B89\u88C5\u7684\u8D44\u6E90\u6587\u4EF6\u3002\u8FD9\u4E9B\u8D44\u6E90\u6587\u4EF6\u4F1A\u88AB\u590D\u5236\u5230\u6307\u5B9A\u7684\u76EE\u6807\u76EE\u5F55\u4E2D\u3002 Luban-Lite SDK...","topics/sdk/app/psram_load.html@@@\u5206\u6563\u52A0\u8F7D@@@\u5206\u6563\u52A0\u8F7D\u65B9\u6848\u662F\u4E00\u79CD\u5C06\u8D1F\u8F7D\u5206\u6563\u5230\u591A\u4E2A\u8D44\u6E90\u6216\u670D\u52A1\u5668\u7684\u65B9\u6CD5\uFF0C\u4EE5\u5B9E\u73B0\u8D1F\u8F7D\u5747\u8861\u548C\u63D0\u9AD8\u7CFB\u7EDF\u7684\u53EF\u7528\u6027\u548C\u6027\u80FD\u3002\u5206\u6563\u52A0\u8F7D\u65B9\u6848\u7684\u4E3B\u8981\u76EE\u6807\u662F\u786E\u4FDD\u5728\u9AD8\u5E76\u53D1\u8BBF\u95EE\u65F6\uFF0C\u6BCF\u4E2A\u8D44\u6E90\u6216\u670D\u52A1\u5668\u90FD\u80FD\u5F97\u5230\u9002\u5F53\u7684\u8D1F\u8F7D\uFF0C\u4ECE\u800C\u907F\u514D\u5355\u70B9\u6545\u969C\u548C\u6027\u80FD\u74F6\u9888\u3002 SDK \u9ED8\u8BA4\u4EE3\u7801\u5206\u5E03 D13x \u7CFB\u5217\u82AF\u7247 SRAM \u5927\u5C0F\u4E3A 1M Bytes\uFF0CPSRAM \u5927\u5C0F\u4E3A 8M Bytes\u3002\u53D1\u5E03\u7684 SDK \u9ED8\u8BA4\u914D\u7F6E\u662F\uFF1A\u7CFB\u7EDF\u8FD0\u884C\u65F6\uFF0C\u4EE3\u7801\u6BB5\u3001rodata \u6BB5\u3001data...","topics/sdk/app/usb-display-config.html@@@\u914D\u7F6E USB \u8BBE\u5907\u529F\u80FD@@@\u914D\u7F6E USB Device Controller \u914D\u7F6E USB \u8BBE\u5907\u529F\u80FD\u548C\u8FDB\u884C\u5176\u4ED6\u5F00\u53D1\u5DE5\u4F5C\u4E4B\u524D\uFF0C\u9700\u6309\u7167\u4E0B\u5217\u6D41\u7A0B\u914D\u7F6E USB Device Controller\uFF1A \u8FDB\u5165 SDK \u6839\u76EE\u5F55\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A scons menuconfig \u5728 menuconfig \u4E2D\u7684\u529F\u80FD\u754C\u9762\uFF0C\u4F7F\u80FD USB \u7AEF\u53E3\u5E76\u914D\u7F6E\u5F53\u524D USB \u7AEF\u53E3\u4E3A Device \u6A21\u5F0F\u3002 Board...","topics/sdk/app/usb-display-install-drive.html@@@\u5B89\u88C5\u9A71\u52A8@@@\u5982\u679C PC \u8BBE\u5907\u4E4B\u524D\u672A\u5B89\u88C5\u5BF9\u5E94\u9A71\u52A8\uFF0C\u5F53 USB Display \u8BBE\u5907\u901A\u8FC7 USB \u63A5\u5165 PC \u8BBE\u5907\u540E\uFF0C\u7CFB\u7EDF\u4F1A\u591A\u51FA\u4E00\u4E2A U \u76D8\u8BBE\u5907\uFF0C\u5176\u4E2D\u5305\u542B\u9700\u8981\u7684\u9A71\u52A8\u5B89\u88C5\u5305\u6587\u4EF6\u3002 \u9488\u5BF9\u4E0D\u540C\u7684\u64CD\u4F5C\u7CFB\u7EDF\uFF0CPC \u8BBE\u5907\u9A71\u52A8\u7684\u5B89\u88C5\u65B9\u6CD5\u4E5F\u4E0D\u4EC5\u4E0B\u540C\u3002 \u5728 Windows \u7CFB\u7EDF\u4E2D\u5B89\u88C5\u9A71\u52A8 \u5728 Windows \u7CFB\u7EDF\u4E2D\uFF0C\u5F53 USB Display \u8BBE\u5907\u901A\u8FC7 USB \u63A5\u5165 PC \u8BBE\u5907\u540E\uFF0C\u5728 U \u76D8\u4E2D\u4F1A\u770B\u5230\u4E00\u4E2A .exe \u540E\u7F00\u7684 USB...","topics/sdk/app/usb-display-tp-calibrate_windows.html@@@\u5728 Windows \u4E2D\u6821\u51C6\u89E6\u6478\u5C4F@@@\u5728 Windows \u73AF\u5883\u4E0B\uFF0C\u9ED8\u8BA4\u89E6\u6478\u5C4F\u4F1A\u63A7\u5236\u4E3B\u5C4F\u3002\u4E3A\u4E86\u4F7F\u89E6\u6478\u5C4F\u80FD\u591F\u63A7\u5236 USB \u526F\u5C4F\uFF0C\u9700\u8981\u8BBE\u7F6E\u76F8\u5173\u53C2\u6570\u3002 \u8BE6\u7EC6\u8BBE\u7F6E\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u5728 Windows \u5F00\u59CB\u83DC\u5355\u4E2D\u627E\u5230 \u63A7\u5236\u9762\u677F \u9009\u9879\u3002 \u5728\u63A7\u5236\u9762\u677F\u754C\u9762\uFF0C\u6253\u5F00 \u786C\u4EF6\u548C\u58F0\u97F3 > \u5E73\u677F\u7535\u8111\u8BBE\u7F6E \u9009\u9879\u3002 \u5728\u5F39\u51FA\u7684\u5BF9\u8BDD\u6846\u4E2D\uFF0C\u70B9\u51FB \u8BBE\u7F6E \u3002 \u70B9\u51FB\u8BBE\u7F6E\u540E\uFF0C\u7CFB\u7EDF\u4F1A\u5F39\u51FA\u4E0B\u5217\u63D0\u793A\uFF1A \u6309 Enter \u952E\u8BA9\u4E0A\u8FF0\u5B57\u4F53\u663E\u793A\u5230\u526F\u5C4F\u4E0A\uFF0C\u5E76\u70B9\u51FB\u526F\u5C4F\u7684\u89E6\u6478\u5C4F\u76F4\u5230\u754C\u9762\u6D88\u5931\u3002...","topics/sdk/app/usb-display.html@@@USB Display \u65B9\u6848@@@\u5982\u56FE\u6240\u793A\uFF0CUSB Display \u8BBE\u5907\u901A\u8FC7 USB \u7EBF\u7F06\u8FDE\u63A5\u5230 PC \u8BBE\u5907\u4E0A\uFF0C\u5728 PC \u4E0A\u5B89\u88C5\u5B8C\u5BF9\u5E94\u7684\u9A71\u52A8\u7A0B\u5E8F\u540E\uFF0CUSB Display \u8BBE\u5907\u5C31\u53D8\u6210\u4E86 PC \u7684\u4E00\u4E2A\u6269\u5C55\u663E\u793A\u5668\u3002 \u201CPC \u8BBE\u5907\u201D \u6CDB\u6307 USB Host \u7AEF\u7684\u8BBE\u5907\uFF0C\u4E3A\u4E86\u7B80\u5316\u63CF\u8FF0\u4E0B\u6587\u4ECD\u6CBF\u7528 \u201CPC \u8BBE\u5907\u201D \u6216 \u201CPC\u201D\u3002 USB Device \u7AEF\u53EF\u4EE5\u57FA\u4E8E Luban-Lite SDK \u8FDB\u884C USB Display \u65B9\u6848\u7684\u4E8C\u6B21\u5F00\u53D1\uFF0C\u901A\u8FC7...","topics/sdk/audio/audio_configure.html@@@Audio \u914D\u7F6E@@@\u4F7F\u80FD Audio \u9A71\u52A8 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C\u4EE5\u4E0B scons --menuconfig \u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [*] Using audio \u6CE8\uFF1A \u4E3A\u4E86\u4F7F\u7528\u65B9\u4FBF\uFF0C\u9009\u62E9 Using audio \u540E\u4F1A\u81EA\u52A8\u9009\u62E9 audio \u9A71\u52A8\u6846\u67B6\u3002 Audio \u6A21\u5757\u7684 driver \u5C42\u9A71\u52A8\u57FA\u4E8E RT-Thread \u7684...","topics/sdk/audio/audio_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/audio/audio_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E\uFF1A bsp/artinchip/drv/audio/drv_audio.c : Playback \u7684 driver \u5C42\u9A71\u52A8 bsp/artinchip/drv/audio/drv_dmic.c : DMIC \u7684 driver \u5C42\u9A71\u52A8 bsp/artinchip/drv/audio/drv_amic.c : AMIC \u7684 driver \u5C42\u9A71\u52A8...","topics/sdk/audio/audio_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u64AD\u653E\u97F3\u9891\u6587\u4EF6\u65F6\u4F1A\u5148\u64AD\u653E\u4E00\u6BB5 0 \u6570\u636E \u5728 RT-Thread \u7684 Audio \u6846\u67B6\u4E2D\uFF0C\u64AD\u653E\u97F3\u9891\u65F6\u51FA\u73B0\u8D77\u59CB\u90E8\u5206\u4E3A 0 \u6570\u636E\u7684\u95EE\u9898\u786E\u5B9E\u6BD4\u8F83\u5E38\u89C1\u3002\u8FD9\u4E3B\u8981\u662F\u7531\u4E8E\u5185\u5B58\u6C60\u7BA1\u7406\u673A\u5236\u5BFC\u81F4\u7684\u3002\u5F53\u8BFB\u53D6\u7684\u97F3\u9891\u6570\u636E\u957F\u5EA6\u5C0F\u4E8E\u5185\u5B58\u6C60\u4E00\u4E2A block \u7684\u5927\u5C0F\u65F6\uFF0C\u5373\u4F7F\u5DF2\u7ECF\u5C06\u97F3\u9891\u6570\u636E\u5199\u5165\u5185\u5B58\u6C60\uFF0C\u4E5F\u4E0D\u4F1A\u7ACB\u5373\u5C06\u8BE5 block \u52A0\u5165\u5230\u6570\u636E\u961F\u5217\u4E2D\uFF0C\u800C\u662F\u7B49\u5230\u4E00\u4E2A block \u5199\u6EE1\u624D\u52A0\u5165\u6570\u636E\u961F\u5217\u3002\u5C3D\u7BA1\u672A\u52A0\u5165\u6570\u636E\u961F\u5217\uFF0C\u4F46 audio...","topics/sdk/audio/audio_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u6D4B\u8BD5\u677F\uFF1A\u5E26\u6709 DMIC \u6216 AMIC \u4EE5\u53CA SPK \u7684\u6D4B\u8BD5\u677F PC\uFF1A\u7528\u4E8E\u548C\u6D4B\u8BD5\u677F\u4EA4\u4E92 \u4E32\u53E3\u7EBF\uFF1A\u8FDE\u63A5\u6D4B\u8BD5\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6 \u97F3\u9891 \u6D4B\u8BD5\u4EE3\u7801 \u4F7F\u80FD\u6D4B\u8BD5\u4EE3\u7801 \u5728 RT-Thread \u914D\u7F6E\u4E2D\u542F\u7528\u97F3\u9891\u9A71\u52A8\u6D4B\u8BD5\u547D\u4EE4\uFF1A Drivers options ---> Drivers examples ---> [*] Enable AUDIO driver test...","topics/sdk/audio/audio_user_guide.html@@@Audio \u4F7F\u7528\u6307\u5357@@@Audio \u662F\u4E00\u4E2A\u5185\u7F6E\u5728 SOC \u5185\u90E8\u7684\u97F3\u9891\u6A21\u5757\u3002\u8BE5\u6A21\u5757\u5185\u90E8\u96C6\u6210\u4E86 ADC\u3001DMIC \u97F3\u9891\u8F93\u5165\u548C PWM \u97F3\u9891 \u8F93\u51FA\uFF0C\u7ECF\u8FC7\u6570\u5B57\u4FE1\u53F7\u7684\u5904\u7406\uFF0C\u5B9E\u73B0\u97F3\u9891\u4FE1\u53F7\u7684\u5F55\u5165\u4EE5\u53CA\u64AD\u653E\u7B49\u529F\u80FD\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 PCM \u8109\u51B2\u7F16\u7801\u8C03\u5236 PDM \u8109\u51B2\u5BC6\u5EA6\u8C03\u5236 SDM Sigma Delta Modulation DF \u62BD\u503C\u6EE4\u6CE2\u5668 IF \u63D2\u503C\u6EE4\u6CE2\u5668 HDF \u9AD8\u901A\u6EE4\u6CE2\u5668 DVC \u6570\u5B57\u97F3\u91CF\u63A7\u5236\u5668 DMICI/F...","topics/sdk/boot/back-to-brom.html@@@\u8FD4\u56DE BROM@@@\u5728 USB \u5347\u7EA7\u7684\u5E94\u7528\u4E2D\uFF0C\u4E3B\u673A\u901A\u8FC7 USB \u4E0B\u8F7D SPL \u5230 SRAM\uFF0C\u5E76\u4E14\u7531 BROM \u8DF3\u8F6C\u6267\u884C\uFF0CSPL \u4EE3\u7801\u5BF9 DDR \u521D\u59CB\u5316\u7ED3\u675F\u4E4B\u540E\u9700\u8981\u8FD4\u56DE\u5230 BROM \u4E2D\u7EE7\u7EED\u6267\u884C\u4E0B\u8F7D\u5176\u4ED6\u6570\u636E\u7684\u64CD\u4F5C\u3002 \u8FD9\u79CD\u5E94\u7528\u573A\u666F\u4E2D\uFF0C\u5C06\u8FD4\u56DE BROM \u770B\u505A\u662F\u4ECE BROM \u4E2D\u52A0\u8F7D\u6570\u636E\uFF0C\u56E0\u6B64\u8FD4\u56DE BROM \u88AB\u5B9E\u73B0\u4E3A\u4E00\u4E2A\u7A0B\u5E8F\u52A0\u8F7D\u5668\u3002 common/spl/spl_bootrom.c \u4E2D\u901A\u8FC7\u6CE8\u518C...","topics/sdk/boot/boot-memory.html@@@\u5185\u5B58\u76F8\u5173@@@DDR \u521D\u59CB\u5316 BROM \u9636\u6BB5\u4EC5\u7CFB\u7EDF SRAM \u53EF\u7528\uFF0C\u5927\u5C0F\u4E3A 96 KB\u3002\u5728 BROM \u9636\u6BB5 Cache \u5173\u95ED\uFF0CSRAM \u7684\u8FD0\u884C\u9891\u7387\u4E3A 24 MHz. DDR \u7684\u521D\u59CB\u5316\u5728 PreBoot Program (PBP) \u7A0B\u5E8F\u4E2D\u8FDB\u884C\u3002PBP \u662F\u4FDD\u5B58\u5728 AIC \u542F\u52A8\u955C\u50CF\u4E2D\u7684\u4E00\u6BB5\u7A0B\u5E8F\uFF0C BROM \u5728\u8FD0\u884C SPL \u4E4B\u524D\u5148\u8FD0\u884C PBP \u7A0B\u5E8F\uFF0CPBP \u7A0B\u5E8F\u6267\u884C\u6210\u529F\u4E4B\u540E\uFF0C\u624D\u8DF3\u8F6C\u6267\u884C SPL \u7A0B\u5E8F\u3002 PBP...","topics/sdk/boot/bundle-images.html@@@\u6253\u5305\u955C\u50CF@@@\u672C\u7AE0\u8282\u63CF\u8FF0 U-Boot \u6D89\u53CA\u5230\u7684\u6253\u5305\u955C\u50CF\u76F8\u5173\u7684\u5185\u5BB9\uFF0C\u4EE5\u53CA\u76F8\u5173\u5DE5\u5177\u3002...","topics/sdk/boot/configure-default-environment-variable.html@@@\u521D\u59CB\u73AF\u5883\u53D8\u91CF\u8BBE\u7F6E@@@\u521D\u59CB\u7684\u73AF\u5883\u53D8\u91CF\u8BBE\u7F6E\u6709\u4E24\u79CD\u65B9\u5F0F\uFF1A \u6E90\u6587\u4EF6\u6587\u4EF6\u4E2D\u8BBE\u7F6E\u9ED8\u8BA4\u7684\u73AF\u5883\u53D8\u91CF\u5185\u5BB9 \u8FD9\u79CD\u65B9\u5F0F\u662F\u901A\u8FC7\u5177\u4F53\u5E73\u53F0\u7684\u914D\u7F6E\u5934\u6587\u4EF6\uFF0C\u5B9A\u4E49\u5404\u4E2A\u73AF\u5883\u53D8\u91CF\u7684\u521D\u59CB\u5316\u8BBE\u7F6E\u5B8F\uFF0C\u7136\u540E\u5728\u7F16\u8BD1\u7684\u65F6\u5019\u5C55\u5F00\u5230\u5168\u5C40\u53D8\u91CF default_environment \u4E2D\u3002\u5177\u4F53\u53EF\u4EE5\u53C2\u8003\uFF1A include/env_default.h env/common.c include/configs/qemu-riscv.h...","topics/sdk/boot/debug-configuration.html@@@\u8C03\u8BD5\u914D\u7F6E@@@\u6B64\u7AE0\u8282\u63CF\u8FF0\u5E38\u7528\u7684 SPL \u548C U-Boot \u8C03\u8BD5\u914D\u7F6E\u65B9\u6CD5\u3002...","topics/sdk/boot/environment-variables.html@@@\u73AF\u5883\u53D8\u91CF@@@\u672C\u7AE0\u63CF\u8FF0 U-Boot \u4E2D\u5173\u4E8E\u73AF\u5883\u53D8\u91CF\u7684\u5173\u952E\u5185\u5BB9\uFF0C\u4EE5\u53CA ArtInChip \u5E73\u53F0\u4E2D\u5BF9\u73AF\u5883\u53D8\u91CF\u7684\u4F7F\u7528\u65B9\u5F0F\u3002 \u5173\u4E8E U-Boot \u73AF\u5883\u53D8\u91CF\u7684\u66F4\u591A\u5185\u5BB9\uFF0C\u53EF\u4EE5\u53C2\u8003\u5B98\u65B9\u6587\u6863 http://www.denx.de/wiki/DULG/Manual U-Boot \u73AF\u5883\u53D8\u91CF\u662F\u4FDD\u5B58\u5728\u975E\u6613\u5931\u6027\u5B58\u50A8(NVM)\u4E0A\u7684\u6587\u672C\u6570\u636E\u5757\uFF0C\u7CFB\u7EDF\u542F\u52A8\u65F6\u4F1A\u88AB\u62F7\u8D1D\u5230\u5185\u5B58\u4E2D\u4F7F\u7528\u3002...","topics/sdk/boot/fitImage_0.html@@@FIT Image \u4ECB\u7ECD@@@\u5728 ArtInChip \u542F\u52A8\u7CFB\u7EDF\u7684\u5F00\u53D1\u8FC7\u7A0B\u4E2D\uFF0C\u4F7F\u7528\u8FC7\u4E0D\u540C\u7684 Kernel Image \u683C\u5F0F\uFF1A \u6CE8\uFF1A Kernel Image \u5916\u7F51\u53C2\u8003\u8D44\u6E90\uFF1A http://www.wowotech.net/u-boot/fit_image_overview.html \u3002\u672A\u6765\u9700\u8981\u6539\u7528 FIT Image (ITB Image)\u3002 uImage\uFF1AU-Boot \u5B9A\u4E49\u7684\u4E00\u79CD\u542F\u52A8\u955C\u50CF\u683C\u5F0F\uFF0C\u7531 64 \u5B57\u8282\u7684 U-Boot...","topics/sdk/boot/fitImage_1.html@@@FIT Image \u914D\u7F6E\u548C\u542F\u52A8@@@FIT\uFF0C\u5373 Flattened Image Tree\uFF0C\u662F\u53C2\u8003 Flattened Device Tree \u547D\u4EE4\u800C\u6765\uFF0C\u5177\u6709\u4EE5\u4E0B\u4F18\u52BF\u3002 \u66F4\u7075\u6D3B\u7684\u5904\u7406\u5404\u79CD\u7C7B\u578B\u7684 image \u7C7B\u578B(\u538B\u7F29\u3001\u975E\u538B\u7F29\u3001\u5404\u79CD\u683C\u5F0F\uFF0C\u5404\u79CD\u914D\u7F6E\u7EC4\u5408) \u53EF\u4EE5\u5904\u7406\u5B89\u5168\u542F\u52A8\u8FC7\u7A0B\u4E2D\u7684\u5B89\u5168\u6821\u9A8C\uFF08\u7B7E\u540D\u6821\u9A8C\uFF09 FIT \u539F\u59CB\u53C2\u8003\u6587\u6863\u5982\u4E0B\uFF1A source/uboot- 2021.10 /doc/usage/fit.rst source/uboot...","topics/sdk/boot/fitImage_2.html@@@\u4F7F\u7528 FIT Image@@@ArtInChip \u9879\u76EE\u4E2D\uFF0C\u5C06 Kernel Image \u6539\u4E3A\u4F7F\u7528 FIT Image \u7684\u539F\u56E0\uFF1A \u5FEB\u901F\u542F\u52A8\u7684\u9700\u8981 \u51CF\u5C11\u5206\u533A\u7684\u9700\u8981 \u5B89\u5168\u542F\u52A8\u7684\u9700\u8981 \u652F\u6301 RISCV \u7684\u9700\u8981 \u5FEB\u901F\u542F\u52A8 D21x \u7684\u5FEB\u901F\u542F\u52A8\uFF0CeMMC \u7684\u65B9\u6848\u4F7F\u7528\u672A\u538B\u7F29\u7684 Image \u901F\u5EA6\u6700\u5FEB\uFF0CSPINOR/SPINAND \u4F7F\u7528\u538B\u7F29\u7684 zImage \u6BD4\u8F83\u5408\u9002\u3002 \u540C\u65F6 U-Boot \u52A0\u8F7D Kernel \u6700\u597D\u53EA\u8BFB\u53D6 Kernel Image...","topics/sdk/boot/image-file-intro.html@@@Image \u6587\u4EF6\u63CF\u8FF0@@@\u201Cimage\u201D \u5BF9\u8C61\u63CF\u8FF0\u8981\u751F\u6210\u7684\u955C\u50CF\u6587\u4EF6\u7684\u57FA\u672C\u4FE1\u606F\uFF0C\u4EE5\u53CA\u8981\u6253\u5305\u7684\u6570\u636E\u3002\u5305\u542B\u51E0\u4E2A\u90E8\u5206\uFF1A \u201Cinfo\u201D \u201Cupdater\u201D \u201Ctarget\u201D "image" : { "info" : { ... } "updater" : { ... } "target" : { ... } } Info \u6570\u636E\u63CF\u8FF0 \u201Cinfo\u201D \u5BF9\u8C61\u7528\u4E8E\u63CF\u8FF0\u8BE5\u70E7\u5F55\u955C\u50CF\u7684\u57FA\u672C\u4FE1\u606F\uFF0C\u8FD9\u4E9B\u4FE1\u606F\u7528\u4E8E\u751F\u6210 Image Header\u3002\u4EE5...","topics/sdk/boot/image-file-intro_2.html@@@Image \u6587\u4EF6\u63CF\u8FF0@@@\u201Cimage\u201D \u5BF9\u8C61\u63CF\u8FF0\u8981\u751F\u6210\u7684\u955C\u50CF\u6587\u4EF6\u7684\u57FA\u672C\u4FE1\u606F\uFF0C\u4EE5\u53CA\u8981\u6253\u5305\u7684\u6570\u636E\u3002\u5305\u542B\u51E0\u4E2A\u90E8\u5206\uFF1A \u201Cinfo\u201D \u201Cupdater\u201D \u201Ctarget\u201D "image" : { "info" : { ... } "updater" : { ... } "target" : { ... } } Info \u6570\u636E\u63CF\u8FF0 \u201Cinfo\u201D \u5BF9\u8C61\u7528\u4E8E\u63CF\u8FF0\u8BE5\u70E7\u5F55\u955C\u50CF\u7684\u57FA\u672C\u4FE1\u606F\uFF0C\u8FD9\u4E9B\u4FE1\u606F\u7528\u4E8E\u751F\u6210 Image Header\u3002\u4EE5...","topics/sdk/boot/jtag-debug-configuration.html@@@JTAG \u8C03\u8BD5@@@\u672C\u8282\u63CF\u8FF0\u901A\u8FC7 JTAG \u63A5\u53E3\u4E0B\u8F7D\u548C\u8FD0\u884C U-Boot \u811A\u672C\uFF0C\u4EE5\u53CA\u5728\u91CD\u5B9A\u4F4D\u540E\u7684\u8C03\u8BD5\u6D41\u7A0B\u3002 \u901A\u8FC7 JTAG \u4E0B\u8F7D SPL \u5C06 SPL \u76F4\u63A5\u4E0B\u8F7D\u5230\u82AF\u7247 SRAM \u8FD0\u884C\uFF1A restore ./output/images/u-boot-spl-dtb.bin binary 0x103100 add-symbol-file ./output/build/uboot- 2021.10...","topics/sdk/boot/lite_boot_config_guide.html@@@Boot \u914D\u7F6E@@@\u4F7F\u7528\u4EE5\u4E0B\u547D\u4EE4\u53EF\u4EE5\u8FDB\u5165 menuconfig \u914D\u7F6E\u754C\u9762\uFF0C\u914D\u7F6E Boot \u7684\u76F8\u5173\u53C2\u6570\u3002 scons --menuconfig \u914D\u7F6E Bootloader \u94FE\u63A5\u811A\u672C \u5728 Chip options \u4E2D\uFF0C\u627E\u5230 Custom link script path (relative path in sdk) \u9009\u9879\u3002 \u5C06\u94FE\u63A5\u811A\u672C\u7684\u76F8\u5BF9\u8DEF\u5F84\u586B\u5199\u5230\u8BE5\u9009\u9879\u4E2D\uFF0C\u4EE5 d21x_bootloader_gcc.ld...","topics/sdk/boot/lite_boot_debug_guide.html@@@\u542F\u7528\u8C03\u8BD5@@@\u9075\u7167\u4EE5\u4E0B\u6D41\u7A0B\uFF0C\u542F\u7528 Bootloader \u8C03\u8BD5\u529F\u80FD\uFF1A \u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u914D\u7F6E\u754C\u9762\u3002 scons --menuconfig \u5728 Bootloader Options \u4E2D\uFF0C\u9009\u62E9\u4EE5\u4E0B\u9009\u9879\uFF0C\u542F\u7528 Bootloader \u8C03\u8BD5\u529F\u80FD\uFF1A Bootloader options ---> bootloader debug ---> [ ] aicupg debug on...","topics/sdk/boot/lite_boot_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u8868 1 . tinySPL \u6E90\u7801\u7ED3\u6784 Sys bsp/artinchip/sys/<chip>/ SoC \u521D\u59CB\u5316\u76F8\u5173\u4EE3\u7801\uFF0C\u4E0E\u5E94\u7528\u5171\u7528 Board target/<chip>/<board>/ \u677F\u5B50\u521D\u59CB\u5316\u76F8\u5173\u4EE3\u7801\uFF0C\u4E0E\u5E94\u7528\u5171\u7528 HAL bsp/artinchip/hal/ HAL \u9A71\u52A8\u4EE3\u7801\uFF0C\u4E0E\u5E94\u7528\u5171\u7528 Boot application/baremetal/bootloader/...","topics/sdk/boot/lite_boot_direct.html@@@\u542F\u52A8\u5F15\u5BFC@@@\u542F\u52A8\u5F15\u5BFC\u7A0B\u5E8F Bootloader \u53EF\u4EE5\u5B9E\u73B0\u52A0\u8F7D\u542F\u52A8\u5E94\u7528\u7A0B\u5E8F\u3001 \u70E7\u5F55\u548C\u5347\u7EA7\u529F\u80FD\u3002...","topics/sdk/boot/lite_boot_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/boot/lite_boot_introduction.html@@@Boot \u4ECB\u7ECD@@@...","topics/sdk/boot/lite_boot_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u901A\u8FC7\u547D\u4EE4\u884C\u53EF\u4EE5\u6267\u884C Boot \u6D4B\u8BD5\u3002\u4F7F\u7528\u4EE5\u4E0B\u4EFB\u610F\u65B9\u5F0F\uFF0C\u53EF\u4EE5\u8FDB\u5165 Boot \u7684\u547D\u4EE4\u884C\u6A21\u5F0F\uFF1A \u542F\u52A8\u8FC7\u7A0B\u4E2D\u4E00\u76F4\u6309\u4F4F\u952E\u76D8\u4E0A\u7684 CTRL+C \u952E\u3002 \u542F\u52A8\u52A0\u8F7D\u5E94\u7528\u7A0B\u5E8F\u5931\u8D25\u3002 \u5347\u7EA7\u8FC7\u7A0B\u4E2D\u6309 CTRL+C \u7EC8\u6B62\u5347\u7EA7\u6D41\u7A0B\uFF0C\u9000\u51FA\u5230\u547D\u4EE4\u884C\u6A21\u5F0F\u3002 \u547D\u4EE4\u7F16\u8BD1 \u5728\u4F7F\u7528\u547D\u4EE4\u4E4B\u524D\uFF0C\u9996\u5148\u9700\u8981\u786E\u4FDD\u5728 \u3001 Bootloader options \u4E2D\u5DF2\u7ECF\u9009\u4E2D\u547D\u4EE4\u8FDB\u884C\u7F16\u8BD1\u3002 Bootloader options --->...","topics/sdk/boot/load-SDFAT32.html@@@SDFAT32 \u52A0\u8F7D@@@SDFAT32 \u542F\u52A8\u65B9\u5F0F\u66F4\u4E3A\u7B80\u5355\uFF0C\u4E0D\u9700\u8981\u4E13\u4E1A\u7684\u70E7\u5F55\u5DE5\u5177\u8FDB\u884C\u70E7\u5199\uFF0C\u53EA\u9700\u8981\u5C06\u955C\u50CF\u6587\u4EF6\u590D\u5236\u5230 SD \u5361\u5373\u53EF\u3002 \u56FE 1 . MMC \u4E0E SD \u5361\u542F\u52A8\u5DEE\u5F02 SDFAT32 \u662F\u57FA\u4E8E MMC \u5EFA\u7ACB\u7684\uFF0C\u52A0\u8F7D\u7A0B\u5E8F\u4E5F\u5728 spl_mmc.c \u4E2D\u5B9E\u73B0\uFF1A \u4F7F\u7528\u4E0B\u5217\u5B8F\u53C2\u6570\u5C06 spl_mmc_load_image \u51FD\u6570\u6DFB\u52A0\u5230 .u_boot_list_2_spl_image_loader_* \u6BB5\u3002...","topics/sdk/boot/load-mmc.html@@@MMC \u52A0\u8F7D@@@SPL \u4ECE MMC \u52A0\u8F7D U-Boot \u7684\u5904\u7406\u8FC7\u7A0B\u3002\u7A0B\u5E8F\u7F16\u7801\u7684\u65F6\u5019\uFF0C\u9488\u5BF9 MMC \u8BBE\u5907\u6DFB\u52A0\u4E86\u5BF9\u5E94\u7684\u52A0\u8F7D\u7A0B\u5E8F\u652F\u6301\uFF0C\u5982 spl_mmc.c \u4E2D\uFF0C\u901A\u8FC7\u4F7F\u7528\u5B8F SPL_LOAD_IMAGE_METHOD(\u201CMMC1\u201D, 0, BOOT_DEVICE_MMC1, spl_mmc_load_image); \u5C06 spl_mmc_load_image \u51FD\u6570\u6DFB\u52A0\u5230...","topics/sdk/boot/load-spiNand.html@@@SPI NAND \u52A0\u8F7D@@@\u5B98\u65B9\u7248\u672C\u7684 SPL \u5E76\u4E0D\u652F\u6301\u4ECE SPI NAND \u542F\u52A8\uFF0CArtInChip \u589E\u52A0\u4E86\u4ECE SPI NAND \u7684 MTD \u5206\u533A \u548C UBI \u52A0\u8F7D U-Boot \u7684\u652F\u6301\u3002 common/spl/spl_spi_nand.c \u4E2D\u6CE8\u518C\u4E86\u4E24\u4E2A\u4E0D\u540C\u7684 SPL \u7A0B\u5E8F\u52A0\u8F7D\u5668\u3002 #ifdef CONFIG_SPL_UBI /* Use priorty 0 to override other SPI device...","topics/sdk/boot/load-spiNor.html@@@SPI NOR \u52A0\u8F7D@@@common/spl/spl_spi.c \u4E2D\u901A\u8FC7\u5B8F\u6CE8\u518C\u4E86 SPI NOR \u7684\u7A0B\u5E8F\u52A0\u8F7D\u5668\u3002 SPL_LOAD_IMAGE_METHOD( "SPI" , 1 ,BOOT_DEVICE_SPI,spl_spi_load_image); \u5728 SPL \u521D\u59CB\u5316\u8FC7\u7A0B\u4E2D\uFF0C\u901A\u8FC7 boot_from_devices(spl_boot_list) \u51FD\u6570\u8C03\u7528\uFF0C\u68C0\u67E5\u5F53\u524D\u9879\u76EE\u6240\u652F\u6301\u7684 SPL...","topics/sdk/boot/logo-display.html@@@\u56FE\u50CF\u663E\u793A@@@\u672C\u7AE0\u8282\u4E3B\u8981\u4ECB\u7ECD U-Boot \u9636\u6BB5 LOGO \u663E\u793A\u7684\u76F8\u5173\u5185\u5BB9\u3002 U-Boot \u9A71\u52A8\u6A21\u578B\u652F\u6301 Graphics\uFF0CArtInChip \u5E73\u53F0\u4E2D\u7684\u663E\u793A\u9A71\u52A8\u57FA\u4E8E\u8BE5\u6846\u67B6\u8FDB\u884C\u5B9E\u73B0\u3002 \u4F46\u9A71\u52A8\u5185\u90E8\u903B\u8F91\u53C2\u8003\u4E86 Kernel \u4E2D\u7684\u663E\u793A\u9A71\u52A8\uFF0C\u5BF9\u65B0\u5C4F\u9002\u914D\u53EF\u53C2\u8003 SDK \u6307\u5357\u4E2D\u7684\u663E\u793A\u6A21\u5757\u4F7F\u7528\u6307\u5357\u3002 \u76F8\u5173\u672F\u8BED \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E DE Display Engine \u663E\u793A\u5F15\u64CE DI Display Interface...","topics/sdk/boot/luban_aicupg-burn.html@@@AICUPG \u70E7\u5F55@@@ArtInChip \u5E73\u53F0\u652F\u6301\u901A\u8FC7 USB \u8FDB\u884C\u88F8\u673A\u70E7\u5F55\u7684\u529F\u80FD\u3002\u901A\u5E38\u60C5\u51B5\u4E0B\uFF0C\u8BE5\u529F\u80FD\u5728 BROM \u9636\u6BB5\u901A\u8FC7\u68C0\u6D4B\u7279\u5B9A\u6309\u952E\u7684\u65B9\u5F0F\uFF0C\u6216\u8005\u542F\u52A8\u5931\u8D25\u65F6\u8FDB\u5165\u3002 \u5B8C\u6574\u7684\u5347\u7EA7\u8FC7\u7A0B\u5206\u4E3A\u4E24\u4E2A\u9636\u6BB5\uFF1A BROM \u9636\u6BB5 \u4EC5\u652F\u6301\u4E0B\u8F7D\u6570\u636E\u548C\u7EC4\u4EF6\u5230 SRAM/DRAM\uFF0C\u4EE5\u53CA\u6267\u884C\u4E0B\u8F7D\u7684\u7EC4\u4EF6\u3002\u4E0D\u652F\u6301\u70E7\u5F55\u7EC4\u4EF6\u5230\u5B58\u50A8\u4ECB\u8D28\u3002 U-Boot \u9636\u6BB5 \u652F\u6301\u4ECE\u4E3B\u673A\u7AEF\u4E0B\u8F7D\u6570\u636E\u548C\u7EC4\u4EF6\uFF0C\u5E76\u4E14\u652F\u6301\u5C06\u7EC4\u4EF6\u70E7\u5F55\u5230\u6307\u5B9A\u7684\u5B58\u50A8\u4ECB\u8D28\u3002 USB \u88F8\u673A\u70E7\u5F55\u7684\u5B9E\u73B0\u6D41\u7A0B\uFF1A...","topics/sdk/boot/mmc-drivers.html@@@MMC@@@\u672C\u7AE0\u8282\u63CF\u8FF0 MMC \u9A71\u52A8\u7684\u76F8\u5173\u914D\u7F6E\u548C\u4F7F\u7528\u3002 \u9A71\u52A8\u6846\u67B6 U-Boot \u9A71\u52A8\u6A21\u578B\u652F\u6301 MMC\uFF0C\u5E76\u4E14\u901A\u8FC7\u5757\u8BBE\u5907\u63A5\u53E3\u5BF9 MMC \u8FDB\u884C\u8BBF\u95EE\u3002ArtInChip \u5E73\u53F0\u4E2D\uFF0C SPL \u548C U-Boot \u9636\u6BB5\u90FD\u652F\u6301 MMC \u5DF2\u7ECF\u5757\u8BBE\u5907\u63A5\u53E3\u3002 \u76F8\u5173\u914D\u7F6E\u4E3A\uFF1A CONFIG_MMC CONFIG_DM_MMC CONFIG_SPL_DM_MMC CONFIG_BLK CONFIG_SPL_BLK...","topics/sdk/boot/modify-dts.html@@@\u4FEE\u6539 DTS@@@\u542F\u52A8\u5185\u6838\u65F6\uFF0C\u4F1A\u901A\u8FC7\u53C2\u6570 r2 \u5C06 FDT \u4F20\u9012\u7ED9 Kernel\u3002Bootargs \u7B49\u4FE1\u606F\u4E5F\u4F1A\u901A\u8FC7 FDT \u4F20\u9012\u7ED9 Kernel\u3002 \u7531\u4E8E bootargs \u662F\u5728 U-Boot \u8FD0\u884C\u65F6\u751F\u6210\uFF0C\u5982\u679C\u9700\u8981\u4F20\u9012 initrd \u4FE1\u606F\uFF0C\u4E5F\u662F\u901A\u8FC7 FDT \u4F20\u9012\u3002 do_bootm(); // cmd/bootm.c |-> do_bootm_states(); // common/bootm.c |->...","topics/sdk/boot/opensbi.html@@@OpenSBI@@@\u6B64\u5904\u4ECB\u7ECD OpenSBI \u7684\u57FA\u672C\u4F5C\u7528\uFF0C\u4EE5\u53CA\u4E0E U-Boot \u7684\u5173\u7CFB\u3002...","topics/sdk/boot/pre-boot-program.html@@@Pre-Boot Program (PBP)@@@Pre-Boot Program (PBP) \u662F ArtInChip \u82AF\u7247\u5E73\u53F0\u542F\u52A8\u8FC7\u7A0B\u4E2D\u7684\u4E00\u6BB5\u7A0B\u5E8F\uFF0C\u5728 BROM \u7A0B\u5E8F\u8DF3\u8F6C\u6267\u884C SPL \u4E4B\u524D\uFF0C \u8FD0\u884C\u7684\u4EE3\u7801\u3002 PBP \u7A0B\u5E8F\u7528\u4E8E\u521D\u59CB\u5316\u4E00\u4E9B\u4E0D\u5F00\u653E\u7684\u786C\u4EF6\u6A21\u5757\uFF0C\u6BD4\u5982 DRAM \u63A7\u5236\u5668\u7684\u521D\u59CB\u5316\u3002 \u5B58\u653E\u4F4D\u7F6E PBP \u7A0B\u5E8F\u662F\u4EE5\u4E8C\u8FDB\u5236\u5F62\u5F0F\u4FDD\u5B58\u5728 SDK \u4E2D\uFF0C\u901A\u5E38\u4F4D\u4E8E target/ chip /common/ chipname .pbp \u5728 mk_image.py...","topics/sdk/boot/print-setting-d21x.html@@@\u6253\u5370\u8BBE\u7F6E@@@\u5728\u6267\u884C\u542F\u52A8\u6D41\u7A0B\u8C03\u8BD5\u6216\u8005\u6A21\u5757\u8C03\u8BD5\u65F6\uFF0C\u901A\u8FC7\u4E32\u53E3\u6253\u5370\u4FE1\u606F\u8FDB\u884C\u8C03\u8BD5\u662F\u4E00\u79CD\u5E38\u89C1\u7684\u65B9\u6CD5\u3002\u901A\u8FC7 Kconfig \u914D\u7F6E\u4E2D\u7684 ArtInChip debug \u9009\u9879\uFF0C\u53EF\u4EE5\u4F7F\u80FD\u6253\u5370\u4FE1\u606F\uFF0C\u8BE6\u7EC6\u6D41\u7A0B\u5982\u4E0B\uFF1A \u8FDB\u5165 U-Boot \u83DC\u5355\u914D\u7F6E\u754C\u9762\uFF1A make uboot-menuconfig \u5728\u83DC\u5355\u914D\u7F6E\u4E2D\uFF0C\u627E\u5230\u5E76\u5C55\u5F00 ArtInChip debug \u9009\u9879\uFF1A ArtInChip debug ---> [ ] Enable early...","topics/sdk/boot/reset-drivers.html@@@Reset@@@\u672C\u7AE0\u8282\u63CF\u8FF0 ArtInChip \u5E73\u53F0\u7684 U-Boot \u590D\u4F4D\u9A71\u52A8\u76F8\u5173\u5185\u5BB9\u3002 \u9A71\u52A8\u6846\u67B6 U-Boot \u9A71\u52A8\u6A21\u578B\u652F\u6301 Reset\uFF0CArtInChip \u5E73\u53F0\u4E2D Reset \u9A71\u52A8\u57FA\u4E8E\u8BE5\u6846\u67B6\u8FDB\u884C\u5B9E\u73B0\u3002 \u76F8\u5173\u914D\u7F6E\u4E3A\uFF1A CONFIG_DM_RESET CONFIG_RESET_ARTINCHIP \u76F8\u5173\u6E90\u7801\u6709\uFF1A include/reset.h include/reset-uclass.h...","topics/sdk/boot/save-env-variable-on-memory-medium.html@@@\u5B58\u50A8\u4ECB\u8D28\u4E0A\u7684\u4FDD\u5B58@@@\u5728\u4F7F\u7528\u8FC7\u7A0B\u4E2D\uFF0C\u4FDD\u5B58\u5728\u5B58\u50A8\u8BBE\u5907\u4E0A\u7684\u73AF\u5883\u53D8\u91CF\u5185\u5BB9\u53EF\u80FD\u4F1A\u88AB\u4FEE\u6539\uFF0C\u56E0\u6B64\u9009\u62E9\u5B58\u50A8\u4F4D\u7F6E\u65F6\u9700\u8981\u8003\u8651\u5B58\u50A8\u4ECB\u8D28\u7684\u7279\u70B9\u3002 \u6BD4\u5982 MTD \u8BBE\u5907\u4E0A\u8981\u6CE8\u610F\u4FDD\u5B58\u5728\u72EC\u7ACB\u7684\u64E6\u9664\u5757\u4E0A\uFF0C\u4EE5\u514D\u5728\u4FEE\u6539\u65F6\u5F71\u54CD\u5176\u4ED6\u6570\u636E\u7684\u5B8C\u6574\u6027\u3002 \u5E38\u89C1\u7684\u4FDD\u5B58\u65B9\u5F0F\u6709\u4E0B\u9762\u4E24\u79CD\uFF1A \u4E0E U-Boot \u4E00\u8D77\u4FDD\u5B58 \u5728\u4F7F\u7528 MMC \u5B58\u50A8\u65F6\uFF0C\u6709\u4E9B\u65B9\u6848\u4F1A\u5C06 ENV \u4FDD\u5B58\u5728 U-Boot \u7684\u5206\u533A\uFF0C\u5E76\u4E14\u653E\u5728 U-Boot \u5206\u533A\u7684\u5C3E\u90E8\u3002 \u901A\u8FC7\u5728 DTS \u4E2D\u6307\u5B9A\u5206\u533A\u540D\u5B57\u5373\u53EF\u8BBF\u95EE\u5230\u3002...","topics/sdk/boot/sdCard-burn.html@@@SDCard \u70E7\u5F55@@@\u82AF\u7247\u652F\u6301\u4ECE SD \u5361\u7684 FAT32 \u6587\u4EF6\u7CFB\u7EDF\u542F\u52A8\u3002\u70E7\u5F55\u4E4B\u524D\uFF0C\u786E\u4FDD\u6EE1\u8DB3\u4EE5\u4E0B\u8981\u6C42\uFF1A \u677F\u5B50 SD \u5361\u63A5\u53E3\uFF0C\u5E76\u4E14\u4F7F\u7528 SDMC1 SD \u5361\u8981\u6C42\u53EA\u6709\u4E00\u4E2A\u5206\u533A SD \u5361\u683C\u5F0F\u5316\u4E3A FAT32 \u6587\u4EF6\u7CFB\u7EDF\uFF0C\u6CE8\u610F\u4E0D\u662F exFAT\u3001\u6216\u8005 FAT16 SD \u5361\u6700\u597D\u4E3A\u4E13\u7528\u5361\uFF0C\u91CC\u9762\u4E0D\u8981\u653E\u7F6E\u592A\u591A\u5176\u4ED6\u6587\u4EF6 \u82AF\u7247\u6CA1\u6709\u70E7\u5F55\u8DF3\u8FC7 SD \u5361\u7684 eFuse \u6267\u884C\u6B65\u9AA4\uFF1A \u62F7\u8D1D\u5728\u7F16\u8BD1\u8F93\u51FA\u76EE\u5F55 (images) \u4E0B\u7684\u4E24\u4E2A\u6587\u4EF6\u5230 SD \u5361...","topics/sdk/boot/signature-verify.html@@@\u7B7E\u540D\u6821\u9A8C@@@U-Boot \u5B98\u65B9\u7684\u4EE3\u7801\uFF0CSPL \u652F\u6301 FIT image \u7684\u7B7E\u540D\u3002\u5982\u679C\u56FA\u4EF6\u4F7F\u7528\u5176\u4ED6\u683C\u5F0F\uFF0C \u9700\u8981\u81EA\u884C\u6DFB\u52A0\u76F8\u5E94\u7684\u6821\u9A8C\u652F\u6301\u3002 FIT Image \u7B7E\u540D\u6821\u9A8C \u8981\u5B9E\u73B0\u9A8C\u8BC1 FIT Image \u7684\u7B7E\u540D\uFF0C\u9700\u8981\u5728\u914D\u7F6E\u4E2D\u6253\u5F00 CONFIG_SPL_FIT_SIGNATURE \u9009\u9879\uFF1A mmc_load_image_raw_sector(); // common/spl/spl_mmc.c |->...","topics/sdk/boot/spi-divers.html@@@SPI@@@SPI \u5728 U-Boot \u4E2D\u4E3B\u8981\u7528\u4E8E\u652F\u6301 SPI NAND/NOR \u5B58\u50A8\u8BBE\u5907\u3002\u76EE\u524D ArtInChip \u5E73\u53F0\u4E0A SPI \u7684\u5B9E\u73B0\u53EA\u652F\u6301\u534A\u53CC\u5DE5\u6A21\u5F0F(Half-duplex)\u3002 \u9A71\u52A8\u6846\u67B6 U-Boot \u9A71\u52A8\u6A21\u578B\u652F\u6301 SPI\uFF0CArtInChip \u5E73\u53F0\u4E2D SPI \u9A71\u52A8\u57FA\u4E8E\u8BE5\u6846\u67B6\u8FDB\u884C\u5B9E\u73B0\u3002 \u76F8\u5173\u914D\u7F6E\u4E3A\uFF1A CONFIG_DM_SPI CONFIG_SPI CONFIG_SPL_SPI_SUPPORT...","topics/sdk/boot/spi-nand-drivers.html@@@SPI NAND@@@\u672C\u7AE0\u8282\u63CF\u8FF0 SPI NAND \u9A71\u52A8\u7684\u76F8\u5173\u914D\u7F6E\u548C\u4F7F\u7528\u3002 \u9A71\u52A8\u6846\u67B6 SPI NAND \u7684\u64CD\u4F5C\u57FA\u4E8E SPI \u547D\u4EE4\uFF0C\u9664\u4E86\u4E2A\u522B\u578B\u53F7\u53EF\u80FD\u6709\u4E0D\u540C\u4E4B\u5916\uFF0C\u57FA\u672C\u4E0A\u64CD\u4F5C\u548C\u884C\u4E3A\u90FD\u662F\u4E00\u81F4\u7684\uFF0C \u6240\u4EE5 U-Boot \u4E2D\u5DF2\u7ECF\u5B9E\u73B0\u4E86\u5171\u7528\u7248\u672C\u7684 SPI NAND \u9A71\u52A8\uFF0C\u5177\u4F53\u5668\u4EF6\u53EA\u9700\u8981\u6DFB\u52A0\u5C0F\u90E8\u5206\u9A71\u52A8\u4EE3\u7801\u5373\u53EF\u3002 \u76F8\u5173\u914D\u7F6E\uFF1A CONFIG_MTD CONFIG_DM_SPI CONFIG_SPI_MEM...","topics/sdk/boot/spi-nor-drivers.html@@@SPI NOR@@@\u672C\u7AE0\u8282\u63CF\u8FF0 SPI NOR \u9A71\u52A8\u7684\u76F8\u5173\u914D\u7F6E\u548C\u4F7F\u7528\u3002 \u9A71\u52A8\u6846\u67B6 \u5F85\u5B8C\u5584 \u9A71\u52A8\u63A5\u53E3 \u5F85\u5B8C\u5584 \u521D\u59CB\u5316\u548C\u8BFB\u5199 \u5F85\u5B8C\u5584 \u6DFB\u52A0\u65B0\u5668\u4EF6 \u5F85\u5B8C\u5584...","topics/sdk/boot/spl-boot-procedure.html@@@\u542F\u52A8\u6D41\u7A0B@@@\u7406\u89E3 SPL \u7684\u542F\u52A8\u6D41\u7A0B\uFF0C\u5173\u952E\u662F\u8BBE\u5907\u6811\uFF0C\u8BBE\u5907\u9A71\u52A8\u6A21\u578B\u3002\u5173\u4E8E\u8BBE\u5907\u6811\uFF0C\u8BF7\u67E5\u770B\u8BBE\u5907\u6811\u76F8\u5173\u7AE0\u8282\uFF0C\u8BBE\u5907\u9A71\u52A8\u6A21\u578B\u7684\u4ECB\u7ECD\u5982\u4E0B\uFF1A uboot \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u6A21\u578B uclass <\u2013> uclass_driver <\u2013> udevice <\u2013> driver <\u2013> hardware uclass \u8868\u793A\u7BA1\u7406\u67D0\u4E00\u4E2A\u7C7B\u522B\u4E0B\u7684\u6240\u6709 device; uclass_driver \u8868\u793A\u5BF9\u5E94 uclass \u7684 ops \u96C6\u5408\u3002...","topics/sdk/boot/spl-program-stage.html@@@SPL \u9636\u6BB5@@@ArtInChip \u5E73\u53F0\u4E0A\u7684 SPL (Secondary Program Loader) \u662F\u7B2C\u4E00\u7EA7\u5F15\u5BFC\u7A0B\u5E8F (FSBL, First Stage Boot Loader)\uFF0C \u540C\u65F6\u4E5F\u662F\u7B2C\u4E8C\u7EA7\u7A0B\u5E8F\u52A0\u8F7D\u5668\u3002 BROM \u2192 SPL \u2192 U-Boot \u2192 Kernel SPL \u8FD0\u884C\u5728 SRAM \u4E2D\uFF0C\u5176\u6700\u91CD\u8981\u7684\u4EFB\u52A1\u6709\u4E24\u4E2A\uFF1A \u5B8C\u6210 DDR\uFF0C\u5E76\u4E14\u4F7F\u80FD Cache \u52A0\u8F7D\u548C\u9A8C\u8BC1 U-Boot...","topics/sdk/boot/uboot-aic-boot-image-format.html@@@AIC \u542F\u52A8\u955C\u50CF\u683C\u5F0F@@@ArtInChip BROM \u6240\u4F7F\u7528\u7684\u542F\u52A8\u955C\u50CF\u683C\u5F0F\u3002 \u8868 1 . AIC \u542F\u52A8\u955C\u50CF\u683C\u5F0F \u6570\u636E\u533A\u57DF \u6570\u636E\u5206\u5757 \u5B57\u6BB5 \u5B57\u8282 \u63CF\u8FF0 Signed Area Block1 (256B) Magic 4 \u7279\u5F81\u5B57\u7B26\u4E32\uFF0C\u56FA\u5B9A\u4E3A \u201DAIC \u201D Checksum 4 32 bit \u7D2F\u52A0\u548C\u6821\u9A8C\u7684\u6821\u9A8C\u503C\u3002\u5B89\u5168\u542F\u52A8\u65B9\u6848\u8BBE\u4E3A 0. Header version 4 \u672C\u6587\u4EF6\u5934\u7ED3\u6784\u7684\u7248\u672C\u53F7\uFF0C\u5F53\u524D\u7248\u672C\u4E3A v1.0...","topics/sdk/boot/uboot-chapter-image-burn.html@@@\u955C\u50CF\u70E7\u5F55@@@\u672C\u7AE0\u8282\u4E3B\u8981\u63CF\u8FF0 ArtInChip \u5E73\u53F0\u4E0A\u652F\u6301\u7684\u955C\u50CF\u5347\u7EA7\u548C\u70E7\u5F55\u65B9\u5F0F\u3002...","topics/sdk/boot/uboot-clock-drivers.html@@@Clock@@@\u672C\u7AE0\u8282\u63CF\u8FF0 ArtInChip \u5E73\u53F0\u7684 U-Boot \u65F6\u949F\u914D\u7F6E\u76F8\u5173\u5185\u5BB9\u3002 \u9A71\u52A8\u6846\u67B6 U-Boot \u9A71\u52A8\u6A21\u578B\u652F\u6301 Clock\uFF0CArtInChip \u5E73\u53F0\u4E2D Clock \u9A71\u52A8\u57FA\u4E8E\u8BE5\u6846\u67B6\u8FDB\u884C\u5B9E\u73B0\u3002 \u76F8\u5173\u914D\u7F6E\u4E3A\uFF1A CONFIG_CLK CONFIG_CLK_ARTINCHIP CONFIG_CLK_ARTINCHIP_CMU CONFIG_SPL_CLK_ARTINCHIP...","topics/sdk/boot/uboot-cmd-stage.html@@@\u547D\u4EE4\u884C\u9636\u6BB5@@@board_init_r \u51FD\u6570\u6700\u540E\u8FDB\u5165 run_main_loop \u6267\u884C Autoboot \u547D\u4EE4\u6216\u8005\u8FDB\u5165\u63A7\u5236\u53F0\u3002 board_init_r(); // common/board_r.c |-> run_main_loop(); // common/board_r.c |-> main_loop(); // common/main.c |-> cli_init(); // \u521D\u59CB\u5316 command...","topics/sdk/boot/uboot-code-relocate.html@@@\u4EE3\u7801\u91CD\u5B9A\u4F4D@@@\u901A\u5E38\u5185\u6838\u7684\u4EE3\u7801\u6BB5\u653E\u5728 DRAM \u7684\u5F00\u59CB\u4F4D\u7F6E\uFF0CU-Boot \u7684\u4EE3\u7801\u4F4D\u7F6E\u653E\u5230 DRAM \u7684\u672B\u7AEF\u3002 \u4F46\u662F\u7531\u4E8E\u4E0D\u540C\u9879\u76EE\u6240\u7528\u7684 DRAM \u5927\u5C0F\u4E0D\u4E00\u81F4\uFF0C\u4E3A\u4E86\u65B9\u4FBF\uFF0C\u5C06 U-Boot \u7684\u94FE\u63A5\u5730\u5740\u4E5F\u5B9A\u4E49\u5728 DRAM \u6BD4\u8F83\u524D\u9762\u7684\u56FA\u5B9A\u4F4D\u7F6E\u3002\u5728\u52A0\u8F7D U-Boot \u521D\u59CB\u5316\u5B8C DRAM \u4E4B\u540E\uFF0CU-Boot \u8BFB\u53D6\u5F53\u524D\u5E73\u53F0\u7684 DRAM \u5927\u5C0F\uFF0C \u7136\u540E\u5728\u52A0\u8F7D Kernel \u4E4B\u524D\u5C06\u81EA\u8EAB\u4EE3\u7801\u6BB5\u548C\u6570\u636E\u6BB5\u7B49\u4FE1\u606F\u91CD\u5B9A\u4F4D\u5230 DRAM...","topics/sdk/boot/uboot-core.html@@@\u542F\u52A8\u5185\u6838@@@\u672C\u7AE0\u8282\u4E3B\u8981\u4ECB\u7ECD\u4E0E\u542F\u52A8\u5185\u6838\u76F8\u5173\u7684\u547D\u4EE4\u548C\u5904\u7406\u6D41\u7A0B\u3002...","topics/sdk/boot/uboot-driver-support.html@@@\u9A71\u52A8\u652F\u6301@@@...","topics/sdk/boot/uboot-dts.html@@@DTS@@@ArtInChip \u5E73\u53F0\u4E0A\uFF0CU-Boot \u4E0E Kernel \u5171\u7528\u4E00\u4EFD DTS \u914D\u7F6E\uFF0C\u76EE\u524D DTB \u7684\u7F16\u8BD1\u653E\u5728 U-Boot \u9636\u6BB5\u8FDB\u884C\u3002\u9879\u76EE\u76F8\u5173\u7684 DTS \u6587\u4EF6\u5B58\u653E\u8DEF\u5F84\uFF1A target/ IC /common/*.dtsi target/ IC / Board /board.dts target/ IC / Board /board-u-boot.dtsi target/ IC / Board...","topics/sdk/boot/uboot-get-param-1601.html@@@\u542F\u52A8\u53C2\u6570\u7684\u83B7\u53D6@@@\u65E0\u8BBA\u662F\u5728 SPL \u8FD8\u662F\u5728 U-Boot \u4E2D\uFF0C\u90FD\u53EF\u4EE5\u901A\u8FC7\u4E0B\u5217\u63A5\u53E3\u83B7\u53D6\u4E0A\u4E00\u7EA7\u5F15\u5BFC\u7A0B\u5E8F\u4F20\u9012\u7684\u53C2\u6570\u3002 enum boot_reason aic_get_boot_reason( void ); enum boot_device aic_get_boot_device( void ); u32 aic_get_boot_time_us( void ); \u76F8\u5173\u7684\u5B9A\u4E49\u53EF\u53C2\u8003\u6587\u4EF6\uFF1A...","topics/sdk/boot/uboot-hardware-env.html@@@\u786C\u4EF6\u8FD0\u884C\u73AF\u5883@@@\u5728 U-Boot SPL \u8FD0\u884C\u4E4B\u524D\uFF0CBROM \u5DF2\u7ECF\u5BF9\u7CFB\u7EDF\u8FDB\u884C\u4E86\u57FA\u672C\u7684\u521D\u59CB\u5316\u3002 \u5BF9\u4E8E\u57FA\u672C\u786C\u4EF6\u6A21\u5757\uFF0C\u5728 CPU \u4E0A\u7535\u65F6\u9ED8\u8BA4\u8FDB\u884C\u521D\u59CB\u5316\uFF0C\u5177\u4F53\u5982\u4E0B\u8868\u6240\u793A\uFF1A \u8868 1 . \u57FA\u672C\u786C\u4EF6\u6A21\u5757\u72B6\u6001 \u540D\u5B57 \u9891\u7387 \u5907\u6CE8 AXI 24 MHz \u9ED8\u8BA4\u4F7F\u80FD AHB 60 MHz \u9ED8\u8BA4\u4F7F\u80FD APB0 24 MHz \u9ED8\u8BA4\u4F7F\u80FD APB1 24 MHz \u9ED8\u8BA4\u4F7F\u80FD CPU 24 MHz \u9ED8\u8BA4\u4F7F\u80FD SRAM 60 MHz \u9ED8\u8BA4\u4F7F\u80FD...","topics/sdk/boot/uboot-image-type.html@@@\u955C\u50CF\u7C7B\u578B@@@\u672C\u8282\u4ECB\u7ECD U-Boot \u4E2D\u6D89\u53CA\u5230\u7684\u5404\u79CD\u955C\u50CF\u7C7B\u578B\u3002 Image Image \u6587\u4EF6\u662F Linux \u7F16\u8BD1\u751F\u6210\u7684\u975E\u538B\u7F29\u955C\u50CF\u6587\u4EF6\uFF0C\u57FA\u4E8E ELF \u6587\u4EF6 vmlinux \u63D0\u53D6\u5F97\u5230\u3002 riscv64-unknown-linux-gnu-objcopy -O binary -O binary -R .note -R .note.gnu.build-id -R .comment -S vmlinux...","topics/sdk/boot/uboot-load-core.html@@@\u52A0\u8F7D\u5185\u6838@@@\u672C\u8282\u4ECB\u7ECD ArtInChip \u5E73\u53F0\u4ECE\u5B58\u50A8\u4ECB\u8D28\u4E2D\u52A0\u8F7D\u5185\u6838\u548C\u542F\u52A8\u7684\u6D41\u7A0B\u3002 U-Boot \u4E2D\u542F\u52A8\u6240\u9700\u7684\u6570\u636E\uFF0C\u4EE5\u53CA\u542F\u52A8\u5185\u6838\u901A\u8FC7\u547D\u4EE4\u884C\u6765\u5B9E\u73B0\uFF0C\u4E00\u7CFB\u5217\u7684\u547D\u4EE4\u7EC4\u6210\u542F\u52A8\u811A\u672C\u3002\u5728 ArtInChip \u7684\u65B9\u6848\u4E2D\uFF0C\u76F8\u5173\u7684\u542F\u52A8\u811A\u672C\u5728 env.txt \u73AF\u5883\u53D8\u91CF\u4E2D\u63D0\u4F9B\uFF0C\u5E76\u4E14\u6700\u7EC8\u7531\u53D8\u91CF autoboot= \u4E32\u5728\u4E00\u8D77\u3002 U-Boot \u5728\u6267\u884C\u81EA\u52A8\u542F\u52A8\u65F6\uFF0C\u9996\u5148\u8BFB\u53D6\u548C\u6267\u884C\u73AF\u5883\u53D8\u91CF bootcmd \u7684\u5185\u5BB9\uFF0C bootcmd \u88AB\u8BBE\u7F6E\u4E3A...","topics/sdk/boot/uboot-load-env-variables.html@@@\u73AF\u5883\u53D8\u91CF\u52A0\u8F7D@@@\u5982\u524D\u9762\u6240\u8FF0\uFF0C\u73AF\u5883\u53D8\u91CF\u7684\u5904\u7406\u6709\u4E24\u4E2A\u9636\u6BB5\uFF1A \u73AF\u5883\u53D8\u91CF\u521D\u59CB \u73AF\u5883\u53D8\u91CF\u8BFB\u53D6 \u5982\u4E0B\u9762\u7684\u8C03\u7528\u6D41\u7A0B\uFF0C env_init() \u5728 board_init_f() \u9636\u6BB5\u6267\u884C\uFF0C\u4F46\u5177\u4F53\u7684\u52A0\u8F7D\u8FC7\u7A0B \u5728 board_init_r() \u9636\u6BB5\u6267\u884C\u3002 reset // arch/riscv/cpu/start.S |-> save_boot_params //...","topics/sdk/boot/uboot-module.html@@@U-Boot@@@\u542F\u52A8\u652F\u6301\u7684\u57FA\u672C\u529F\u80FD\u4EE5\u53CA\u8FD0\u884C\u65F6\u7684\u57FA\u672C\u786C\u4EF6\u73AF\u5883\u3002...","topics/sdk/boot/uboot-parameter.html@@@\u542F\u52A8\u53C2\u6570@@@\u542F\u52A8\u6D41\u7A0B\u5206\u4E3A \u6B63\u5E38\u542F\u52A8 \u548C \u70E7\u5F55\u542F\u52A8 \u3002\u5728\u542F\u52A8\u8FC7\u7A0B\u4E2D\uFF0C\u4E0D\u540C\u7684\u542F\u52A8\u6D41\u7A0B\u4F20\u9012\u7684\u542F\u52A8\u53C2\u6570\u4E5F\u4E0D\u5C3D\u76F8\u540C\u3002\u672C\u8282\u4ECB\u7ECD\u4E86\u5404\u4E2A\u542F\u52A8\u6D41\u7A0B\u4E2D\u4F20\u9012\u7684\u542F\u52A8\u53C2\u6570\u3002 \u6B63\u5E38\u542F\u52A8\u6D41\u7A0B \u56FE 1 . \u6B63\u5E38\u542F\u52A8\u8FC7\u7A0B\u4E2D\u7684\u8DF3\u8F6C \u6B63\u5E38\u542F\u52A8\u8FC7\u7A0B\u8BE6\u7EC6\u4ECB\u7ECD\uFF1A BROM \u6839\u636E\u542F\u52A8\u65B9\u5F0F\u53BB\u5B9A\u4F4D SPL \u4F4D\u7F6E\uFF0C\u521D\u59CB\u5316\u5BF9\u5E94\u975E\u6613\u5931\u6027\u5B58\u50A8\u5668\uFF0C\u52A0\u8F7D SPL \u5230 SRAM \u4E0A\uFF0CBROM \u8FD0\u884C\u5728 M-Mode\u3002 SPL \u88AB\u6267\u884C\u3002 SPL PBP \u90E8\u5206\u4EE3\u7801\u521D\u59CB\u5316...","topics/sdk/boot/uboot-parameters.html@@@\u542F\u52A8\u53C2\u6570\u7684\u4F7F\u7528@@@\u76EE\u524D\u542F\u52A8\u53C2\u6570\u5728\u4E0B\u5217\u60C5\u51B5\u4E0B\u6709\u5E94\u7528\uFF1A \u52A0\u5FEB\u542F\u52A8\u901F\u5EA6 \u5728\u6B63\u5E38\u542F\u52A8\u7684\u5E94\u7528\u573A\u666F\u4E2D\uFF0CBROM \u4ECE eFuse \u4E2D\u83B7\u53D6\u4E86\u5F53\u524D\u7684\u542F\u52A8\u4ECB\u8D28\u3002\u5728 eFuse \u6CA1\u6709\u8BBE\u7F6E\u7684\u60C5\u51B5\u4E0B\uFF0C BROM \u901A\u8FC7\u5C1D\u8BD5\u7684\u65B9\u5F0F\u627E\u5230\u53EF\u542F\u52A8\u7684\u4ECB\u8D28\u548C\u955C\u50CF\u3002SPL \u548C U-Boot \u8FD0\u884C\u65F6\uFF0C\u53EF\u4ECE\u542F\u52A8\u53C2\u6570\u4E2D\u76F4\u63A5\u5F97\u5230\u5F53\u524D\u7684\u542F\u52A8\u8BBE\u5907\u4FE1\u606F\uFF0C \u53EF\u4EE5\u76F4\u63A5\u4ECE\u8BE5\u8BBE\u5907\u4E0A\u8FDB\u884C\u52A0\u8F7D\u56FA\u4EF6\u6570\u636E\uFF0C\u52A0\u5FEB\u542F\u52A8\u901F\u5EA6\u3002 USB \u5347\u7EA7 USB \u5347\u7EA7\u4ECE BROM \u5F00\u59CB\uFF0C\u5E76\u4E14\u5148\u540E\u4ECE\u4E3B\u673A\u4E0B\u8F7D...","topics/sdk/boot/uboot-partition-config.html@@@\u914D\u7F6E\u542F\u52A8\u5206\u533A@@@\u672C\u8282\u63CF\u8FF0\u4E0D\u540C\u5B58\u50A8\u4ECB\u8D28\u7684\u9ED8\u8BA4\u5206\u533A\u65B9\u6848\uFF0C\u4EC5\u6D89\u53CA\u542F\u52A8\u76F8\u5173\u7684\u5206\u533A\u3002\u5E94\u7528\u76F8\u5173\u7684\u5206\u533A\u4E0D\u540C\u7684\u65B9\u6848\u4F1A\u6709\u4E0D\u540C\u7684\u9009\u62E9\uFF0C\u6B64\u8282\u672A\u505A\u63CF\u8FF0\u3002 \u5728 ArtInChip \u7684\u65B9\u6848\u4E2D\uFF1A env.txt \u53EF\u4EE5\u914D\u7F6E\u5206\u533A\u8868\u4FE1\u606F\uFF0C\u5305\u62EC\u5404\u5206\u533A\u5728\u5B58\u50A8\u4ECB\u8D28\u4E2D\u7684\u4F4D\u7F6E\u548C\u5927\u5C0F\u3002 env.txt \u901A\u5E38\u4F4D\u4E8E target/<ic>/common/ \u3002 \u5404\u9879\u76EE\u5BF9\u5E94\u7684 image_cfg.json \u4E2D\u8BBE\u7F6E\u5206\u533A\u8981\u70E7\u5F55\u7684\u5185\u5BB9\u3002 MMC \u5206\u533A\u914D\u7F6E MMC \u5305\u62EC SD...","topics/sdk/boot/uboot-pass-param-1601.html@@@\u542F\u52A8\u53C2\u6570\u7684\u4F20\u9012@@@\u542F\u52A8\u8FC7\u7A0B\u4E2D\uFF0C\u4E0D\u540C\u7684\u542F\u52A8\u6D41\u7A0B\u4F1A\u7528\u5230\u4E0D\u540C\u542F\u52A8\u53C2\u6570\uFF0C\u7528\u4E8E\u5C06\u5F53\u524D\u4E00\u7EA7\u7A0B\u5E8F\u7684\u4FE1\u606F\u4F20\u9012\u7ED9\u4E0B\u4E00\u7EA7\u7A0B\u5E8F\uFF0C \u8F85\u52A9\u4E0B\u4E00\u7EA7\u7A0B\u5E8F\u7684\u6267\u884C\uFF0C\u8BE6\u60C5\u5982\u4E0B\uFF1A BROM \u8DF3\u8F6C\u5230 SPL \u6216\u8005 U-Boot \u65F6\u4F20\u9012\u7684\u53C2\u6570 BROM RISCV \u8DF3\u8F6C\u5230 SPL \u6216\u8005 U-Boot \u65F6\u4F20\u9012\u7684\u53C2\u6570 SPL \u8DF3\u8F6C U-Boot \u65F6\u4F20\u9012\u7684\u53C2\u6570 SPL \u548C U-Boot \u8DF3\u8F6C\u5230\u5185\u6838\u65F6\u4F20\u9012\u7684\u53C2\u6570 \u8868 1 . BROM \u8DF3\u8F6C\u5230 SPL \u6216\u8005...","topics/sdk/boot/uboot-post-init.html@@@\u540E\u521D\u59CB\u5316@@@\u540E\u521D\u59CB\u5316\u9636\u6BB5\u662F\u4EE3\u7801\u91CD\u5B9A\u4F4D\u4E4B\u540E\u6267\u884C\u7684\u521D\u59CB\u5316\u6D41\u7A0B\uFF0C\u7531\u4E0B\u9762\u7684 board_init_r \u5F00\u59CB\u3002 _start // arch/riscv/cpu/start.S |-> save_boot_params // arch/riscv/mach-artinchip/lowlevel_init.S |-> ... |-> board_init_f(); // common/board_f.c |->...","topics/sdk/boot/uboot-pre-init.html@@@\u524D\u521D\u59CB\u5316@@@U-Boot \u7684\u524D\u521D\u59CB\u5316\u662F\u6307\u6267\u884C\u4EE3\u7801\u91CD\u5B9A\u4F4D\u4E4B\u524D\u7684\u521D\u59CB\u5316\uFF0C\u6B64\u65F6 U-Boot \u5728 DRAM \u7684\u524D\u7AEF\u7A7A\u95F4\u6267\u884C\u3002 \u524D\u521D\u59CB\u5316\u5206\u4E3A\u4E24\u4E2A\u9636\u6BB5\uFF1A \u82AF\u7247\u67B6\u6784\u76F8\u5173\u7684\u521D\u59CB\u5316\u4EE3\u7801 \u677F\u5B50\u76F8\u5173\u7684\u524D\u521D\u59CB\u5316\u4EE3\u7801 \u9636\u6BB5\u4E00\uFF1A \u82AF\u7247\u67B6\u6784\u76F8\u5173\u521D\u59CB\u5316 \u8FD9\u4E2A\u9636\u6BB5\u4E3B\u8981\u662F\u5BF9 CPU \u8FDB\u884C\u4E86\u57FA\u672C\u7684\u521D\u59CB\u5316\uFF0C\u5E76\u4E14\u5C06\u4E0A\u4E00\u7EA7\u5F15\u5BFC\u7A0B\u5E8F\u4F20\u9012\u8FC7\u6765\u7684\u53C2\u6570\u4FDD\u5B58\u8D77\u6765\u3002 ArtInChip \u5E73\u53F0\u4E0A\u5B9E\u73B0\u4E86\u5BF9\u5E94\u7684 save_boot_params...","topics/sdk/boot/uboot-riscv-spl.html@@@RISCV SPL@@@SPL BSS \u7684\u914D\u7F6E CONFIG_SPL_TEXT_BASE= 0x103100 CONFIG_SPL_SIZE_LIMIT= 0x10000 # define CONFIG_SPL_MAX_SIZE (CONFIG_SPL_SIZE_LIMIT) # define CONFIG_SPL_STACK (_SRAM_BASE + _SRAM_SIZE) # define...","topics/sdk/boot/uboot-signature-verify.html@@@\u5B89\u5168\u6821\u9A8C@@@U-Boot \u539F\u751F\u4EE3\u7801\u4EC5\u652F\u6301 FIT Image \u7684\u7B7E\u540D\u6821\u9A8C\u3002 \u5728 do_bootm_states() \u7684 BOOTM_STATE_FINDOS \u9636\u6BB5\uFF0C\u7A0B\u5E8F\u68C0\u67E5\u5F53\u524D\u5185\u6838\u955C\u50CF\u7684\u683C\u5F0F\uFF0C \u5982\u679C\u662F FIT Image \u683C\u5F0F\uFF0C\u5219\u6839\u636E FIT Image \u7684\u914D\u7F6E\uFF0C\u52A0\u8F7D\u5BF9\u5E94\u7684\u5185\u6838\u955C\u50CF\u3002 bootm_find_os(); // common/bootm.c |-> boot_get_kernel(); //...","topics/sdk/boot/uboot-stage.html@@@U-Boot \u9636\u6BB5@@@U-Boot \u5728 ArtInChip \u5E73\u53F0\u4E0A\u627F\u62C5\u4E24\u4E2A\u529F\u80FD\u89D2\u8272\uFF1A \u5F15\u5BFC\u5185\u6838 \u955C\u50CF\u70E7\u5F55 \u672C\u7AE0\u91CD\u70B9\u63CF\u8FF0 U-Boot \u8FD9\u4E00\u7EA7\u5F15\u5BFC\u7A0B\u5E8F\u7684\u4E3B\u8981\u542F\u52A8\u6D41\u7A0B\u4EE5\u53CA\u5728\u4E0D\u540C\u542F\u52A8\u4ECB\u8D28\u4E0B\u7684\u5904\u7406\u3002 \u955C\u50CF\u70E7\u5F55\u529F\u80FD\u5C06\u5728 \u955C\u50CF\u70E7\u5F55 \u7AE0\u8282\u8FDB\u884C\u63CF\u8FF0\u3002...","topics/sdk/boot/usb-burn.html@@@U \u76D8\u5347\u7EA7@@@\u82AF\u7247\u652F\u6301\u901A\u8FC7 U \u76D8\u7684 FAT32 \u6587\u4EF6\u7CFB\u7EDF\u8FDB\u884C\u5347\u7EA7\u3002\u70E7\u5F55\u524D\u987B\u6EE1\u8DB3\u4EE5\u4E0B\u8981\u6C42\uFF1A \u5BF9\u82AF\u7247\u4E0E\u677F\u5B50\u7684\u8981\u6C42\uFF1A \u677F\u5B50\u4F7F\u7528 USB \u63A5\u53E3\u3002 \u82AF\u7247\u70E7\u5F55\u8FC7\u955C\u50CF\uFF0C\u4E14\u955C\u50CF\u652F\u6301 U \u76D8\u5347\u7EA7 \u5BF9 U \u76D8 \u5361\u7684\u8981\u6C42\uFF1A U \u76D8\u8981\u6C42\u53EA\u6709\u4E00\u4E2A\u5206\u533A U \u76D8\u683C\u5F0F\u5316\u4E3A FAT32 \u6587\u4EF6\u7CFB\u7EDF\uFF0C\u6CE8\u610F\u4E0D\u662F exFAT\u3001\u6216\u8005 FAT16 U \u76D8\u6700\u597D\u4E3A\u4E13\u7528 U \u76D8\uFF0C\u91CC\u9762\u4E0D\u8981\u653E\u7F6E\u592A\u591A\u5176\u4ED6\u6587\u4EF6 \u6267\u884C\u6B65\u9AA4\uFF1A \u62F7\u8D1D\u5728\u7F16\u8BD1\u8F93\u51FA\u76EE\u5F55(images)...","topics/sdk/boot/userid-burn-common-issues.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/boot/userid-burn-test.html@@@\u6D4B\u8BD5\u6307\u5357@@@U-Boot \u6D4B\u8BD5\u547D\u4EE4 U-Boot \u4E2D\u901A\u8FC7\u547D\u4EE4\u884C\u63D0\u4F9B\u4E86 UserID \u7684\u589E\u5220\u6539\u67E5\u7B49\u64CD\u4F5C\uFF0C\u5177\u4F53\u547D\u4EE4\u7684\u4F7F\u7528\u53EF\u901A\u8FC7 help \u547D\u4EE4\u67E5\u770B\uFF1A userid help \u4ECE UserID \u5206\u533A\u52A0\u8F7D\u548C\u521D\u59CB\u5316 UserID \u6570\u636E\uFF1A userid init \u67E5\u770B\u5F53\u524D\u7684 ID \u5217\u8868\uFF1A userid list \u5199\u5165\u65B0 ID\uFF1A userid writehex name offset data \u793A\u4F8B\uFF1A userid...","topics/sdk/boot/userid-burn.html@@@UserID \u70E7\u5F55@@@...","topics/sdk/boot/userid-confuguration.html@@@\u4F7F\u7528\u914D\u7F6E@@@U-Boot \u7F16\u8BD1\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 uboot \u914D\u7F6E\u754C\u9762\uFF1A make uboot-menuconfig \u52FE\u9009\u4E0B\u5217\u9009\u9879\u4F7F\u80FD UserID \u529F\u80FD\uFF1A [*] UserID support for ArtInChip ---> \u786E\u8BA4\u76F8\u5173\u7684 UserID \u5206\u533A\u4F4D\u7F6E\u4E0E\u5B9E\u9645\u5339\u914D\uFF1A --- UserID support for ArtInChip Location of UserID...","topics/sdk/boot/userid-intro.html@@@\u6A21\u5757\u4ECB\u7ECD@@@\u529F\u80FD\u7B80\u4ECB UserID \u662F\u6307\u5382\u5546\u5728\u91CF\u4EA7\u8FC7\u7A0B\u4E2D\u70E7\u5F55\u7684\u81EA\u5B9A\u4E49 ID \u6570\u636E\uFF0C\u6BD4\u5982\uFF1A SN \u5E8F\u5217\u53F7 MAC \u5730\u5740 \u5176\u4ED6\u901A\u8FC7\u6307\u5B9A\u540D\u5B57\u7D22\u5F15\u7684\u6570\u636E \u8FD9\u4E9B\u4FE1\u606F\u53EF\u4EE5\u5728\u5DE5\u5382\u751F\u4EA7\u8FC7\u7A0B\u4E2D\u4F7F\u7528 AiBurnID \u5DE5\u5177\u8FDB\u884C\u70E7\u5F55\uFF0C\u5E76\u4E14\u5728\u5B58\u50A8\u5728 \u201Cuserid\u201D \u5206\u533A\u3002 UserID \u5206\u533A\u652F\u6301\u5728\u70E7\u5F55\u5B8C\u6210\u4E4B\u540E\u8FDB\u884C\u9501\u5B9A\u529F\u80FD\uFF0C\u4E00\u65E6\u9501\u5B9A\uFF0C\u542F\u52A8\u8FC7\u7A0B\u4E2D\u4E0D\u518D\u8FDB\u5165 UserID \u70E7\u5F55\u6A21\u5F0F\u3002 \u6CE8\u89E3 ID \u540D\u5B57\u53EF\u4EE5\u81EA\u5B9A\u4E49\uFF0C\u4F46\u662F\u4E0D\u80FD\u91CD\u590D ID...","topics/sdk/bringup/bringup-back-light-config.html@@@\u80CC\u5149\u914D\u7F6E@@@\u5982\u679C\u6CA1\u6709\u8C03\u8282\u80CC\u5149\u4EAE\u5EA6\u9700\u6C42\uFF0C\u4EC5\u4EC5\u662F\u4EAE\u6216\u9ED1\u5C4F\uFF0C\u5219\u7528 GPIO \u63A7\u5236\u8F83\u4E3A\u7B80\u5355\uFF0C\u53EA\u9700\u8981\u5728 dts panel \u8282\u70B9\u4E2D\u4E00\u4E2A\u5730\u65B9\u914D\u7F6E\u597D\u5C31\u53EF\u4EE5\uFF0C\u5982\u4E0B\uFF1A \u6CE8\uFF1A \u5C4F\u5E55\u7684\u8C03\u8BD5\u5C3D\u91CF\u5728 kernel \u4E2D\u5B8C\u6210\uFF0C\u7136\u540E\u518D\u79FB\u690D\u5230 uboot \u4E2D\u3002 panel_xxx { compatible = "artinchip,aic-general-lvds-panel" ; status = "okay" ; enable-gpios...","topics/sdk/bringup/bringup-boot.html@@@\u5237\u673A@@@\u4F7F\u7528\u5355\u673A\u5DE5\u5177 AiBurn \u53EF\u4EE5\u8FDB\u884C\u5237\u673A\u64CD\u4F5C\u3002\u5B89\u88C5 AiBurn \u5DE5\u5177\u65F6\uFF0C\u9ED8\u8BA4\u4F1A\u5B89\u88C5\u597D\u8BBE\u5907\u7684\u9A71\u52A8\uFF0C\u4E00\u822C\u4E0D\u7528\u7279\u6B8A\u5904\u7406\u3002\u5237\u673A\u6D41\u7A0B\u8BE6\u7EC6\u63CF\u8FF0\u5982\u4E0B\uFF1A \u9009\u62E9\u56FA\u4EF6\u3002 \u7F16\u8BD1\u7CFB\u7EDF\u4F1A\u6839\u636E\u5B58\u50A8\u4ECB\u8D28\u7684\u4E0D\u540C\u800C\u751F\u6210\u4E0D\u540C\u540D\u79F0\u7684\u56FA\u4EF6\uFF0C\u9700\u8981\u6839\u636E\u5F00\u53D1\u677F\u578B\u53F7\u9009\u62E9\u6B63\u786E\u7684\u56FA\u4EF6\uFF0C\u8BE6\u60C5\u53EF\u67E5\u770B\u8BE6\u60C5\u53EF\u67E5\u770B\u3002 \u6CE8\uFF1A \u5728\u5DE5\u7A0B\u76EE\u5F55\u4E0B\u7684 image_cfg.json \u6587\u4EF6\u4E2D\uFF0C\u53EF\u4EE5\u5B9A\u4E49\u6587\u4EF6\u7248\u672C\u53F7\u4FE1\u606F\u3002 \u8FDB\u5165 \u5237\u673A\u6A21\u5F0F \u3002 PC \u73AF\u5883\u76D1\u6D4B USB...","topics/sdk/bringup/bringup-debug-ports-configuration.html@@@\u8C03\u8BD5\u914D\u7F6E@@@\u8C03\u8BD5\u7AEF\u53E3\u5728 Bringup \u8FC7\u7A0B\u4E2D\u975E\u5E38\u91CD\u8981\uFF0C\u56E0\u6B64\u6709\u5FC5\u8981\u5148\u914D\u7F6E\u597D\u8C03\u8BD5\u4FE1\u606F\u3002 \u8C03\u8BD5\u7AEF\u53E3\u5305\u62EC\u4EE5\u4E0B\u51E0\u4E2A\u914D\u7F6E\u53C2\u8003\uFF0C\u4EE5 demo128_nand \u5DE5\u7A0B\u4E3A\u4F8B\uFF0C \u4F7F\u7528 uart0 \u7AEF\u53E3\u4F5C\u4E3A\u8C03\u8BD5\u53E3\uFF1A board.dts &uart0 { pinctrl-names = "default" ; pinctrl- 0 = <&uart0_pins_a>; //\u5728...","topics/sdk/bringup/bringup-demo.html@@@Demo@@@LVGL \u7F16\u8BD1 \u5982\u679C\u8981\u8FD0\u884C LVGL demo\uFF1A \u5728 Luban \u7CFB\u7EDF\u901A\u8FC7 make m \u547D\u4EE4\u6253\u5F00 Luban \u914D\u7F6E\u754C\u9762\uFF1A ArtInChip packages Sample code [*] test-lvgl ---> \u6253\u5F00 test-lvgl \u540E\u9700\u8981\u7684\u4E09\u65B9\u5E93\u4F1A\u81EA\u52A8\u52A0\u8F7D\u548C\u7F16\u8BD1\u3002 \u9009\u62E9\u4EE5\u4E0B\u4EFB\u610F\u65B9\u5F0F\u8FD0\u884C\u4E0B\u5217\u4E0D\u540C\u7684\u811A\u672C\uFF1A \u81EA\u52A8\u8FD0\u884C\uFF1A\u811A\u672C\u4E3A /etc/init.d/S00lvgl \u624B\u52A8\u8FD0\u884C\uFF1A\u811A\u672C\u4E3A...","topics/sdk/bringup/bringup-display-debug-guide.html@@@\u5C4F\u5E55\u8C03\u8BD5@@@\u5C4F\u5E55\u7684\u8C03\u8BD5\u5C3D\u91CF\u5728 kernel \u4E2D\u5B8C\u6210\uFF0C\u7136\u540E\u518D\u79FB\u690D\u5230 uboot \u4E2D\u3002...","topics/sdk/bringup/bringup-display-screen-configuration.html@@@\u5C4F\u5E55\u914D\u7F6E@@@...","topics/sdk/bringup/bringup-ic-configuration.html@@@IC \u914D\u7F6E@@@D21x \u662F\u4E00\u4E2A IC \u7CFB\u5217\uFF0C \u662F\u4E0D\u540C\u7684\u5F15\u811A\u6570\u548C\u4E0D\u540C\u7684 ddr \u5BB9\u91CF\u7684\u7EC4\u5408\uFF0C\u56E0\u6B64\u5728\u8FDB\u884C Bringup \u7684\u65F6\u5019\u8981\u786E\u4FDD\u914D\u7F6E\u7684\u6B63\u786E\u3002 \u5185\u5B58\u914D\u7F6E \u578B\u53F7\u533A\u5206 D21XXB\uFF1A64M ddr2\uFF0C\u8B6C\u5982 D211BB D21XXC\uFF1A128M ddr3\uFF0C \u8B6C\u5982 D211BC, D213EC \u6CE8\uFF1A \u76EE\u524D SDK \u53EF\u4EE5\u81EA\u52A8 turning ddr \u7684\u578B\u53F7\u5E76\u8FDB\u884C\u521D\u59CB\u5316\uFF0C\u4F46\u5728 board.dts...","topics/sdk/bringup/bringup-lvds-display-config.html@@@LVDS@@@LVDS \u5C4F\u7684\u8C03\u8BD5\u548C RGB \u7C7B\u4F3C\uFF0C\u53EA\u9700\u8981\u628A\u89C4\u683C\u4E66\u4E2D\u6240\u63CF\u8FF0\u7684\u65F6\u5E8F\u548C\u89C4\u683C\u53C2\u6570\u52A0\u5165\u76F8\u5E94\u7684\u914D\u7F6E\u6587\u4EF6\u5373\u53EF\uFF0C\u4E5F\u4E0D\u9700\u8981\u989D\u5916\u7684\u9A71\u52A8\u7A0B\u5E8F\u3002 uboot \u914D\u7F6E \u5728 Luban \u6839\u76EE\u5F55\u4E0B\u6267\u884C make um \uFF0C\u8FDB\u5165 uboot \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u4F7F\u80FD\u663E\u793A\u6A21\u5757\u9A71\u52A8\uFF1A Device Drivers Graphics support ArtInChip Graphics ---> [*] Enable ArtInChip...","topics/sdk/bringup/bringup-memory-config.html@@@\u5B58\u50A8\u914D\u7F6E@@@\u5B58\u50A8\u914D\u7F6E\u662F\u7F16\u8BD1\u7684\u56FA\u4EF6\u662F\u5426\u53EF\u5237\u673A\u7684\u5173\u952E\u6B65\u9AA4\uFF0C\u4F46\u5B58\u50A8\u7684\u66F4\u6362\u8981\u4FEE\u6539\u7684\u5730\u65B9\u8F83\u591A\uFF0C\u5EFA\u8BAE\u6309\u7167\u73B0\u6709\u5DE5\u7A0B\u4EFF\u5199\u9700\u8981 Bringup \u7684\u5F00\u53D1\u677F\u3002 SPI NAND \u5B58\u50A8\u914D\u7F6E SPI NAND \u5B58\u50A8\u914D\u7F6E\u6B65\u9AA4\u5982\u4E0B\uFF1A \u914D\u7F6E U-Boot \u4EE5\u652F\u6301\u7279\u5B9A\u7684 SPI NAND \u578B\u53F7\uFF0C\u786E\u8BA4\u5F00\u53D1\u677F\u7684\u578B\u53F7\u88AB\u9009\u4E2D\u652F\u6301\u3002 \u6CE8\uFF1A kernel \u5206\u533A\u6BD4\u8F83\u5927\uFF0C\u9ED8\u8BA4\u6253\u5F00\u4E86 SDK \u652F\u6301\u7684\u6240\u6709\u578B\u53F7\uFF0C\u4E0D\u7528\u9009\u62E9\u3002 \u67E5\u770B...","topics/sdk/bringup/bringup-mipi-display-config.html@@@MIPI@@@\u6BCF\u4E00\u6B3E MIPI \u5C4F\u90FD\u9700\u8981\u4E00\u4E2A\u72EC\u7ACB\u7684\u9A71\u52A8\u7A0B\u5E8F\uFF0C\u56E0\u6B64\u8C03\u8BD5 MIPI \u5C4F\u65F6\uFF0C\u4E0D\u4EC5\u9700\u8981\u5728 DTS \u4E2D\u8BBE\u7F6E\u53C2\u6570\uFF0C\u8FD8\u9700\u8981\u5728 kernel \u548C uboot \u4E2D\u6DFB\u52A0\u5C4F\u5E55\u6240\u5BF9\u5E94\u7684\u9A71\u52A8\uFF1A uboot \u914D\u7F6E \u5728 Luban \u6839\u76EE\u5F55\u4E0B\u6267\u884C make um \uFF0C\u8FDB\u5165 uboot \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u4F7F\u80FD\u663E\u793A\u6A21\u5757\u9A71\u52A8\uFF1A Device Drivers Graphics support ArtInChip Graphics --->...","topics/sdk/bringup/bringup-rgb-display-config.html@@@RGB@@@\u914D\u7F6E Uboot \u5728 Luban \u6839\u76EE\u5F55\u4E0B\u6267\u884C make um \uFF0C\u8FDB\u5165 uboot \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u4F7F\u80FD\u663E\u793A\u6A21\u5757\u9A71\u52A8\uFF1A Device Drivers Graphics support ArtInChip Graphics ---> [*] Enable ArtInChip Video Support [*] ArtInChip display rgb support [ ] ArtInChip...","topics/sdk/bringup/chapter-bringup.html@@@BringUp@@@\u5728\u786C\u4EF6\u4E0A\u7535\u540E\u5FEB\u901F\u521D\u59CB\u5316\u7CFB\u7EDF\uFF0C\u4E3A\u64CD\u4F5C\u7CFB\u7EDF\u7684\u542F\u52A8\u51C6\u5907\u597D\u5FC5\u8981\u7684\u786C\u4EF6\u73AF\u5883\u3002...","topics/sdk/bringup/lite-bringup-console.html@@@\u8C03\u8BD5\u914D\u7F6E@@@BootLoader \u548C RT-Thread \u5747\u7528\u5230\u8C03\u8BD5\u7AEF\u53E3\u3002\u5728 Bringup \u8FC7\u7A0B\u4E2D\uFF0C\u6B63\u786E\u914D\u7F6E\u8C03\u8BD5\u7AEF\u53E3\u81F3\u5173\u91CD\u8981\uFF0C\u53EF\u4EE5\u5E2E\u52A9\u5F00\u53D1\u8005\u5FEB\u901F\u53D1\u73B0\u95EE\u9898\u7684\u6839\u672C\u539F\u56E0\uFF0C\u4ECE\u800C\u5FEB\u901F\u89E3\u51B3\u95EE\u9898\u3002 \u4EE5 d21x demo128_nand \u5DE5\u7A0B\u4E3A\u4F8B\uFF0C \u4F7F\u7528 uart0 \u7AEF\u53E3\u4F5C\u4E3A\u8C03\u8BD5\u53E3\uFF0C\u8BE6\u7EC6\u914D\u7F6E\u6D41\u7A0B\u5982\u4E0B\uFF1A \u901A\u8FC7 list \u547D\u4EE4\u67E5\u770B\u6240\u6709\u53EF\u7528\u7684\u914D\u7F6E\uFF0C\u5305\u62EC BootLoader \u548C RT-Thread\u3002 Built-in...","topics/sdk/bringup/lite-bringup-display.html@@@\u5C4F\u5E55\u914D\u7F6E@@@\u5C4F\u5E55\u7684\u8C03\u8BD5\u5C3D\u91CF\u5728 RT-Thread \u4E2D\u5B8C\u6210\uFF0C\u7136\u540E\u518D\u79FB\u690D\u5230 Bootloader \u4E2D\u3002 RGB \u8C03\u8BD5 RGB \u5C4F\u65F6\uFF0C\u4EC5\u9700\u5728\u76F8\u5E94\u7684\u914D\u7F6E\u6587\u4EF6\u4E2D\u52A0\u5165\u89C4\u683C\u4E66\u63CF\u8FF0\u7684\u65F6\u5E8F\u548C\u89C4\u683C\u53C2\u6570\uFF0C\u65E0\u9700\u6DFB\u52A0\u989D\u5916\u7684\u9A71\u52A8\u7A0B\u5E8F\u3002\u5177\u4F53\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C me \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u9009\u62E9\u663E\u793A\u63A5\u53E3 Display RGB interface \uFF1A Board options...","topics/sdk/bringup/lite-bringup-prepare.html@@@\u51C6\u5907\u5DE5\u4F5C@@@\u4E3A\u4E86\u8BA9\u540E\u7EED\u7684\u5F00\u53D1\u5DE5\u4F5C\u66F4\u4FBF\u6377\uFF0C\u5728\u5F00\u59CB\u8FDB\u884C\u5F00\u53D1\u677F Bringup \u4E4B\u524D\uFF0C\u9700\u505A\u597D\u4E0B\u5217\u76F8\u5173\u51C6\u5907\u5DE5\u4F5C\u3002 \u6CE8\uFF1A \u7F16\u8BD1\u73AF\u5883\u7684\u642D\u5EFA\u53EF\u4EE5\u53C2\u8003 SDK \u7F16\u8BD1 \u3002 \u521B\u5EFA Git \u4ED3\u5E93 \u5982\u679C\u4F7F\u7528\u4E86 git clone \u83B7\u53D6\u7684\u4EE3\u7801\uFF0C\u5219\u8868\u793A\u5DF2\u7ECF\u5B58\u5728 Git \u4ED3\u5E93\uFF0C\u53EF\u4EE5\u7565\u8FC7\u6B64\u6B65\u3002 \u5982\u679C\u4E0D\u662F\u76F4\u63A5\u4E0B\u8F7D\u7684\u4EE3\u7801\uFF0C\u5219\u9700\u8981\u624B\u52A8\u521B\u5EFA\u4E00\u4E0B\u672C\u5730 Git \u4ED3\u5E93\uFF0C\u5177\u4F53\u64CD\u4F5C\u5982\u4E0B\uFF1A sudo apt-get install git //\u5B89\u88C5 Git...","topics/sdk/bringup/lite-bringup-ram.html@@@\u5185\u5B58\u914D\u7F6E@@@Luban-Lite SDK \u652F\u6301\u591A\u4E2A\u82AF\u7247\u5E73\u53F0\uFF0C\u800C\u5404\u4E2A\u5E73\u53F0\u7684\u5185\u5B58\u79CD\u7C7B\u548C\u5185\u5B58\u5927\u5C0F\u4E5F\u4E0D\u540C\uFF0C\u6B63\u786E\u7684\u8FDB\u884C\u5185\u5B58\u914D\u7F6E\u4F1A\u4F7F\u7CFB\u7EDF\u8FD0\u884C\u66F4\u9AD8\u6548\u3002 \u9075\u7167\u4EE5\u4E0B\u6D41\u7A0B\uFF0C\u914D\u7F6E\u82AF\u7247\u5E73\u53F0\u7684\u5185\u5B58\u53C2\u6570\uFF1A \u5728 SDK \u7684\u6839\u76EE\u5F55\uFF0C\u8FD0\u884C me \u547D\u4EE4\uFF0C\u542F\u52A8 menuconfig \u754C\u9762\u3002 \u5728 menuconfig \u754C\u9762\u4E2D\uFF0C\u5BFC\u822A\u5230 Boardoptions > MemOptions \u914D\u7F6E\u9009\u9879\u3002 \u6839\u636E \u82AF\u7247\u5E73\u53F0\u578B\u53F7 \u3001 \u5B58\u50A8\u7C7B\u578B...","topics/sdk/bringup/lite-bringup-samples.html@@@\u793A\u4F8B\u7A0B\u5E8F@@@LVGL Demo \u5982\u9700\u8FD0\u884C LVGL demo\uFF0C \u53EF\u5728 Luban-Lite \u7CFB\u7EDF RT-Thread \u914D\u7F6E\u4E2D\u6267\u884C me \u547D\u4EE4\u6253\u5F00\u914D\u7F6E\u754C\u9762\uFF0C\u5177\u4F53\u6B65\u9AA4\u5982\u4E0B\uFF1A \u8FDB\u5165 Application options > Filesystem related > Using File System Image 0 > Select File System Type (FATFS) > Data...","topics/sdk/bringup/lite-bringup-soc.html@@@\u5F15\u811A\u914D\u7F6E@@@Luban-Lite SDK \u652F\u6301\u591A\u4E2A\u82AF\u7247\u5E73\u53F0\uFF0C\u5728 BringUp \u4E4B\u524D\uFF0C\u52A1\u5FC5\u786E\u8BA4\u677F\u5361\u4F7F\u7528\u7684 SoC \u5177\u4F53\u578B\u53F7\u4EE5\u914D\u7F6E\u6B63\u786E\u7684\u5F15\u811A\u548C\u5185\u5B58\u3002\u9075\u7167\u4EE5\u4E0B\u6D41\u7A0B\u786E\u8BA4\u76F8\u5E94\u7684 SoC \u578B\u53F7\u5E76\u4FEE\u6539\u914D\u7F6E\uFF1A \u786E\u8BA4 SoC \u7684\u5177\u4F53\u578B\u53F7\u5E76\u9605\u8BFB\u5BF9\u5E94\u7684\u82AF\u7247\u624B\u518C \u2014\u2014 \u5F15\u811A\u590D\u7528\u7AE0\u8282\uFF0C\u786E\u8BA4\u6BCF\u4E2A\u5F15\u811A\u80FD\u63D0\u4F9B\u7684\u529F\u80FD\u3002 \u6253\u5F00 SoC \u7684 target/ SoC / board /pinmux.c \u5F15\u811A\u5B9A\u4E49\u6587\u4EF6\uFF0C\u914D\u7F6E\u5F15\u811A\u6570\u91CF\u3002...","topics/sdk/bringup/lite-bringup-storage.html@@@\u5B58\u50A8\u914D\u7F6E@@@\u6B63\u786E\u7684\u5B58\u50A8\u914D\u7F6E\u662F\u786E\u4FDD\u7F16\u8BD1\u7684\u56FA\u4EF6\u662F\u5426\u53EF\u5237\u673A\u7684\u6700\u91CD\u8981\u56E0\u7D20\uFF0C\u4F46\u5B58\u50A8\u914D\u7F6E\u53EF\u80FD\u9700\u8981\u4FEE\u6539\u7684\u5730\u65B9\u8F83\u591A\uFF0C\u56E0\u6B64\u5EFA\u8BAE\u6309\u7167\u73B0\u6709\u7684\u5DE5\u7A0B\u4EFF\u5199\u9700\u8981 Bringup \u7684\u5F00\u53D1\u677F\u3002\u5177\u4F53\u6D41\u7A0B\u5982\u4E0B\uFF1A \u6839\u636E\u9879\u76EE\u9700\u6C42\uFF0C \u9009\u62E9\u5408\u9002\u7684\u5B58\u50A8\u4ECB\u8D28\u578B\u53F7 \uFF0C\u4F8B\u5982 SPINAND\u3001SPI NOR \u6216 eMMC\u3002 SDK \u9ED8\u8BA4\u652F\u6301\u591A\u79CD SPINAND\uFF0C\u7F16\u8BD1\u4E4B\u524D\u9700\u8981\u786E\u8BA4\u5F00\u53D1\u677F\u7684\u578B\u53F7\u88AB\u9009\u4E2D\u652F\u6301\uFF0C\u5982\u679C\u4E0D\u5728\u652F\u6301\u5217\u8868\u4E2D\uFF0C \u5219\u9700\u8981\u53C2\u8003 SPINAND \u79FB\u690D\u6307\u5357...","topics/sdk/burnsys/burn_packaged_spinor.html@@@\u70E7\u5F55\u5185\u7F6E SPI NOR@@@\u5BF9\u4E8E\u5185\u7F6E NOR \u70E7\u5F55\u65B9\u6848\uFF0C\u5C24\u5176\u662F\u9488\u5BF9\u652F\u6301\u5408\u5C01 NOR Flash \u7684\u82AF\u7247\uFF0C\u8BBE\u5907\u751F\u4EA7\u5382\u5546\u53EF\u80FD\u5E0C\u671B\u5728\u4E3B\u63A7\u82AF\u7247\u710A\u63A5\u5230\u677F\u5B50\u524D\u5BF9\u4E8E\u5408\u5C01 NOR \u8FDB\u884C\u955C\u50CF\u6570\u636E\u70E7\u5F55\u3002\u8FD9\u79CD\u79BB\u7EBF\u70E7\u5F55\u65B9\u6CD5\u53EF\u4EE5\u786E\u4FDD\u82AF\u7247\u5728\u51FA\u5382\u524D\u5DF2\u7ECF\u5305\u542B\u4E86\u5FC5\u8981\u7684\u56FA\u4EF6\u6216\u5E94\u7528\u7A0B\u5E8F\u3002 \u5185\u7F6E NOR \u70E7\u5F55\u539F\u7406 \u4F7F\u7528\u5916\u90E8\u70E7\u5F55\u5668\u5BF9\u4E8E\u5408\u5C01 NOR \u76F4\u63A5\u8FDB\u884C\u6570\u636E\u70E7\u5F55\u7684\u5DE5\u4F5C\u539F\u7406\u5982\u4E0B\uFF1A \u5BF9\u6CA1\u6709\u70E7\u5F55\u8FC7\u542F\u52A8\u7A0B\u5E8F\u7684\u7A7A\u7247\uFF0C\u82AF\u7247\u4E0A\u7535\u65F6\uFF0C\u7531\u4E8E BROM \u542F\u52A8\u5931\u8D25\uFF0C\u76F4\u63A5\u8FDB\u5165\u4E86\u5347\u7EA7\u6A21\u5F0F\u3002...","topics/sdk/burnsys/burn_spinand.html@@@\u70E7\u5F55 SPI NAND@@@\u51C6\u5907\u955C\u50CF\u6587\u4EF6 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C scons menuconfig \u8FDB\u5165\u914D\u7F6E\u754C\u9762\u3002 \u52FE\u9009\u4E0B\u5217\u5236\u4F5C\u955C\u50CF\u53C2\u6570\uFF1A Application options ---> [*] Generate burner format image \u7F16\u8BD1\u5B8C\u6210\u540E\uFF0C\u5728\u7F16\u8BD1\u8F93\u51FA\u76EE\u5F55 (images)/burner \u4E0B\u627E\u5230\u70E7\u5F55\u5668\u4F7F\u7528\u5230\u7684\u955C\u50CF\uFF0C\u4F8B\u5982...","topics/sdk/burnsys/burn_spinor.html@@@\u70E7\u5F55 SPI NOR@@@\u51C6\u5907\u955C\u50CF\u6587\u4EF6 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C scons menuconfig \u8FDB\u5165\u914D\u7F6E\u754C\u9762\u3002 \u52FE\u9009\u4E0B\u5217\u5236\u4F5C\u955C\u50CF\u53C2\u6570\uFF1A Application options ---> [*] Generate burner format image \u7F16\u8BD1\u5B8C\u6210\u540E\uFF0C\u5728\u7F16\u8BD1\u8F93\u51FA\u76EE\u5F55 (images)/burner \u4E0B\u627E\u5230\u70E7\u5F55\u5668\u4F7F\u7528\u5230\u7684\u955C\u50CF\uFF0C\u4F8B\u5982 d13x_demo88-nor_v1.0.0.bin \u3002 \u65B0\u5EFA\u9879\u76EE...","topics/sdk/burnsys/burner_offline_lite.html@@@\u79BB\u7EBF\u70E7\u5F55@@@\u79BB\u7EBF\u70E7\u5F55\uFF0C\u662F\u6307\u4F7F\u7528\u70E7\u5F55\u5668\u70E7\u5F55\u5B58\u50A8\u5668\u4EF6\uFF0C\u5305\u62EC SPI NOR \u548C SPI NAND\u3002\u672C\u8282\u6F14\u793A\u4F7F\u7528\u7855\u98DE SP328 \u70E7\u5F55\u5668\u8FDB\u884C\u70E7\u5F55\u7684\u8BE6\u7EC6\u6D41\u7A0B\u548C\u6B65\u9AA4\uFF0C\u4EE5 D13x \u5E73\u53F0\u7684\u955C\u50CF\u70E7\u5F55\u4E3A\u4F8B\u3002 \u6CE8\uFF1A \u79BB\u7EBF\uFF08\u8131\u673A\uFF09\u70E7\u5F55\u4F1A\u7834\u574F\u6389\u56FA\u4EF6\u7684\u52A0\u5BC6\u4FE1\u606F\u3002\u5982\u679C\u5F00\u542F\u4E86\u5B89\u5168\u542F\u52A8\uFF0CSPIENC \u7B49\u52A0\u5BC6\u65B9\u6848\uFF0C\u5219\u4E0D\u5F97\u8FDB\u884C\u8131\u673A\u70E7\u5F55\u3002 \u6CE8\uFF1A \u6267\u884C\u672C\u8282\u6B65\u9AA4\u548C\u6D41\u7A0B\u4E4B\u524D\uFF0C\u786E\u4FDD\u5DF2\u5B89\u88C5\u7855\u98DE SP328...","topics/sdk/burnsys/burnsys_user_guide.html@@@\u7CFB\u7EDF\u66F4\u65B0@@@\u672C\u8282\u4ECB\u7ECD\u7CFB\u7EDF\u66F4\u65B0\u7684\u65B9\u5F0F\u53CA\u5176\u5177\u4F53\u6D41\u7A0B\u3002 \u4E86\u89E3\u7CFB\u7EDF\u66F4\u65B0\u7684\u6982\u5FF5\u548C\u9014\u5F84\u6709\u52A9\u4E8E\u7406\u89E3\u7CFB\u7EDF\u66F4\u65B0\u7684\u5177\u4F53\u6D41\u7A0B\u5E76\u9009\u62E9\u5408\u9002\u7684\u5347\u7EA7\u65B9\u5F0F\u3002 \u7CFB\u7EDF\u66F4\u65B0\u6D89\u53CA\u4EE5\u4E0B\u6982\u5FF5\uFF1A \u5237\u673A \uFF1A\u501F\u52A9\u4E13\u95E8\u7684\u5237\u673A\u5DE5\u5177\uFF0C\u6E05\u9664\u5B58\u50A8\u4ECB\u8D28\u4E0A\u7684\u6240\u6709\u7684\u6570\u636E\uFF0C \u5E76\u91CD\u65B0\u8FDB\u884C\u5B58\u50A8\u5206\u533A\u3001\u574F\u5757\u7BA1\u7406\u3001\u56FA\u4EF6\u5199\u5165\u7B49\u4E0D\u53EF\u9006\u64CD\u4F5C\u3002 \u5237\u673A\u53EF\u80FD\u5177\u6709\u5982\u4E0B\u98CE\u9669\uFF1A \u5BFC\u81F4\u7528\u6237\u6240\u6709\u6570\u636E\u4E22\u5931\u3002 \u4E00\u822C\u4EC5\u5728\u5DE5\u7A0B\u8C03\u8BD5\u3001\u751F\u4EA7\u65F6\u4F7F\u7528\uFF0C\u7528\u6237\u673A\u9700\u614E\u7528\u3002 \u5C3D\u7BA1 AiBurn...","topics/sdk/burnsys/flow.html@@@\u7CFB\u7EDF\u66F4\u65B0\u6D41\u7A0B@@@\u7CFB\u7EDF\u66F4\u65B0\u6D41\u7A0B\u56E0\u4EA7\u54C1\u548C\u5E73\u53F0\u800C\u5F02\uFF0C\u5173\u4E8E\u5404\u4E2A\u4EA7\u54C1\u5E73\u53F0\u6240\u652F\u6301\u7684\u66F4\u65B0\u65B9\u5F0F\uFF0C\u53EF\u67E5\u770B \u5E73\u53F0\u5347\u7EA7\u65B9\u5F0F \u3002 \u5237\u673A\u6A21\u5F0F \u5F00\u53D1\u677F\u53EA\u6709\u8FDB\u5165\u5230\u5237\u673A\u6A21\u5F0F\u624D\u80FD\u8FDB\u884C\u5237\u673A\u64CD\u4F5C\uFF0C\u4F7F\u7528\u4E0B\u5217\u4EFB\u610F\u65B9\u6CD5\u53EF\u8FDB\u5165\u5237\u673A\u6A21\u5F0F\uFF1A \u7A7A\u7247\u76F4\u63A5\u8FDB\u5165\uFF1A\u5F00\u53D1\u677F\u4E0A\u5B58\u50A8\u4ECB\u8D28\u4E3A\u7A7A\u7247\uFF0C\u5219\u4E0A\u7535\u76F4\u63A5\u8FDB\u5165\u5237\u673A\u6A21\u5F0F\u3002 \u77ED\u8DEF\u70E7\u5F55\u5F15\u811A\uFF1A\u77ED\u8DEF\u70E7\u5F55\u5F15\u811A\uFF08PA0\uFF09\u5230\u5730\uFF0C\u5219\u4E0A\u7535\u76F4\u63A5\u8FDB\u5165\u5237\u673A\u6A21\u5F0F\u3002 \u6309\u4F4F\u5237\u673A\u952E\uFF1A\u5982\u679C\u5F00\u53D1\u677F\u6709\u5237\u673A\u6309\u952E\uFF0C\u5219\u6309\u4F4F\u5237\u673A\u952E\u4E0A\u7535\u6216\u8005...","topics/sdk/burnsys/medium.html@@@\u7CFB\u7EDF\u66F4\u65B0\u5A92\u4ECB@@@SD \u5361 \uFF1ASD \u5361\u4F5C\u4E3A\u5B58\u50A8\u4ECB\u8D28\u5B58\u653E\u8981\u66F4\u65B0\u7684\u56FA\u4EF6\u66F4\u65B0\u7CFB\u7EDF USB \u7EBF \uFF1A\u8BBE\u5907\u901A\u8FC7 USB \u7EBF\u548C\u8BA1\u7B97\u673A\u76F8\u8FDE\uFF0C\u901A\u8FC7\u8BA1\u7B97\u673A\u4E0A\u7684\u5237\u673A\u5DE5\u5177\uFF1AAiBurn \u66F4\u65B0\u7CFB\u7EDF U \u76D8 \uFF1AU \u76D8\u4F5C\u4E3A\u5B58\u50A8\u4ECB\u8D28\u5B58\u653E\u8981\u66F4\u65B0\u7684\u56FA\u4EF6\u66F4\u65B0\u7CFB\u7EDF \u7F51\u7EDC\uFF1A\u901A\u8FC7\u7F51\u7EDC\uFF08\u6709\u7EBF\u3001\u65E0\u7EBF\u3001CAN \u7B49\uFF09\u7684\u65B9\u5F0F\u4E0B\u8F7D\u5347\u7EA7\u5305\u5230\u672C\u5730\uFF0C\u518D\u66F4\u65B0\u7CFB\u7EDF...","topics/sdk/burnsys/sdcard.html@@@SD \u5361@@@\u4F5C\u4E3A\u4E00\u79CD\u901A\u7528\u5B58\u50A8\u4ECB\u8D28\uFF0CSD \u5361\u5728 Luban-Lite \u7684\u5237\u673A\u7CFB\u7EDF\u4E2D\u6709\u4E09\u79CD\u5DE5\u4F5C\u6A21\u5F0F\u3002 \u5236\u4F5C\u542F\u52A8\u5361 \u4F7F\u7528 Luban-Lite SDK \u65F6\uFF0C\u53EF\u4EE5\u5C06 SD \u5361\u4F5C\u4E3A\u4E00\u79CD\u901A\u7528\u5B58\u50A8\u8BBE\u5907\uFF0C\u6765\u521B\u5EFA\u7CFB\u7EDF\u5206\u533A\u548C\u5B58\u50A8\u7CFB\u7EDF\u6587\u4EF6\u3002\u6B64\u65F6\uFF0C\u9700\u8981\u901A\u8FC7 AiBurn \u5236\u4F5C\u4E00\u5F20\u542F\u52A8\u5361\uFF0C\u5E76\u5C06\u5176\u63D2\u5230\u5F00\u53D1\u677F\u540E\u4E0A\u7535\u542F\u52A8\u5373\u53EF\u3002 \u4EE5\u7BA1\u7406\u5458\u8EAB\u4EFD\u8FD0\u884C AiBurn \u5237\u673A\u5DE5\u5177\u3002 \u5236\u4F5C\u542F\u52A8\u5361\u65F6\u5FC5\u987B\u5F00\u542F\u7BA1\u7406\u5458\u6743\u9650\u3002 \u6253\u5F00 \u5236\u4F5C\u542F\u52A8\u5361 \u6807\u7B7E\u9875\u3002 \u5728 SD...","topics/sdk/burnsys/statis.html@@@\u5E73\u53F0\u5347\u7EA7\u65B9\u5F0F@@@\u8868 1 . D21x \u529F\u80FD USB \u7EBF \u4E32\u53E3\u7EBF SD \u5361 U \u76D8 \u5237\u673A \u652F\u6301 \u4E0D\u652F\u6301 \u652F\u6301 \u4E0D\u652F\u6301 \u5347\u7EA7 \u652F\u6301 \u4E0D\u652F\u6301 \u652F\u6301 \u652F\u6301 \u8868 2 . D13x \u529F\u80FD USB \u7EBF \u4E32\u53E3\u7EBF SD \u5361 U \u76D8 \u5237\u673A \u652F\u6301 \u652F\u6301 \u652F\u6301 \u652F\u6301 \u5347\u7EA7 \u652F\u6301 \u652F\u6301 \u652F\u6301 \u652F\u6301 \u8868 3 . G73x \u529F\u80FD USB \u7EBF \u4E32\u53E3\u7EBF SD \u5361 U \u76D8 \u5237\u673A \u652F\u6301 \u652F\u6301 \u652F\u6301 \u652F\u6301 \u5347\u7EA7 \u652F\u6301 \u4E0D\u652F\u6301 \u652F\u6301 \u652F\u6301 \u8868 4...","topics/sdk/burnsys/uart.html@@@\u4E32\u53E3\u7EBF@@@\u4E32\u53E3\u7EBF\u53EF\u4EE5\u501F\u52A9 AiBurn \u8FDB\u884C\u5237\u673A\uFF0C\u4F46\u5177\u6709\u4E0B\u5217\u9650\u5236\uFF1A \u4E00\u822C\u60C5\u51B5\u4E0B\uFF0C\u4E32\u53E3\u70E7\u5F55\u901F\u5EA6\u6BD4\u8F83\u6162\uFF0C\u70E7\u5F55\u901F\u5EA6\u5728\u51E0\u4E2A\u5230\u51E0\u5341\u4E2A KB \u4E4B\u95F4\u3002 \u4F7F\u7528\u666E\u901A\u7684 USB \u8F6C\u4E32\u53E3\uFF0C\u5EFA\u8BAE\u4F7F\u7528 115200 \u7684\u6CE2\u7279\u7387\u3002 \u4EC5 uart0 \u652F\u6301\u4E32\u53E3\u70E7\u5F55\u3002 \u8BBE\u7F6E AiBurn \u5DE5\u5177 \u5728\u6B63\u5F0F\u70E7\u5F55\u4E4B\u524D\uFF0C\u6309\u7167\u4E0B\u5217\u6D41\u7A0B\u8BBE\u7F6E AiBurn \u5DE5\u5177\uFF1A \u9009\u62E9\u8FDE\u63A5\u65B9\u5F0F\uFF1A\u4E32\u53E3 \u9009\u62E9\u4E32\u53E3\u53F7\uFF1APC \u4E0A\u7684\u70E7\u5F55\u4E32\u53E3\u7684\u8BBE\u5907\u53F7 \u8BBE\u7F6E\u6CE2\u7279\u7387\uFF1A\u652F\u6301...","topics/sdk/burnsys/udisk.html@@@U \u76D8@@@U \u76D8\u5237\u673A U \u76D8\u5237\u673A\u7684\u4E00\u822C\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u5C06 U \u76D8\u683C\u5F0F\u5316\u6210\u5355\u5206\u533A\u7684 FAT32 \u6587\u4EF6\u7CFB\u7EDF\u3002 \u590D\u5236\u5237\u673A\u56FA\u4EF6\u5230 U \u76D8\u4E2D\uFF0C\u5982 d211_demo128_nand_v1.0.0.img \u3002 \u590D\u5236\u56FA\u4EF6\u7684\u914D\u7F6E\u6587\u4EF6 bootcfg.txt \u5230 U \u76D8\u4E2D\u3002 \u63D2\u5361\u4E0A\u7535\u542F\u52A8\u5F00\u53D1\u677F\uFF0C\u4F1A\u81EA\u52A8\u8FDB\u884C\u5237\u673A\u3002 \u5237\u673A\u7684\u65F6\u5019\u5C4F\u5E55\u4E0A\u4F1A\u63D0\u793A AiBurn UDISK \u3002 \u5237\u673A\u6210\u529F\u4F1A\u5C4F\u5E55\u4E0A\u4F1A\u63D0\u793A AiBurn done \u3002...","topics/sdk/burnsys/usb.html@@@USB \u7EBF@@@\u4F7F\u7528 USB \u7EBF\u53EF\u4EE5\u5B9E\u73B0\u4E0B\u5217\u7CFB\u7EDF\u66F4\u65B0\u65B9\u5F0F\uFF1A \u5237\u673A \u4F7F\u7528 USB \u7EBF\u65F6\uFF0C\u53EF\u501F\u52A9 AiBurn \u5DE5\u5177\u8FDB\u884C\u5237\u673A\u64CD\u4F5C\uFF0C\u8BE6\u7EC6\u4FE1\u606F\u8BF7\u53C2\u8003 \u3002 \u5347\u7EA7 \u501F\u52A9 USB \u7EBF\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u901A\u8FC7 ADB \u65B9\u5F0F\u5C06\u9700\u8981\u5347\u7EA7\u7684\u56FA\u4EF6\u63A8\u9001\u5230\u5185\u90E8\u5B58\u50A8\u4E2D\uFF1A adb push dxx_demoxxx_nand_page_ 2 k_block_ 128 k_v1. 0.0 .img /mnt/ ADB \u662F Android...","topics/sdk/can/can_config.html@@@CAN \u914D\u7F6E@@@...","topics/sdk/can/can_config_lite.html@@@CAN \u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E Board options ---> [*] Using CAN0 [*] Using CAN1 Luban-Lite CAN \u7684 driver \u5C42\u662F\u57FA\u4E8E RT-Thread \u7684 CAN \u9A71\u52A8\u6846\u67B6\u5B9E\u73B0\u7684\uFF0C\u6240\u4EE5\u9700\u8981\u4F7F\u80FD RT-Thread \u7684 CAN \u9A71\u52A8\u6846\u67B6\uFF1A RT-Thread options ---> RT-Thread Components ---> Device Drivers...","topics/sdk/can/can_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/can/can_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u7528\u6237\u5728\u5F00\u53D1\u8FC7\u7A0B\u4E2D\uFF0C\u53EF\u4EE5\u901A\u8FC7 CAN \u6846\u67B6\u81EA\u5E26\u7684 canstat \u547D\u4EE4\uFF0C\u67E5\u770B CAN \u7684\u72B6\u6001\u3002...","topics/sdk/can/can_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@CAN \u6A21\u5757\u7684\u6E90\u7801\u4F4D\u4E8E linux-5.10/drivers/net/can/artc_can.c \u8F83\u65E9\u7684 linux \u5185\u6838\u7248\u672C\u7684 CAN \u9A71\u52A8\u90FD\u662F\u57FA\u4E8E\u5B57\u7B26\u8BBE\u5907\u9A71\u52A8\u5B9E\u73B0\uFF0C\u63D0\u4F9B\u7684\u529F\u80FD\u76F8\u5BF9\u8F83\u5C11\uFF0C\u6570\u636E\u5305\u7684\u6392\u961F\u548C\u66F4\u9AD8\u7EA7\u522B\u7684\u4F20\u8F93\u534F\u8BAE\u5FC5\u987B\u5728\u7528\u6237\u7A7A\u95F4\u7684\u5E94\u7528\u7A0B\u5E8F\u5B9E\u73B0\u3002\u73B0\u5728\u7684\u5185\u6838\u7248\u672C\u666E\u904D\u91C7\u7528 socketCAN \u5B9E\u73B0 CAN \u6A21\u5757\u7684\u9A71\u52A8\u3002socketCAN \u662F\u5C06 CAN \u4F5C\u4E3A\u4E00\u79CD\u7F51\u7EDC\u8BBE\u5907\uFF0C\u57FA\u4E8E linux...","topics/sdk/can/can_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E CAN \u6A21\u5757\u7684\u6E90\u7801\u4F4D\u4E8E\uFF1A bsp/artinchip/drv/can/drv_can.c \uFF0CCAN \u6A21\u5757 driver \u5C42\u6E90\u7801 bsp/artinchip/hal/can/aic_hal_can.c \uFF0CCAN \u6A21\u5757 hal \u5C42\u6E90\u7801 bsp/artinchip/include/hal/aic_hal_can.h \uFF0CCAN \u6A21\u5757 hal \u5C42\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 \u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1 \u521D\u59CB\u5316\u6D41\u7A0B CAN...","topics/sdk/can/can_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u63A5\u6536\u7EBF\u7A0B\u6253\u5370\u5BFC\u81F4\u4E22\u5E27\u95EE\u9898 \u5982\u679C\u63A5\u6536\u7EBF\u7A0B\u4E2D\u5B58\u5728\u6253\u5370\uFF0C\u90A3\u4E48\u5F53\u603B\u7EBF\u6CE2\u7279\u7387\u8F83\u9AD8\uFF0C\u53D1\u9001\u6570\u636E\u8F83\u591A\u65F6\uFF0C\u6613\u51FA\u73B0\u4E22\u5E27\u95EE\u9898\u3002 \u95EE\u9898\u539F\u56E0 \uFF1A\u6253\u5370\u901F\u7387\u8F83\u6162\uFF0C\u63A5\u6536\u7684\u4E00\u5E27 CAN \u6570\u636E\u8FD8\u6CA1\u6253\u5370\u5B8C\uFF0C\u540E\u7EED\u7684 CAN \u6570\u636E\u53C8\u63A5\u6536\u4E86\uFF0C\u5BB9\u6613\u53D1\u751F overflow\uFF0C\u5BFC\u81F4\u4E22\u5E27\u3002 \u89E3\u51B3\u529E\u6CD5 \uFF1A\u5728\u63A5\u6536\u7EBF\u7A0B\u4E2D\u4E0D\u8981\u52A0\u6253\u5370\u3002SDK \u4E2D\u793A\u4F8B demo \u7684\u63A5\u6536\u7EBF\u7A0B\u6709\u6253\u5370\u53EA\u662F\u4E3A\u4E86\u5C55\u793A\u662F\u5426\u6709\u63A5\u6536\u5230\u6570\u636E\u3002 RTT \u786C\u4EF6\u8FC7\u6EE4\u5668 hdr \u8BBE\u7F6E \u5728...","topics/sdk/can/can_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u63A5\u6536\u7EBF\u7A0B\u6253\u5370\u5BFC\u81F4\u4E22\u5E27\u95EE\u9898 \u5982\u679C\u63A5\u6536\u7EBF\u7A0B\u4E2D\u5B58\u5728\u6253\u5370\uFF0C\u90A3\u4E48\u5F53\u603B\u7EBF\u6CE2\u7279\u7387\u8F83\u9AD8\uFF0C\u53D1\u9001\u6570\u636E\u8F83\u591A\u65F6\uFF0C\u6613\u51FA\u73B0\u4E22\u5E27\u95EE\u9898\u3002 \u95EE\u9898\u539F\u56E0 \uFF1A\u6253\u5370\u901F\u7387\u8F83\u6162\uFF0C\u63A5\u6536\u7684\u4E00\u5E27 CAN \u6570\u636E\u8FD8\u6CA1\u6253\u5370\u5B8C\uFF0C\u540E\u7EED\u7684 CAN \u6570\u636E\u53C8\u63A5\u6536\u4E86\uFF0C\u5BB9\u6613\u53D1\u751F overflow\uFF0C\u5BFC\u81F4\u4E22\u5E27\u3002 \u89E3\u51B3\u529E\u6CD5 \uFF1A\u5728\u63A5\u6536\u7EBF\u7A0B\u4E2D\u4E0D\u8981\u52A0\u6253\u5370\u3002SDK \u4E2D\u793A\u4F8B demo \u7684\u63A5\u6536\u7EBF\u7A0B\u6709\u6253\u5370\u53EA\u662F\u4E3A\u4E86\u5C55\u793A\u662F\u5426\u6709\u63A5\u6536\u5230\u6570\u636E\u3002 RTT \u786C\u4EF6\u8FC7\u6EE4\u5668 hdr \u8BBE\u7F6E \u5728...","topics/sdk/can/can_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u6D4B\u8BD5\u677F\uFF1A\u5E26\u6709\u4E24\u4E2A CAN \u63A5\u53E3\u7684\u6D4B\u8BD5\u677F PC\uFF1A\u7528\u4E8E\u548C\u6D4B\u8BD5\u677F\u4EA4\u4E92 \u4E32\u53E3\u7EBF\uFF1A\u8FDE\u63A5\u6D4B\u8BD5\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6 can-utils \u7B2C\u4E09\u65B9\u8F6F\u4EF6\u5305 iprouter2 \u7B2C\u4E09\u65B9\u8F6F\u4EF6\u5305 \u7B2C\u4E09\u65B9\u8F6F\u4EF6\u5305\u7F16\u8BD1 SDK \u4E2D\u5DF2\u9ED8\u8BA4\u7F16\u8BD1 can-utils/iprouter2 \u8F6F\u4EF6\u5305\uFF0C\u53EF\u4EE5\u76F4\u63A5\u4F7F\u7528\u3002\u4E5F\u53EF\u4EE5\u901A\u8FC7\u4EE5\u4E0B\u4E24\u79CD\u65B9\u5F0F\u7F16\u8BD1\u6D4B\u8BD5\uFF1A \u4F7F\u7528\u9884\u7F16\u8BD1\u5305 SDK \u4E2D\u63D0\u4F9B\u4E86...","topics/sdk/can/can_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u6D4B\u8BD5\u677F\uFF1A\u5E26\u6709\u4E24\u4E2A CAN \u63A5\u53E3\u7684\u6D4B\u8BD5\u677F PC\uFF1A\u7528\u4E8E\u548C\u6D4B\u8BD5\u677F\u4EA4\u4E92 \u4E32\u53E3\u7EBF\uFF1A\u8FDE\u63A5\u6D4B\u8BD5\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6 test_can \u6D4B\u8BD5\u7A0B\u5E8F (\u6B63\u5E38\u6A21\u5F0F) test_can_loopback \u6D4B\u8BD5\u7A0B\u5E8F (\u56DE\u73AF\u6A21\u5F0F\uFF0C\u53C8\u79F0\u81EA\u6D4B\u6A21\u5F0F) \u8F6F\u4EF6\u914D\u7F6E CAN \u6D4B\u8BD5\u7A0B\u5E8F\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig...","topics/sdk/can/can_user_guide.html@@@CAN \u4F7F\u7528\u6307\u5357@@@CAN \u662F\u4E00\u79CD\u5E7F\u6CDB\u5E94\u7528\u4E8E\u6C7D\u8F66\u63A7\u5236\u7CFB\u7EDF\u548C\u4E00\u822C\u5DE5\u4E1A\u73AF\u5883\u4E2D\u7684\u533A\u57DF\u7F51\u7EDC\u603B\u7EBF\u3002\u4F5C\u4E3A\u4E00\u6B3E\u591A\u4E3B\u673A\u3001\u591A\u5E7F\u64AD\u7684\u901A\u4FE1\u534F\u8BAE\uFF0CCAN \u4EE5\u5176\u9AD8\u53EF\u9760\u6027\u548C\u5353\u8D8A\u7684\u9519\u8BEF\u68C0\u6D4B\u80FD\u529B\u800C\u8457\u79F0\u3002 \u652F\u6301 CAN2.0A \u548C CAN2.0B \u534F\u8BAE \u652F\u6301 11 \u4F4D\u6807\u51C6\u683C\u5F0F\u6807\u8BC6\u7B26\u548C 29 \u4F4D\u6269\u5C55\u683C\u5F0F\u6807\u8BC6\u7B26 \u53EF\u7F16\u7A0B\u901A\u4FE1\u901F\u7387\u6700\u9AD8\u53EF\u8FBE 1 Mbps \u652F\u6301\u591A\u79CD\u64CD\u4F5C\u6A21\u5F0F\uFF1A\u6B63\u5E38\u6A21\u5F0F\u3001\u53EA\u542C\u6A21\u5F0F\u3001\u81EA\u6D4B\u6A21\u5F0F\u3001\u4F11\u7720\u6A21\u5F0F\u3001\u590D\u4F4D\u6A21\u5F0F \u652F\u6301\u63A5\u6536\u8FC7\u6EE4\u5668\uFF0C\u652F\u6301\u4E24\u79CD\u8FC7\u6EE4\u6A21\u5F0F 64...","topics/sdk/can/can_user_guide_2.html@@@CAN \u4F7F\u7528\u6307\u5357@@@CAN \u662F\u4E00\u79CD\u5E7F\u6CDB\u5E94\u7528\u4E8E\u6C7D\u8F66\u63A7\u5236\u7CFB\u7EDF\u548C\u4E00\u822C\u5DE5\u4E1A\u73AF\u5883\u4E2D\u7684\u533A\u57DF\u7F51\u7EDC\u603B\u7EBF\u3002\u4F5C\u4E3A\u4E00\u6B3E\u591A\u4E3B\u673A\u3001\u591A\u5E7F\u64AD\u7684\u901A\u4FE1\u534F\u8BAE\uFF0CCAN \u4EE5\u5176\u9AD8\u53EF\u9760\u6027\u548C\u5353\u8D8A\u7684\u9519\u8BEF\u68C0\u6D4B\u80FD\u529B\u800C\u8457\u79F0\u3002 \u652F\u6301 CAN2.0A \u548C CAN2.0B \u534F\u8BAE \u652F\u6301 11 \u4F4D\u6807\u51C6\u683C\u5F0F\u6807\u8BC6\u7B26\u548C 29 \u4F4D\u6269\u5C55\u683C\u5F0F\u6807\u8BC6\u7B26 \u53EF\u7F16\u7A0B\u901A\u4FE1\u901F\u7387\u6700\u9AD8\u53EF\u8FBE 1 Mbps \u652F\u6301\u591A\u79CD\u64CD\u4F5C\u6A21\u5F0F\uFF1A\u6B63\u5E38\u6A21\u5F0F\u3001\u53EA\u542C\u6A21\u5F0F\u3001\u81EA\u6D4B\u6A21\u5F0F\u3001\u4F11\u7720\u6A21\u5F0F\u3001\u590D\u4F4D\u6A21\u5F0F \u652F\u6301\u63A5\u6536\u8FC7\u6EE4\u5668\uFF0C\u652F\u6301\u4E24\u79CD\u8FC7\u6EE4\u6A21\u5F0F 64...","topics/sdk/cap/cap_config_guide.html@@@CAP \u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF08\u914D\u7F6E\u53EA\u6253\u5F00\u4E86 CAP0\uFF0C\u4F5C\u4E3A\u793A\u4F8B\uFF09\uFF1A Board options ---> Using CAP ---> [*] Using CAP0 [ ] Using CAP1 [ ] Using CAP2 [ ] Using CAP3 [ ] Using CAP4...","topics/sdk/cap/cap_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/cap/cap_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/cap/drv_cap.c \uFF0CCAP Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/pwmcs/hal_cap.c \uFF0CPWMCS CAP \u6A21\u5757\u7684 HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_cap.h \uFF0CPWMCS CAP \u6A21\u5757\u7684 HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784...","topics/sdk/cap/cap_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u7F16\u8BD1\u62A5\u9519 \u73B0\u8C61 \u7F16\u8BD1\u65F6\u62A5\u4EE5\u4E0B\u9519\u8BEF bsp/artinchip/include/hal/hal_cap.h: 27 : error: "AIC_CAP_CH_NUM" redefined [-Werror] 27 |# define AIC_CAP_CH_NUM AIC_CAPS_CH_NUM| bsp/artinchip/include/hal/hal_cap.h: 23 : note: this...","topics/sdk/cap/cap_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u4FE1\u53F7\u53D1\u751F\u5668 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Luban-Lite \u81EA\u5E26\u7684 test_cap \u547D\u4EE4\u884C\u5DE5\u5177 \u8F6F\u4EF6\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\u6253\u5F00 test_cap \u547D\u4EE4\u884C\u5DE5\u5177\uFF1A Drivers options ---> Drivers...","topics/sdk/cap/cap_user_guide.html@@@CAP \u4F7F\u7528\u6307\u5357@@@CAP \u6A21\u5757\u5BF9\u8F93\u5165\u4FE1\u53F7 CAP_IO \u7684\u4E0A\u4E0B\u8FB9\u6CBF\u8FDB\u884C\u6355\u6349\uFF0C\u8BB0\u5F55\u8BA1\u6570\u5668\u7684\u6570\u503C\u5E76\u5199\u5165 CAP_REG \u5BC4\u5B58\u5668\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED/\u7F29\u7565\u8BED \u5B9A\u4E49\u53CA\u8BF4\u660E CAP Capture\uFF0C\u4FE1\u53F7\u6355\u6349\uFF0C\u5C5E\u4E8E PWMCS \u4E2D\u7684\u4E00\u4E2A\u5B50\u6A21\u5757 PWMCS PWM Control System\uFF0CPWM \u63A7\u5236\u7CFB\u7EDF CAP \u5DE5\u4F5C\u539F\u7406 \u56FE 1 . CAP \u6A21\u5757\u7684\u6355\u6349\u8F93\u5165\u529F\u80FD\u6846\u56FE \u4EE5 D13x \u4E3A\u4F8B\uFF0CCAP \u6A21\u5757\u652F\u6301 6...","topics/sdk/ce/ce-demo.html@@@\u5E94\u7528\u7F16\u7A0B@@@\u7528\u6237\u7A7A\u95F4\u7F16\u7A0B\u4F7F\u7528 CE \u65F6\uFF0C\u6839\u636E\u4F7F\u7528\u573A\u666F\u548C\u9700\u6C42\u7684\u4E0D\u540C\uFF0C\u6709\u51E0\u5C42 API \u53EF\u4EE5\u9009\u62E9\uFF1A AF_ALG Socket API Libkcapi API OpenSSL API \u56FE 1 . \u7528\u6237\u7A7A\u95F4 API \u5BF9\u63A5 AF_ALG API \u76F8\u5173 API \u53EF\u53C2\u8003\u5934\u6587\u4EF6 linux/if_alg.h \u8981\u4F7F\u7528\u5185\u6838\u63D0\u4F9B\u7684\u7B97\u6CD5\u548C\u9A71\u52A8\uFF0C\u9700\u8981\u77E5\u9053\u5BF9\u5E94\u7684\u7B97\u6CD5\u540D\u5B57\u3002\u53EF\u901A\u8FC7\u4E0B\u5217\u547D\u4EE4\u83B7\u53D6\uFF1A cat /proc/crypto \u4F8B\u5982...","topics/sdk/ce/ce-design_intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u4F4D\u4E8E\uFF1A bsp/artinchip/drv/ce/drv_ce.c \uFF0CCE Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/ce/hal_ce.c \uFF0CCE HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_ce.h \uFF0CCE HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6...","topics/sdk/ce/ce-interface_design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . aic_skcipher_alg_init \u51FD\u6570\u539F\u578B int aic_skcipher_alg_init(struct crypto_skcipher *tfm) \u529F\u80FD\u8BF4\u660E \u5BF9\u79F0\u5BC6\u94A5\u7B97\u6CD5\u7684\u521D\u59CB\u5316\u51FD\u6570 \u53C2\u6570\u5B9A\u4E49 struct crypto_skcipher *tfm \u7B97\u6CD5\u5B9E\u4F8B\u6307\u9488 \u8FD4\u56DE\u503C 0: \u6210\u529F \u5176\u4ED6: \u5931\u8D25 \u6CE8\u610F\u4E8B\u9879 - \u8868 2 . aic_skcipher_alg_exit...","topics/sdk/ce/ce-key_design_intro.html@@@\u8BBE\u8BA1\u8981\u70B9@@@\u7B97\u6CD5\u7684\u5206\u7C7B\u6CE8\u518C CE \u786C\u4EF6\u5B9E\u73B0\u4E86\u591A\u7EC4\u4E0D\u540C\u7C7B\u578B\u7684\u52A0\u5BC6\u7B97\u6CD5\u52A0\u901F\u5355\u5143\uFF0C\u5206\u522B\u5BF9\u5E94\u5185\u6838\u52A0\u5BC6\u5B50\u7CFB\u7EDF\u4E2D\u7684\u51E0\u79CD\u7C7B\u578B\u52A0\u5BC6\u7B97\u6CD5\u3002\u5728\u9A71\u52A8\u5B9E\u73B0\u65F6\uFF0C\u6839\u636E\u4E0D\u540C\u7684\u7B97\u6CD5\u7C7B\u578B\uFF0C\u5C06 CE \u786C\u4EF6\u62BD\u8C61\u51FA\u4E09\u4E2A\u4E0D\u540C\u7684\u7B97\u6CD5\u52A0\u901F\u5668\uFF1A \u5BF9\u79F0\u5BC6\u94A5\u7B97\u6CD5\u52A0\u901F\u5668 \u975E\u5BF9\u79F0\u5BC6\u94A5\u7B97\u6CD5\u52A0\u901F\u5668 \u6D88\u606F\u6458\u8981\u7B97\u6CD5\u52A0\u901F\u5668 \u9A71\u52A8\u6309\u7167\u4E0D\u540C\u7684\u7B97\u6CD5\u52A0\u901F\u5668\u8FDB\u884C\u8D44\u6E90\u5206\u914D\u548C\u5B9E\u73B0\uFF0C\u6BCF\u4E2A\u7B97\u6CD5\u52A0\u901F\u5668\u652F\u6301\u591A\u79CD\u4E0D\u540C\u7684\u5177\u4F53\u7B97\u6CD5\uFF0C\u5E76\u4E14\u5C06\u5177\u4F53\u7B97\u6CD5\u6CE8\u518C\u5230\u52A0\u5BC6\u5B50\u7CFB\u7EDF\u3002 \u56FE 1 . CE \u7B97\u6CD5\u5206\u7C7B \u9A71\u52A8\u4E3A...","topics/sdk/ce/ce-key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B \u56FE 1 . \u521D\u59CB\u5316\u6D41\u7A0B \u76F8\u5173\u7684\u4EE3\u7801\u6D41\u7A0B\u5982\u4E0B\u3002 aic_crypto_probe(pdev); |-> ce_dev->base = devm_platform_ioremap_resource(pdev, 0 ); |-> ret = devm_request_threaded_irq(dev, irq, aic_crypto_irq_handler, |...","topics/sdk/ce/ce_architecture.html@@@\u6A21\u5757\u67B6\u6784@@@CE \u9A71\u52A8 Driver \u5C42\u91C7\u7528 RT-Thread \u7684 HWCRYPTO \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\uFF0C\u5982\u679C\u53EA\u4F7F\u7528 HAL \u5C42\u4E5F\u53EF\u4EE5\u652F\u6301 baremetal \u65B9\u5F0F\u7684\u5E94\u7528\u573A\u666F\u3002 \u56FE 1 . CE \u9A71\u52A8\u7684\u8F6F\u4EF6\u67B6\u6784\u56FE...","topics/sdk/ce/ce_config.html@@@CE \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u4F7F\u80FD CE \u76F8\u5173\u7684\u5185\u6838\u9A71\u52A8\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u7684\u914D\u7F6E\u754C\u9762\u4E2D\uFF0C\u914D\u7F6E\u4E0B\u5217\u9009\u9879\uFF1A Cryptographic API ---> <*> User-space interface for asymmetric key cipher algorithms...","topics/sdk/ce/ce_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [*] Using Crypto Engine \u5F53\u4F7F\u7528 RT-Thread \u5185\u6838\u6846\u67B6\u7684\u65F6\u5019\uFF0C\u53EF\u4EE5\u901A\u8FC7\u4EE5\u4E0B\u914D\u7F6E\uFF0C\u5BF9\u63A5 RT-Thread \u786C\u4EF6\u52A0\u5BC6\u6846\u67B6\uFF0C Rt-Thread options --->...","topics/sdk/ce/ce_data_struct.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@\u8BBE\u5907\u7ED3\u6784\u4F53 CE \u8BBE\u5907\u7ED3\u6784\u4F53\u7528\u6765\u4FDD\u5B58 CE \u57FA\u5730\u5740\u7B49\u76F8\u5173\u4FE1\u606F\uFF0C\u9664\u6B64\u4E4B\u5916\uFF0C\u8FD8\u5305\u542B\u4E86\u4E09\u4E2A\u4E0D\u540C\u7C7B\u578B\u7684\u7B97\u6CD5\u52A0\u901F\u5668\u7ED3\u6784\u4F53\uFF0C \u4EE5\u53CA\u5B89\u5168 SRAM \u7684\u5206\u914D\u7BA1\u7406\u4FE1\u606F\u7B49\u3002 struct aic_alg_accelerator { struct crypto_engine *engine; struct mutex alock; DECLARE_KFIFO_PTR(req_fifo, void *); }...","topics/sdk/ce/ce_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u901A\u8FC7\u5185\u6838\u914D\u7F6E\u4F7F\u80FD CE \u6A21\u5757\u7684\u9A71\u52A8\u8C03\u8BD5\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u7684\u914D\u7F6E\u754C\u9762\uFF0C\u4F7F\u80FD CE \u9A71\u52A8\u8C03\u8BD5\u9009\u9879\uFF1A Linux Kernel hacking ArtInChip Debug [*] CE driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5...","topics/sdk/ce/ce_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/ce/ce_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E bsp/artinchip/drv/ce/drv_ce.c \uFF0CCE Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/ce/hal_ce.c \uFF0CCE HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_ce.h \uFF0CCE HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 CE \u9A71\u52A8 Driver \u5C42\u91C7\u7528 RT-Thread \u7684 HWCRYPTO \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\uFF0C\u5982\u679C\u53EA\u4F7F\u7528...","topics/sdk/ce/ce_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/ce/ce_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/ce/ce_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u5BF9\u8C61 \uFF0C\u9700\u8981\u6D4B\u8BD5\u7684\u7B97\u6CD5\u6709\uFF1A \u5BF9\u79F0\u5BC6\u94A5\u7B97\u6CD5 \u975E\u5BF9\u79F0\u5BC6\u94A5\u7B97\u6CD5 \u6D88\u606F\u6458\u8981\u7B97\u6CD5 cbc(des3_ede) ecb(des3_ede) cbc(des) ecb(des) xts(aes) cts(aes) ctr(aes) cbc(aes) ecb(aes) huk-protected(xts(aes)) huk-protected(cts(aes)) huk-protected(cbc(aes))...","topics/sdk/ce/ce_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u7684\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options ---> Drivers examples ---> [*] Enable CE driver test command \u6D4B\u8BD5\u7684\u547D\u4EE4 test_ce help test_ce command usage...","topics/sdk/ce/ce_user_guide.html@@@CE \u4F7F\u7528\u6307\u5357@@@CE \u662F\u4E00\u4E2A\u72EC\u7ACB\u7684\u786C\u4EF6\u52A0\u89E3\u5BC6\u7B97\u6CD5\u5F15\u64CE\uFF0C\u662F\u4E00\u4E2A\u72EC\u7ACB\u7684\u786C\u4EF6\u52A0\u89E3\u5BC6\u7B97\u6CD5\u5F15\u64CE\uFF0C\u652F\u6301\u591A\u79CD\u7B97\u6CD5\u6A21\u5F0F\u3002\u8FD9\u4E9B\u7B97\u6CD5\u6A21\u5F0F\u53EF\u4EE5\u5355\u72EC\u6216\u7EC4\u5408\u4F7F\u7528\uFF0C\u4EE5\u6EE1\u8DB3\u4E0D\u540C\u7684\u5B89\u5168\u9700\u6C42\u548C\u5E94\u7528\u573A\u666F\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E CE Crypto Engine \u786C\u4EF6\u52A0\u89E3\u5BC6\u7B97\u6CD5\u5F15\u64CE DES Data Encryption Standard \u4E00\u79CD\u5BF9\u79F0\u5206\u7EC4\u5BC6\u7801\u7B97\u6CD5 AES Advanced Encryption Standard...","topics/sdk/ce/ce_user_guide_2.html@@@CE \u4F7F\u7528\u6307\u5357@@@CE \u662F\u4E00\u4E2A\u72EC\u7ACB\u7684\u786C\u4EF6\u52A0\u89E3\u5BC6\u7B97\u6CD5\u5F15\u64CE\uFF0C\u662F\u4E00\u4E2A\u72EC\u7ACB\u7684\u786C\u4EF6\u52A0\u89E3\u5BC6\u7B97\u6CD5\u5F15\u64CE\uFF0C\u652F\u6301\u591A\u79CD\u7B97\u6CD5\u6A21\u5F0F\u3002\u8FD9\u4E9B\u7B97\u6CD5\u6A21\u5F0F\u53EF\u4EE5\u5355\u72EC\u6216\u7EC4\u5408\u4F7F\u7528\uFF0C\u4EE5\u6EE1\u8DB3\u4E0D\u540C\u7684\u5B89\u5168\u9700\u6C42\u548C\u5E94\u7528\u573A\u666F\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E CE Crypto Engine \u786C\u4EF6\u52A0\u89E3\u5BC6\u7B97\u6CD5\u5F15\u64CE DES Data Encryption Standard \u4E00\u79CD\u5BF9\u79F0\u5206\u7EC4\u5BC6\u7801\u7B97\u6CD5 AES Advanced Encryption Standard...","topics/sdk/chapter-advanced-app.html@@@\u9AD8\u7EA7\u5E94\u7528@@@\u7CFB\u7EDF\u3001\u5B58\u50A8\u3001\u591A\u5A92\u4F53\u3001\u63A5\u53E3\u3001\u5B89\u5168\u7B49\u6A21\u5757\u7684\u8BE6\u7EC6\u914D\u7F6E\u548C\u8BBE\u8BA1\u8BF4\u660E\u3002...","topics/sdk/chapter-app.html@@@\u5E94\u7528\u573A\u666F@@@\u63CF\u8FF0\u4E86 SDK \u5728\u4E0D\u540C\u5E94\u7528\u573A\u666F\u4E2D\u7684\u914D\u7F6E\u548C\u4F7F\u7528\uFF0C\u5305\u62EC\u7CFB\u7EDF\u66F4\u65B0\u3001OTA\u3001\u5B89\u5168\u65B9\u6848\u7B49\u3002...","topics/sdk/cir/cir_config.html@@@CIR \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E Device Drivers <*> Remote Controller support---> [*] LIRC user interface [*] Remote controller decoders---> <*> Enable IR raw decoder for the NEC protocol < > Enable IR raw decoder for the RC- 5...","topics/sdk/cir/cir_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u8FDB\u5165 Luban-Lite \u7684 menuconfig \u914D\u7F6E\u754C\u9762\uFF0C\u9009\u62E9\u4F7F\u7528 CIR \u6A21\u5757\uFF1A Board options ---> [*] Using cir \u9009\u62E9\u4F7F\u7528\u7684\u7EA2\u5916\u534F\u8BAE CIR protocol select ---> [*] NEC protocol [ ] RC5 protocol \u9ED8\u8BA4\u4F7F\u7528\u7684\u662F NEC \u7EA2\u5916\u534F\u8BAE\u3002 \u6CE8\uFF1A \u53EF\u540C\u65F6\u4F7F\u80FD NEC \u548C RC5...","topics/sdk/cir/cir_data_struct.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@Driver \u5C42\u6570\u636E\u7ED3\u6784 typedef struct aic_cir { struct rt_device dev; aic_cir_ctrl_t aic_cir_ctrl; cir_config_t config; } aic_cir_t; HAL \u5C42\u6570\u636E\u7ED3\u6784 typedef enum { CIR_EVENT_RECEIVE_COMPLETE, CIR_EVENT_ERROR, }...","topics/sdk/cir/cir_data_struct_2.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@Driver \u5C42\u6570\u636E\u7ED3\u6784 typedef struct aic_cir { struct rt_device dev; aic_cir_ctrl_t aic_cir_ctrl; cir_config_t config; } aic_cir_t; HAL \u5C42\u6570\u636E\u7ED3\u6784 typedef enum { CIR_EVENT_RECEIVE_COMPLETE, CIR_EVENT_ERROR, }...","topics/sdk/cir/cir_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/cir/cir_debug_2.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/cir/cir_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E CIR \u6A21\u5757\u7684\u6E90\u7801\u4F4D\u4E8E bsp/artinchip/ bsp/artinchip/drv/cir/drv_cir.c\uFF0Ccir driver \u5C42\u63A5\u53E3\u5B9E\u73B0 bsp/artinchip/include/drv/drv_cir.h\uFF0Ccir driver \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 bsp/artinchip/drv/cir/nec_decoder.c\uFF0CNEC \u534F\u8BAE\u7F16\u89E3\u7801\u5B9E\u73B0...","topics/sdk/cir/cir_design_2.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E CIR \u6A21\u5757\u7684\u6E90\u7801\u4F4D\u4E8E bsp/artinchip/ bsp/artinchip/drv/cir/drv_cir.c\uFF0Ccir driver \u5C42\u63A5\u53E3\u5B9E\u73B0 bsp/artinchip/include/drv/drv_cir.h\uFF0Ccir driver \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 bsp/artinchip/drv/cir/nec_decoder.c\uFF0CNEC \u534F\u8BAE\u7F16\u89E3\u7801\u5B9E\u73B0...","topics/sdk/cir/cir_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5DF2\u7ECF\u786E\u8BA4 RX \u6216 TX \u8FDE\u63A5\u6B63\u786E \u9A71\u52A8\u6216\u534F\u8BAE\u662F\u5426\u6B63\u786E\u914D\u7F6E...","topics/sdk/cir/cir_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5DF2\u7ECF\u786E\u8BA4 RX \u6216 TX \u8FDE\u63A5\u6B63\u786E \u9A71\u52A8\u6216\u534F\u8BAE\u662F\u5426\u6B63\u786E\u914D\u7F6E...","topics/sdk/cir/cir_interface.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . aic_set_rx_carrier_range \u51FD\u6570\u539F\u578B static int aic_set_rx_carrier_range(struct rc_dev *rcdev, u32 min, u32 max) \u529F\u80FD\u8BF4\u660E \u8BBE\u7F6E CIR \u6A21\u5757\u63A5\u6536\u5668\u7684\u91C7\u6837\u9891\u7387 \u53C2\u6570\u5B9A\u4E49 rcdev\uFF1A\u6307\u5411\u7EA2\u5916\u8BBE\u5907\u7684\u6307\u9488 min\uFF1A\u8BBE\u7F6E\u7684\u91C7\u6837\u9891\u7387\u6700\u5C0F\u503C max\uFF1A\u8BBE\u7F6E\u7684\u91C7\u6837\u9891\u7387\u6700\u5927\u503C \u8FD4\u56DE\u503C \u6267\u884C\u6210\u529F\u8FD4\u56DE 0...","topics/sdk/cir/cir_interface_lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u8868 1 . drv_cir_init \u51FD\u6570\u539F\u578B rt_err_t drv_cir_init(rt_device_t pdev) \u529F\u80FD\u8BF4\u660E CIR \u6A21\u5757\u521D\u59CB\u5316 \u53C2\u6570\u5B9A\u4E49 pdev: \u6307\u5411 CIR \u8BBE\u5907\u7684\u6307\u9488 \u8FD4\u56DE\u503C \u6267\u884C\u6210\u529F\u8FD4\u56DE RT_EOK \u6CE8\u610F\u4E8B\u9879 - \u8868 2 . drv_cir_open \u51FD\u6570\u539F\u578B rt_err_t drv_cir_open(rt_device_t...","topics/sdk/cir/cir_key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B CIR \u6A21\u5757\u7684\u521D\u59CB\u5316\u6D41\u7A0B\u5982\u4E0B\uFF1A \u91CA\u653E clock \u548C reset \u4FE1\u53F7 \u8BBE\u7F6E\u566A\u58F0\u9608\u503C\uFF0C\u6FC0\u6D3B\u9608\u503C\uFF0C\u7A7A\u95F2\u9608\u503C\u7B49\u5E95\u5C42\u914D\u7F6E \u8BBE\u7F6E TX-FIFO \u548C RX-FIFO \u7684\u9608\u503C \u5C06\u6240\u9009\u62E9\u7684 CIR \u534F\u8BAE\u6CE8\u518C\u5230 cir_raw_handler_list \u94FE\u8868 \u4E2D\u65AD\u5904\u7406\u6D41\u7A0B CIR \u6A21\u5757\u4F7F\u80FD RX \u7684\u6EA2\u51FA\u4E2D\u65AD\u3001RXFIFO \u53EF\u7528\u4E2D\u65AD\u3001\u63A5\u6536\u5B8C\u6210\u4E2D\u65AD\u3002 \u4E2D\u65AD\u6267\u884C\u6D41\u7A0B\u5982\u4E0B\uFF1A \u56FE 1 . \u4E2D\u65AD\u6267\u884C\u6D41\u7A0B CIR...","topics/sdk/cir/cir_key_procedures_2.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B CIR \u6A21\u5757\u7684\u521D\u59CB\u5316\u6D41\u7A0B\u5982\u4E0B\uFF1A \u91CA\u653E clock \u548C reset \u4FE1\u53F7 \u8BBE\u7F6E\u566A\u58F0\u9608\u503C\uFF0C\u6FC0\u6D3B\u9608\u503C\uFF0C\u7A7A\u95F2\u9608\u503C\u7B49\u5E95\u5C42\u914D\u7F6E \u8BBE\u7F6E TX-FIFO \u548C RX-FIFO \u7684\u9608\u503C \u5C06\u6240\u9009\u62E9\u7684 CIR \u534F\u8BAE\u6CE8\u518C\u5230 cir_raw_handler_list \u94FE\u8868 \u4E2D\u65AD\u5904\u7406\u6D41\u7A0B CIR \u6A21\u5757\u4F7F\u80FD RX \u7684\u6EA2\u51FA\u4E2D\u65AD\u3001RXFIFO \u53EF\u7528\u4E2D\u65AD\u3001\u63A5\u6536\u5B8C\u6210\u4E2D\u65AD\u3002 \u4E2D\u65AD\u6267\u884C\u6D41\u7A0B\u5982\u4E0B\uFF1A \u56FE 1 . \u4E2D\u65AD\u6267\u884C\u6D41\u7A0B CIR...","topics/sdk/cir/cir_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@...","topics/sdk/cir/cir_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 test_cir \u6D4B\u8BD5\u7A0B\u5E8F \u8F6F\u4EF6\u914D\u7F6E test_cir \u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options ---> Drivers examples ---> [*] Enable...","topics/sdk/cir/cir_user_guide.html@@@CIR \u4F7F\u7528\u6307\u5357@@@Consumer IR (CIR) \u6A21\u5757\u5305\u542B\u53D1\u9001\u5668\u548C\u63A5\u6536\u5668\uFF0C\u5176\u7279\u6B8A\u8BBE\u8BA1\u652F\u6301\u751F\u6210\u6216\u6355\u83B7\u5404\u7C7B\u6570\u5B57\u8109\u51B2\u4FE1\u53F7\u3002\u6A21\u5757\u4F7F\u7528\u6E38\u7A0B\u7F16\u7801 (RLC\uFF0CRun-Length Code) \u65B9\u5F0F\u7F16\u7801\u6570\u5B57\u8109\u51B2\u4FE1\u53F7\uFF0C\u4EE5 Byte \u4E3A\u5355\u4F4D\u8BB0\u5F55\u7F16\u7801\u6570\u636E\uFF0C\u5176\u4E2D\uFF1A MSB \u4F4D\u8868\u793A\u4FE1\u53F7\u7535\u5E73\uFF1A 1\uFF1A\u9AD8\u7535\u5E73 0\uFF1A\u4F4E\u7535\u5E73 \u5176\u4F59 7 \u4F4D\u8868\u793A\u4FE1\u53F7\u5BBD\u5EA6\uFF0C\u4EE5\u91C7\u6837\u65F6\u949F\u4E3A\u5355\u4F4D\u3002 \u6700\u5927\u5BBD\u5EA6\u4E3A 128\uFF0C\u5047\u5982\u67D0\u4E00\u7535\u5E73\u5BBD\u5EA6\u5927\u4E8E 128\uFF0C\u5219\u4F7F\u7528\u53E6\u4E00\u5B57\u8282\u5B58\u50A8\u3002 \u8868...","topics/sdk/cir/cir_user_guide_2.html@@@CIR \u4F7F\u7528\u6307\u5357@@@Consumer IR (CIR) \u6A21\u5757\u5305\u542B\u53D1\u9001\u5668\u548C\u63A5\u6536\u5668\uFF0C\u5176\u7279\u6B8A\u8BBE\u8BA1\u652F\u6301\u751F\u6210\u6216\u6355\u83B7\u5404\u7C7B\u6570\u5B57\u8109\u51B2\u4FE1\u53F7\u3002\u6A21\u5757\u4F7F\u7528\u6E38\u7A0B\u7F16\u7801 (RLC\uFF0CRun-Length Code) \u65B9\u5F0F\u7F16\u7801\u6570\u5B57\u8109\u51B2\u4FE1\u53F7\uFF0C\u4EE5 Byte \u4E3A\u5355\u4F4D\u8BB0\u5F55\u7F16\u7801\u6570\u636E\uFF0C\u5176\u4E2D\uFF1A MSB \u4F4D\u8868\u793A\u4FE1\u53F7\u7535\u5E73\uFF1A 1\uFF1A\u9AD8\u7535\u5E73 0\uFF1A\u4F4E\u7535\u5E73 \u5176\u4F59 7 \u4F4D\u8868\u793A\u4FE1\u53F7\u5BBD\u5EA6\uFF0C\u4EE5\u91C7\u6837\u65F6\u949F\u4E3A\u5355\u4F4D\u3002 \u6700\u5927\u5BBD\u5EA6\u4E3A 128\uFF0C\u5047\u5982\u67D0\u4E00\u7535\u5E73\u5BBD\u5EA6\u5927\u4E8E 128\uFF0C\u5219\u4F7F\u7528\u53E6\u4E00\u5B57\u8282\u5B58\u50A8\u3002 \u8868...","topics/sdk/cmu/cmu-data-structure-design.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@CMU \u6A21\u5757\u5173\u952E\u7ED3\u6784\u4F53\u5B9A\u4E49\u5982\u4E0B\uFF1A CMU \u6A21\u5757\u5173\u952E\u7ED3\u6784\u4F53\u5B9A\u4E49\u5982\u4E0B\uFF1A aic_clk_fixed_parent_cfg struct aic_clk_fixed_parent_cfg { struct aic_clk_comm_cfg comm; // \u65F6\u949F\u64CD\u4F5C\u7684\u51FD\u6570\u96C6\u5408 u32 offset_reg; // \u5BC4\u5B58\u5668\u504F\u79FB\u5730\u5740 s8 bus_gate_bit; // \u603B\u7EBF\u4F7F\u80FD\u4F4D\u504F\u79FB s8...","topics/sdk/cmu/cmu-data-structure-design_2.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@CMU \u6A21\u5757\u5173\u952E\u7ED3\u6784\u4F53\u5B9A\u4E49\u5982\u4E0B\uFF1A CMU \u6A21\u5757\u5173\u952E\u7ED3\u6784\u4F53\u5B9A\u4E49\u5982\u4E0B\uFF1A aic_clk_fixed_parent_cfg struct aic_clk_fixed_parent_cfg { struct aic_clk_comm_cfg comm; // \u65F6\u949F\u64CD\u4F5C\u7684\u51FD\u6570\u96C6\u5408 u32 offset_reg; // \u5BC4\u5B58\u5668\u504F\u79FB\u5730\u5740 s8 bus_gate_bit; // \u603B\u7EBF\u4F7F\u80FD\u4F4D\u504F\u79FB s8...","topics/sdk/cmu/cmu-debug-guide-lb.html@@@\u8C03\u8BD5\u6307\u5357@@@CMU \u8C03\u8BD5\u5305\u542B\u4EE5\u4E0B\u6B65\u9AA4\uFF1A \u786E\u4FDD\u6253\u5F00 Debugfs \u3002SDK \u4E2D\u9ED8\u8BA4\u5DF2\u6253\u5F00 Debugfs \uFF0C\u4E5F\u53EF\u4EE5\u901A\u8FC7\u4EE5\u4E0B\u914D\u7F6E\u6253\u5F00\uFF1A Kernel hacking---> Generic Kernel Debugging Instruments---> Debug Filesystem Debugfs default access(Access normal)---> \u5185\u6838\u7684 CCF...","topics/sdk/cmu/cmu-debug-guide-lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u65B9\u6CD5 \u76EE\u524D CMU \u6CA1\u6709\u4E13\u6709\u7684\u8C03\u8BD5\u547D\u4EE4\uFF0C\u53EA\u80FD\u5BF9\u7167\u7528\u6237\u624B\u518C\uFF0C\u901A\u8FC7\u8BFB\u5199 CMU \u5BC4\u5B58\u5668\u6765\u6838\u5BF9\u914D\u7F6E\u3002 Luban-Lite \u4E0B\u8BFB\u5199\u5BC4\u5B58\u5668\u7684\u901A\u7528\u547D\u4EE4\u4E3A p \uFF0C\u4F8B\u5982\uFF1A p 0x18020000 18020000 : 881 d3110 88153100 00000000 00000000 18020010 : 00000000 00000000 00000000 00000000 18020020...","topics/sdk/cmu/cmu-design-guide-lb.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u5185\u6838\u7684\u65F6\u949F\u9A71\u52A8\u6846\u67B6\u4F4D\u4E8E linux-5.10/drivers/clk \u76EE\u5F55\u4E0B\uFF0CCMU \u7684\u5E95\u5C42\u9A71\u52A8\u4F4D\u4E8E /drivers/clk/artinchip/ \u76EE\u5F55\u4E0B\u3002 ArtInChip \u7684\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B\u56FE\u6240\u793A\uFF1A \u6587\u4EF6 \u8BF4\u660E clk-aic.h aic \u516C\u7528\u5934\u6587\u4EF6 clk-aic.c CMU \u5404\u4E2A\u65F6\u949F\u7684\u521D\u59CB\u5316\uFF0C\u6CE8\u518C\u6587\u4EF6 clk-disp.c \u663E\u793A\u6A21\u5757\u7684\u65F6\u949F\u6587\u4EF6...","topics/sdk/cmu/cmu-design-guide-lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E CMU \u76F8\u5173 .c \u548C .h \u6587\u4EF6\u5206\u522B\u4F4D\u4E8E luban-lite\\bsp\\artinchip\\hal\\cmu \u548C luban-lite\\bsp\\artinchip\\include\\hal \u76EE\u5F55\u3002\u4E3B\u8981\u6E90\u6587\u4EF6\u8BF4\u660E\u5982\u4E0B\uFF1A \u6587\u4EF6 \u8BF4\u660E aic_clk_id.h \u65F6\u949F ID \u4EE5\u53CA \u5BC4\u5B58\u5668\u8BBE\u7F6E aic_hal_clk.h hal \u5C42 clk api \u7684\u5934\u6587\u4EF6 aic_hal_clk.c hal \u5C42...","topics/sdk/cmu/cmu-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/cmu/cmu-faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/cmu/cmu-interface-design-2.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Clock API CMU \u9A71\u52A8\u63D0\u4F9B\u4E86 Clock API \u63A5\u53E3\u51FD\u6570\uFF0C\u4E0D\u540C\u7C7B\u578B\u65F6\u949F\u652F\u6301\u7684 API \u63A5\u53E3\u51FD\u6570\u5982\u4E0B\u8868\uFF1A \u8868 1 . Clock API \u63A5\u53E3\u51FD\u6570 API \u51FD\u6570 \u529F\u80FD\u63CF\u8FF0 fixed rate clock fixed parent clock multi parent clock disp clock pll clock hal_clk_enable() \u4F7F\u80FD\u65F6\u949F - \u221A \u221A - \u221A...","topics/sdk/cmu/cmu-interface-design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . aic_clk_hw_fixed_parent_module \u51FD\u6570\u539F\u578B struct clk_hw *aic_clk_hw_fixed_parent(void __iomem *base, const struct fixed_parent_clk_cfg *cfg) \u529F\u80FD\u8BF4\u660E \u521D\u59CB\u5316 clock\uFF0C\u5E76\u5BF9\u65F6\u949F\u8FDB\u884C\u6CE8\u518C \u53C2\u6570\u5B9A\u4E49 base\uFF1ACMU \u5BC4\u5B58\u5668\u7684\u57FA\u5730\u5740 cfg\uFF1A\u6307\u5411\u914D\u7F6E\u53C2\u6570\u7684\u6307\u9488...","topics/sdk/cmu/cmu-introduction.html@@@CMU \u4F7F\u7528\u6307\u5357@@@CMU \u6A21\u5757\u7528\u4E8E\u914D\u7F6E\u7CFB\u7EDF\u65F6\u949F\u3001PLL \u65F6\u949F\u9891\u7387\u548C\u5C55\u9891\u3001AXI/ AHB/ APB \u603B\u7EBF\u65F6\u949F\u3001\u5404\u6A21\u5757\u8F93\u5165\u65F6\u949F\u3001IO \u8F93\u51FA\u65F6\u949F\uFF0C\u4EE5\u53CA\u5404\u4E2A\u6A21\u5757\u7684 Reset \u4FE1\u53F7\u7684\u590D\u4F4D\u6216\u91CA\u653E\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E CMU clock manage unit \u65F6\u949F\u7BA1\u7406\u5355\u5143 PLL Phase Locked Loop \u9501\u76F8\u73AF\u65F6\u949F CMU \u6A21\u5757\u7684\u57FA\u672C\u7279\u6027\u5982\u4E0B\uFF1A \u4E24\u79CD\u9501\u76F8\u73AF\u5171\u4E94\u4E2A PLL \u4E24\u4E2A\u6574\u6570...","topics/sdk/cmu/cmu-introduction_2.html@@@CMU \u4F7F\u7528\u6307\u5357@@@CMU \u6A21\u5757\u7528\u4E8E\u914D\u7F6E\u7CFB\u7EDF\u65F6\u949F\u3001PLL \u65F6\u949F\u9891\u7387\u548C\u5C55\u9891\u3001AXI/ AHB/ APB \u603B\u7EBF\u65F6\u949F\u3001\u5404\u6A21\u5757\u8F93\u5165\u65F6\u949F\u3001IO \u8F93\u51FA\u65F6\u949F\uFF0C\u4EE5\u53CA\u5404\u4E2A\u6A21\u5757\u7684 Reset \u4FE1\u53F7\u7684\u590D\u4F4D\u6216\u91CA\u653E\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E CMU clock manage unit \u65F6\u949F\u7BA1\u7406\u5355\u5143 PLL Phase Locked Loop \u9501\u76F8\u73AF\u65F6\u949F CMU \u6A21\u5757\u7684\u57FA\u672C\u7279\u6027\u5982\u4E0B\uFF1A \u4E24\u79CD\u9501\u76F8\u73AF\u5171\u4E94\u4E2A PLL \u4E24\u4E2A\u6574\u6570...","topics/sdk/cmu/cmu-key-procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@Clock \u548C Reset \u9A71\u52A8\u521D\u59CB\u5316 CMU \u6A21\u5757\u7684\u521D\u59CB\u5316\u6D41\u7A0B\u5305\u62EC\u4EE5\u4E0B\u4E24\u4E2A\u4E3B\u8981\u90E8\u5206\uFF1A Clock \u9A71\u52A8\u521D\u59CB\u5316 Clock \u9A71\u52A8\u4E3B\u8981\u662F\u7ED9\u5176\u4ED6\u9A71\u52A8\u8C03\u7528\u7684\uFF0C\u5176\u672C\u8EAB\u6CA1\u6709\u521D\u59CB\u5316\u6B65\u9AA4\u3002 Reset \u9A71\u52A8\u521D\u59CB\u5316 Reset \u9A71\u52A8\u4E3B\u8981\u662F\u7ED9\u5176\u4ED6\u9A71\u52A8\u8C03\u7528\u7684\uFF0C\u5176\u672C\u8EAB\u6CA1\u6709\u521D\u59CB\u5316\u6B65\u9AA4\u3002...","topics/sdk/cmu/cmu-key-procedures_2.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@Clock \u548C Reset \u9A71\u52A8\u521D\u59CB\u5316 CMU \u6A21\u5757\u7684\u521D\u59CB\u5316\u6D41\u7A0B\u5305\u62EC\u4EE5\u4E0B\u4E24\u4E2A\u4E3B\u8981\u90E8\u5206\uFF1A Clock \u9A71\u52A8\u521D\u59CB\u5316 Clock \u9A71\u52A8\u4E3B\u8981\u662F\u7ED9\u5176\u4ED6\u9A71\u52A8\u8C03\u7528\u7684\uFF0C\u5176\u672C\u8EAB\u6CA1\u6709\u521D\u59CB\u5316\u6B65\u9AA4\u3002 Reset \u9A71\u52A8\u521D\u59CB\u5316 Reset \u9A71\u52A8\u4E3B\u8981\u662F\u7ED9\u5176\u4ED6\u9A71\u52A8\u8C03\u7528\u7684\uFF0C\u5176\u672C\u8EAB\u6CA1\u6709\u521D\u59CB\u5316\u6B65\u9AA4\u3002...","topics/sdk/cmu/cmu-test-guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@CMU \u6A21\u5757\u8D1F\u8D23\u4E3A\u5176\u4ED6\u786C\u4EF6\u6A21\u5757\u63D0\u4F9B\u5176\u65F6\u949F\u548C\u590D\u4F4D\u4FE1\u53F7\u3002\u56E0\u6B64\uFF0CCMU \u7684\u9A71\u52A8\u6240\u63D0\u4F9B\u7684 API \u63A5\u53E3\u662F\u4F9B\u5176\u5B83\u5916\u8BBE\u6A21\u5757\u4F7F\u7528\uFF0C\u800C\u4E0D\u662F\u76F4\u63A5\u5411\u7528\u6237\u5C42\u63D0\u4F9B API \u63A5\u53E3\u3002\u5173\u4E8E CMU \u6A21\u5757\u7684\u5177\u4F53\u7684\u6D4B\u8BD5\u65B9\u5F0F\uFF0C\u53EF\u4EE5\u53C2\u8003 \u8C03\u8BD5\u6307\u5357...","topics/sdk/cmu/cmu-test-guide_2.html@@@\u6D4B\u8BD5\u6307\u5357@@@CMU \u6A21\u5757\u8D1F\u8D23\u4E3A\u5176\u4ED6\u786C\u4EF6\u6A21\u5757\u63D0\u4F9B\u5176\u65F6\u949F\u548C\u590D\u4F4D\u4FE1\u53F7\u3002\u56E0\u6B64\uFF0CCMU \u7684\u9A71\u52A8\u6240\u63D0\u4F9B\u7684 API \u63A5\u53E3\u662F\u4F9B\u5176\u5B83\u5916\u8BBE\u6A21\u5757\u4F7F\u7528\uFF0C\u800C\u4E0D\u662F\u76F4\u63A5\u5411\u7528\u6237\u5C42\u63D0\u4F9B API \u63A5\u53E3\u3002\u5173\u4E8E CMU \u6A21\u5757\u7684\u5177\u4F53\u7684\u6D4B\u8BD5\u65B9\u5F0F\uFF0C\u53EF\u4EE5\u53C2\u8003 \u8C03\u8BD5\u6307\u5357...","topics/sdk/cmu/cmu_configure_lb.html@@@CMU \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E Clock \u9A71\u52A8\u4F7F\u80FD Device Drivers Common Clock Framework---> [*] Clock driver for ArtInChip SoC Reset \u9A71\u52A8\u4F7F\u80FD Device Drivers Reset Controller Support---> [*] ArtInChip Reset Driver DTS \u914D\u7F6E Clock DTS \u914D\u7F6E cmu...","topics/sdk/cmu/cmu_configure_lite.html@@@CMU \u914D\u7F6E@@@CMU \u662F\u6BCF\u4E2A\u7CFB\u7EDF\u7684\u5FC5\u9700\u6A21\u5757\uFF0C\u56E0\u6B64 CMU \u9A71\u52A8\u9ED8\u8BA4\u4F1A\u88AB\u7F16\u8BD1\u8FDB\u7CFB\u7EDF\uFF0C\u4E0D\u9700\u8981\u5728 scons --menuconfig \u83DC\u5355\u4E2D\u8FDB\u884C\u4F7F\u80FD\u3002 \u5728 Luban-Lite \u4E2D\uFF0C\u9700\u5728\u677F\u7EA7\u521D\u59CB\u5316\u548C\u6A21\u5757\u9A71\u52A8\u521D\u59CB\u5316\u65F6\u914D\u7F6E\u7CFB\u7EDF\u65F6\u949F\u3002CMU \u6A21\u5757\u914D\u7F6E\u5305\u62EC\u4EE5\u4E0B\u51E0\u4E2A\u65B9\u9762\uFF1A cmu_configure_lb.html#cmu_0__clock cmu_configure_lb.html#cmu_0__id2...","topics/sdk/d13x_bare_boot/brom-load-limit-and-notes.html@@@Boot ROM \u76F4\u63A5\u52A0\u8F7D\u7684\u9650\u5236\u4E0E\u6CE8\u610F\u4E8B\u9879@@@\u542F\u52A8\u901F\u5EA6 Boot ROM \u8FD0\u884C\u65F6\uFF1A CPU \u4EC5\u8DD1\u5728 24 MHz \u6CA1\u6709\u4F7F\u80FD Cache \u6CA1\u6709\u4F7F\u80FD\u4E2D\u65AD \u56E0\u6B64\u5982\u679C APP \u8F83\u5927\uFF0C\u53EF\u80FD\u51FA\u73B0\u52A0\u8F7D\u901F\u5EA6\u8F83\u6162\u7684\u60C5\u51B5\u3002 SPINAND/eMMC \u52A0\u8F7D\u7684\u955C\u50CF\u5927\u5C0F SPINAND\uFF1AAPP \u4E0D\u80FD\u8D85\u8FC7 2 \u4E2A\u7269\u7406\u5757\u7684\u5927\u5C0F\uFF0C\u5982\u679C\u8D85\u8FC7\uFF0C\u5219\u5E94\u8BE5\u4F7F\u7528 BootLoader eMMC \uFF1AAPP \u4E0D\u80FD\u8D85\u8FC7 512K Byte\uFF0C\u5982\u679C\u8D85\u8FC7\uFF0C\u5219\u5E94\u8BE5\u4F7F\u7528 BootLoader...","topics/sdk/d13x_bare_boot/generate-cus-brom-app.html@@@\u751F\u6210\u5BA2\u5236\u5316\u7684 Boot ROM \u542F\u52A8\u7A0B\u5E8F@@@\u82AF\u7247\u5728\u4E0A\u7535\u542F\u52A8\u65F6\uFF0C\u9996\u5148\u8FD0\u884C\u82AF\u7247\u5185\u90E8\u7684 Boot ROM \u7A0B\u5E8F\uFF0CBoot ROM \u7A0B\u5E8F\u52A0\u8F7D\u5E76\u8FD0\u884C\u4E0B\u4E00\u7EA7\u7A0B\u5E8F\u3002 Boot ROM \u52A0\u8F7D\u7684\u7A0B\u5E8F\u9700\u8981\u6309\u7167\u4E00\u5B9A\u7684\u683C\u5F0F\u6253\u5305\u624D\u4F1A\u88AB\u8FD0\u884C\u3002\u5177\u4F53\u7684\u6253\u5305\u683C\u5F0F\u53EF\u53C2\u8003\u7528\u6237\u624B\u518C\u7684\u542F\u52A8\u7AE0\u8282\u3002\u5236\u4F5C\u5BA2\u5236\u5316 BROM \u542F\u52A8\u7A0B\u5E8F\u65F6\uFF0C\u9700\u8981\u505A\u597D\u76F8\u5173\u7684\u8FDE\u63A5\u5730\u5740\u3001\u5185\u5B58\u7A7A\u95F4\u5206\u914D\u7B49\u89C4\u5212\uFF1A \u6CE8\uFF1A \u5173\u4E8E\u542F\u52A8\u955C\u50CF\u683C\u5F0F\uFF0C\u53EF\u67E5\u770B\u7528\u6237\u76F8\u5173\u7AE0\u8282\u3002 \u914D\u7F6E\u542F\u52A8\u955C\u50CF\u683C\u5F0F\u4E2D\u7684\u4EE5\u4E0B\u5173\u952E\u5B57\u6BB5\uFF1A Loader binary...","topics/sdk/d13x_bare_boot/index.html@@@\u5BA2\u5236\u5316\u542F\u52A8@@@Luban-Lite SDK \u652F\u6301\u5BA2\u5236\u5316\u542F\u52A8\u65B9\u6848\uFF0C\u5373\u5728\u82AF\u7247\u4E0A\u7535\u540E\u8FD0\u884C\u5BA2\u5236\u5316\u5F00\u53D1\u7684\u7A0B\u5E8F\uFF0C\u800C\u4E0D\u662F Luban-Lite SDK \u7F16\u8BD1\u51FA\u6765\u7684\u7A0B\u5E8F\u3002\u672C\u8282\u6F14\u793A\u4E86\u5982\u4F55\u8BA9 CPU \u4E0A\u7535\u7ACB\u523B\u8FD0\u884C\u5BA2\u5236\u5316\u7684\u7A0B\u5E8F\u3002...","topics/sdk/d13x_bare_boot/init-config-prsam.html@@@\u521D\u59CB\u5316\u5E76\u4F7F\u7528 PSRAM@@@\u5BF9\u4E8E\u5408\u5C01 PSRAM \u7684\u82AF\u7247\uFF0C\u5982\u679C\u9700\u8981\u4F7F\u7528 PSRAM\uFF0C\u53EF\u4EE5\u4F7F\u7528 PBP \u7A0B\u5E8F\u5BF9 PSRAM \u8FDB\u884C\u521D\u59CB\u5316\u3002 PBP \u7A0B\u5E8F\u662F Boot ROM \u8FD0\u884C\u7684\u7A0B\u5E8F\uFF0C\u8BBE\u8BA1\u4E3A Boot ROM \u7684\u6269\u5C55\uFF0C\u7528\u4E8E\u505A DRAM/PSRAM \u7684\u521D\u59CB\u5316\u3002 PBP \u7A0B\u5E8F\u8FD0\u884C\u5B8C\u4E4B\u540E\uFF0C\u53EF\u4EE5\u76F4\u63A5\u8FD4\u56DE Boot ROM \u7136\u540E\u7EE7\u7EED\u8DF3\u8F6C\u6267\u884C\u7528\u6237\u7684\u7A0B\u5E8F\u3002 \u5F53\u524D PBP \u7A0B\u5E8F\u53EF\u4EE5\u5B8C\u6210\u4EE5\u4E0B\u529F\u80FD\uFF1A \u914D\u7F6E\u4E0B\u5217\u53C2\u6570\uFF0C\u5B8C\u6210 PSRAM \u7684\u521D\u59CB\u5316\u3002...","topics/sdk/d13x_bare_boot/reference-configuration.html@@@image_cfg.json \u53C2\u8003\u914D\u7F6E@@@\u672C\u914D\u7F6E\u4E3A SPINOR\uFF0C\u4F7F\u7528 SDK \u7684 BootLoader \u8FDB\u884C\u70E7\u5F55\u7684\u53C2\u8003\u914D\u7F6E\u3002 { "spi-nor" : { "size" : "16m" , // Size of SPI NOR "partitions" : { "spl" : { "size" : "1m" }, }, }, "image" : { "info" : { // Header information about...","topics/sdk/d13x_bare_boot/run_burn_cus_app.html@@@\u8FD0\u884C\u548C\u70E7\u5F55\u5BA2\u5236\u5316\u7A0B\u5E8F@@@\u8981\u8FD0\u884C\u4E0A\u9762\u751F\u6210\u7684 app.aic \u7A0B\u5E8F\uFF0C\u6709\u4E09\u4E2A\u9014\u5F84\uFF1A \u4F7F\u7528 USB/UART \u5DE5\u5177\u4E0B\u8F7D\u8FD0\u884C \u653E\u5230 SD \u5361\u4E2D\u8FD0\u884C \u70E7\u5F55\u5230 Flash \u4E2D\u8FD0\u884C \u4F7F\u7528 USB/UART \u5DE5\u5177\u4E0B\u8F7D\u8FD0\u884C \u5F53 Flash \u4E2D\u6CA1\u6709\u53EF\u542F\u52A8\u7684\u955C\u50CF\u65F6\uFF0CBoot ROM \u4F1A\u542F\u52A8\u5931\u8D25\uFF0C\u81EA\u52A8\u8FDB\u5165 USB/UART \u5347\u7EA7\u6A21\u5F0F\u3002\u9075\u7167\u4EE5\u4E0B\u6B65\u9AA4\uFF0C\u4E0B\u8F7D\u548C\u8FD0\u884C\u5BA2\u5236\u5316\u7684\u542F\u52A8\u955C\u50CF\uFF1A \u9009\u62E9\u4EE5\u4E0B\u4EFB\u610F\u4E00\u79CD\u65B9\u5F0F\u53CA\u76F8\u5E94\u64CD\u4F5C\uFF1A \u4F7F\u7528 USB...","topics/sdk/display/disp_conf_h.html@@@disp_conf \u5934\u6587\u4EF6\u914D\u7F6E@@@\u5728\u663E\u793A\u9A71\u52A8\u4E2D\uFF0C disp_conf.h \u5934\u6587\u4EF6\u7528\u4E8E\u914D\u7F6E\u663E\u793A\u63A5\u53E3\u7684\u5B8F\u5B9A\u4E49\u3002\u5F15\u5165 disp_conf.h \u5934\u6587\u4EF6\u662F\u4E3A\u4E86\u907F\u514D menuconfig \u53C2\u6570\u8FC7\u591A\u5BFC\u81F4\u8BEF\u6539\u3002\u8FD9\u90E8\u5206\u53C2\u6570\u53EF\u65B9\u4FBF PCB layout \u8D70\u7EBF\uFF0C\u914D\u7F6E\u6709\u8BEF\u4F1A\u5BFC\u81F4\u663E\u793A\u5F02\u5E38\u3002\u63A8\u8350\u5728\u786C\u4EF6\u5DE5\u7A0B\u5E08\u7684\u786E\u8BA4\u4E0B\uFF0C\u7ED3\u5408\u82AF\u7247\u624B\u518C\u8FDB\u884C\u4FEE\u6539\u3002 \u672C\u8282\u4ECB\u7ECD\u4E86\u5E38\u89C1\u7684 LVDS \u548C MIPI-DSI \u53C2\u6570\u53CA\u5176\u914D\u7F6E\u3002 LVDS \u53C2\u6570 /* lvds link swap...","topics/sdk/display/display-design_intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@...","topics/sdk/display/display-design_intro_2.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@...","topics/sdk/display/display_backlight.html@@@\u80CC\u5149\u8BBE\u8BA1@@@Backlight \u4F7F\u7528\u5185\u6838\u4E2D pwm-backlight \u80CC\u5149\u9A71\u52A8\uFF0C\u4EE3\u7801\u89C1 linux-5.10driversvideobacklightpwm_bl.c \u3002 Panel \u9A71\u52A8\u53EF\u4EE5\u901A\u8FC7 DTS \u83B7\u53D6\u80CC\u5149\u9A71\u52A8\u7684 device node\uFF0C\u7136\u540E backlight API \u63A7\u5236\u80CC\u5149\u3002 backlight_enable() \u4F7F\u80FD\u80CC\u5149 backlight_update_status() \u5BF9\u80CC\u5149\u72B6\u6001\u8FDB\u884C\u66F4\u65B0...","topics/sdk/display/display_blending.html@@@Blending@@@\u5BF9\u4E8E\u663E\u793A\u5F15\u64CE (Display Engine) \u652F\u6301\u4E00\u4E2A UI \u56FE\u5C42\u548C\u4E00\u4E2A Video \u56FE\u5C42\u7684\u4EA7\u54C1\u7CFB\u5217\uFF0C\u53EF\u4EE5\u4F7F\u7528 blending \u529F\u80FD\uFF0C\u5C06\u4E24\u4E2A\u6216\u591A\u4E2A\u56FE\u50CF\u56FE\u5C42\u4EE5\u67D0\u79CD\u65B9\u5F0F\u7ED3\u5408\u5728\u4E00\u8D77\uFF0C\u4EE5\u4EA7\u751F\u65B0\u7684\u56FE\u50CF\u6548\u679C\u3002\u5728 UI \u56FE\u5C42\u548C Video \u56FE\u5C42\u91CD\u53E0\u7684\u533A\u57DF\uFF0C\u53EF\u4EE5\u8FDB\u884C Color Key \u64CD\u4F5C\u548C Alpha \u53E0\u52A0\u64CD\u4F5C\uFF0C\u5176\u4E2D Color Key \u64CD\u4F5C\u4F18\u5148\u4E8E Alpha \u53E0\u52A0\u3002 Alpha Blending...","topics/sdk/display/display_boot_logo.html@@@Boot Logo@@@ArtInChip \u5E73\u53F0\u652F\u6301\u663E\u793A png/jpg \u683C\u5F0F\u7684 logo \u56FE\u7247\uFF0CLuban SDK \u9ED8\u8BA4\u4F7F\u7528 png \u683C\u5F0F\u7684 logo \u56FE\u7247\u3002 \u5173\u4E8E\u5982\u4F55\u66F4\u6362 LOGO \u56FE\u7247\uFF0C\u53C2\u8003 \u4E2D\u7684 \u56FE\u50CF\u663E\u793A \u3002...","topics/sdk/display/display_burn_process.html@@@\u70E7\u5F55\u8FDB\u5EA6\u6761@@@ArtInChip \u5E73\u53F0\u652F\u6301 SDCard / Udisk \u70E7\u5F55\u65F6\u663E\u793A\u8FDB\u5EA6\u6761\u548C\u6570\u5B57\u767E\u5206\u6BD4\u3002\u8FDB\u5EA6\u6761\u548C\u6570\u5B57\u767E\u5206\u6BD4\u901A\u8FC7 CPU \u8FDB\u884C\u7ED8\u5236\u3002 \u8FDB\u5EA6\u6761\u9ED8\u8BA4\u5C45\u4E2D\uFF0C\u663E\u793A\u84DD\u7EFF\u4E24\u79CD\u989C\u8272\u3002\u6570\u5B57\u767E\u5206\u6BD4\u901A\u8FC7 fb console \u5B9E\u73B0\uFF0Cfb console \u9ED8\u8BA4\u652F\u6301 32x32 \u70B9\u9635\u5B57\u4F53\uFF0CASCII 32 - 127\u3002 \u6267\u884C\u4E0B\u5217\u6B65\u9AA4\uFF0C\u53EF\u5728\u70E7\u5F55\u65F6\u663E\u793A\u8FDB\u5EA6\u6761\u548C\u6570\u5B57\u767E\u5206\u6BD4\uFF1A \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons...","topics/sdk/display/display_color_property.html@@@\u8272\u5F69\u8C03\u6574@@@ArtInChip \u5E73\u53F0\u663E\u793A\u5F15\u64CE\u652F\u6301\u8272\u5F69\u8C03\u6574\uFF0C\u8986\u76D6 UI \u56FE\u5C42\u548C Video \u56FE\u5C42\u3002 \u901A\u8FC7\u8C03\u6574\u4EAE\u5EA6\uFF0C\u5BF9\u6BD4\u5EA6\uFF0C\u9971\u548C\u5EA6\uFF0C\u8272\u8C03\u7B49\u5C5E\u6027\uFF0C\u53EF\u4EE5\u4F7F\u540C\u4E00\u5F20\u56FE\u7247\u6216\u4E00\u6BB5\u89C6\u9891\u5448\u73B0\u4E0D\u540C\u7684\u663E\u793A\u6548\u679C\uFF0C \u80FD\u8BA9\u8D28\u91CF\u4E0D\u540C\u7684 LCD \u5916\u8BBE\u62E5\u6709\u76F8\u8FD1\u7684\u663E\u793A\u6548\u679C\u3002 \u5BF9\u4E8E\u8272\u5F69\u8C03\u6574\u7684\u76F8\u5173\u53C2\u6570\uFF0C\u652F\u6301 device tree \u914D\u7F6E\uFF0C\u5728\u5E94\u7528\u542F\u52A8\u65F6\u5373\u65F6\u751F\u6548\u3002\u4E5F\u652F\u6301 ioctl \u52A8\u6001\u8C03\u6574\uFF0C\u65B9\u4FBF\u8C03\u8BD5\u3002UI \u56FE\u5C42\u548C Video...","topics/sdk/display/display_color_property_lite.html@@@\u8272\u5F69\u8C03\u6574@@@ArtInChip \u5E73\u53F0\u663E\u793A\u5F15\u64CE\u652F\u6301\u8272\u5F69\u8C03\u6574\uFF0C\u5F53\u524D Luban-Lite SDK \u4EC5\u652F\u6301 Video \u56FE\u5C42\u8FDB\u884C\u8272\u5F69\u8C03\u6574\u3002 \u901A\u8FC7\u8C03\u6574\u4EAE\u5EA6\uFF0C\u5BF9\u6BD4\u5EA6\uFF0C\u9971\u548C\u5EA6\uFF0C\u8272\u8C03\u7B49\u5C5E\u6027\uFF0C\u53EF\u4EE5\u4F7F\u540C\u4E00\u5F20\u56FE\u7247\u6216\u4E00\u6BB5\u89C6\u9891\u5728 video \u56FE\u5C42\u5448\u73B0\u4E0D\u540C\u7684\u663E\u793A\u6548\u679C\u3002\u8BE6\u7EC6\u914D\u7F6E\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u5B9A\u4E49\u7ED3\u6784\u4F53 aicfb_disp_prop \uFF0C\u7528\u4E8E\u5B58\u50A8\u4EAE\u5EA6\u3001\u5BF9\u6BD4\u5EA6\u3001\u9971\u548C\u5EA6\u548C\u8272\u8C03\u7684\u53C2\u6570\u3002 \u5B9A\u4E49 ioctl \u547D\u4EE4\uFF0C\u5206\u522B\u7528\u4E8E\u8BBE\u7F6E\u548C\u83B7\u53D6\u663E\u793A\u5C5E\u6027\u3002...","topics/sdk/display/display_config.html@@@Display \u914D\u7F6E@@@\u663E\u793A\u6A21\u5757\u7684\u53C2\u6570\u914D\u7F6E\uFF0C\u5305\u62EC menuconfig \u914D\u7F6E \u548C dts \u914D\u7F6E\u3002...","topics/sdk/display/display_config_lite.html@@@Display \u914D\u7F6E@@@\u672C\u8282\u4ECB\u7ECD\u663E\u793A\u5B50\u7CFB\u7EDF\u7684\u4EE5\u4E0B\u7C7B\u578B\u7684\u53C2\u6570\u914D\u7F6E\uFF1A menuconfig \u914D\u7F6E \uFF1ALCD \u5916\u8BBE\u6216\u8005\u6539\u52A8\u9891\u7E41\u7684\u663E\u793A\u53C2\u6570\u3002 disp_conf \u5934\u6587\u4EF6\u914D\u7F6E \uFF1A\u663E\u793A\u63A5\u53E3\u5B8F\u5B9A\u4E49\u53C2\u6570\u3002 \u5F15\u5165 disp_conf.h \u5934\u6587\u4EF6\u662F\u4E3A\u4E86\u907F\u514D menuconfig \u53C2\u6570\u8FC7\u591A\u5BFC\u81F4\u8BEF\u6539\u3002 disp_conf.h \u4E2D\u7684\u53C2\u6570\u53EF\u65B9\u4FBF PCB layout...","topics/sdk/display/display_data_structure.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@uapi/video/artinchip_video.h struct aic_rect struct aic_rect { int x; int y; int width; int height; }; struct aic_point struct aic_point { int x; int y; }; struct aic_size struct aic_size { int width...","topics/sdk/display/display_data_structure_lite.html@@@\u6570\u636E\u7ED3\u6784\u8BF4\u660E@@@\u672C\u8282\u6BB5\u4ECB\u7ECD\u4E86\u591A\u4E2A\u7ED3\u6784\u4F53\u548C\u679A\u4E3E\u7C7B\u578B\u7684\u4EE3\u7801\u793A\u4F8B\uFF0C\u7528\u4E8E\u63CF\u8FF0\u548C\u7BA1\u7406\u663E\u793A\u6846\u67B6\u7F13\u51B2\u533A (Framebuffer) \u7684\u914D\u7F6E\uFF0C\u5305\u62EC\u77E9\u5F62\u533A\u57DF\u3001\u70B9\u5750\u6807\u3001\u5927\u5C0F\u3001\u50CF\u7D20\u683C\u5F0F\u3001\u7F13\u51B2\u533A\u5C5E\u6027\u3001\u56FE\u5C42\u6570\u636E\u3001\u989C\u8272\u952E\u3001Alpha \u6DF7\u5408\u3001CCM\uFF08Color Correction Matrix\uFF09\u3001Gamma \u6821\u6B63\u4EE5\u53CA\u5C4F\u5E55\u4FE1\u606F\u3002 mpp_types.h \u8DEF\u5F84\uFF1A bsp/artinchip/include/uapi/mpp_types.h...","topics/sdk/display/display_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u5982\u65E0\u7279\u6B8A\u8BF4\u660E\uFF0C\u672C\u8282\u63CF\u8FF0\u7684 DE \u9A71\u52A8\u8868\u793A\u663E\u793A\u6A21\u5757\u7684\u9A71\u52A8\uFF0C\u5305\u542B\u663E\u793A\u5F15\u64CE\u6A21\u5757\u3001\u663E\u793A\u63A5\u53E3\u6A21\u5757\u4EE5\u53CA LCD \u7684 panel \u9A71\u52A8\uFF0C\u5E76\u975E\u4EC5\u6307\u793A\u663E\u793A\u5F15\u64CE\u3002 \u5173\u4E8E\u672C\u8282\u6D89\u53CA\u7684 Component\u3001CMA \u548C DMA-BUF \u7684\u8BE6\u7EC6\u8BBE\u8BA1\u63CF\u8FF0\uFF0C\u53EF\u67E5\u770B \u8BBE\u8BA1\u8BF4\u660E \u3002 \u6253\u5F00 DE \u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C \uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\uFF0C\u6253\u5F00 DE \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A Linux...","topics/sdk/display/display_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u6CE8\uFF1A DE colorbar \u4F18\u5148\u7EA7\u6700\u9AD8\uFF0C\u8FDB\u884C\u5176\u4ED6\u6D4B\u8BD5\u524D\u9700\u8981\u7981\u7528 DE colorbar\u3002 \u6253\u5F00\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u542F\u7528\u663E\u793A\u9A71\u52A8\u7684\u8C03\u8BD5\u4FE1\u606F\u8F93\u51FA pr_debug() \uFF0C\u5E76\u7F16\u8BD1\u663E\u793A\u9A71\u52A8\u6D4B\u8BD5\u7528\u4F8B\uFF1A Drivers options ---> Drivers debug --->...","topics/sdk/display/display_demo.html@@@Demo@@@MPP FB \u63A5\u53E3\u4F7F\u7528 MPP FB \u63A5\u53E3\u64CD\u4F5C\u793A\u4F8B\uFF1A int main( void ) { struct aicfb_screeninfo 9 nfo = { 0 }; struct mpp_fb *fb; int zero, ret; mpp_fb_probe(); // \u63A2\u6D4B MPP FB fb = mpp_fb_open(); // \u6253\u5F00 MPP FB \u53E5\u67C4 if (!fb) return...","topics/sdk/display/display_demo_2.html@@@Demo@@@MPP FB \u63A5\u53E3\u4F7F\u7528 MPP FB \u63A5\u53E3\u64CD\u4F5C\u793A\u4F8B\uFF1A int main( void ) { struct aicfb_screeninfo 9 nfo = { 0 }; struct mpp_fb *fb; int zero, ret; mpp_fb_probe(); // \u63A2\u6D4B MPP FB fb = mpp_fb_open(); // \u6253\u5F00 MPP FB \u53E5\u67C4 if (!fb) return...","topics/sdk/display/display_driver-intro.html@@@\u5C4F\u9A71\u52A8\u652F\u6301@@@\u5C4F\u6E90\u7801\u4F4D\u7F6E\uFF1A Kernel: source/linux-5.10/drivers/video/artinchip/disp/panel/ Uboot: source/uboot-2021.10/drivers/video/artinchip/display/panel/ LCD \u5C4F\u9A71\u52A8\uFF0C\u5373 panel\uFF0C\u672C\u8D28\u4E0A\u662F\u4E00\u4E2A\u56DE\u8C03\u51FD\u6570\u7684\u96C6\u5408\u3002\u65B0\u5C4F\u9A71\u52A8\u5B9E\u9645\u4E0A\u662F\u91CD\u65B0\u5B9E\u73B0 aic_panel_funcs...","topics/sdk/display/display_faq_screen.html@@@\u8C03\u5C4F\u5E38\u89C1\u95EE\u9898@@@PRGB \u63A5\u53E3\u5C4F \u73B0\u8C61\u4E00\uFF1A\u9ED1\u5C4F \u68C0\u67E5\u80CC\u5149\u662F\u5426\u5DF2\u4EAE \u6392\u9664 1 \u540E\u786E\u5B9A\u5C4F\u89C4\u683C\u4E66\u662F SYNC \u6A21\u5F0F\u8FD8\u662F DE \u6A21\u5F0F\uFF0C\u68C0\u67E5\u786C\u4EF6\u7535\u8DEF\u76F8\u5173\u63A7\u5236\u4FE1\u53F7\u662F\u5426\u6309\u7167\u5C4F\u89C4\u683C\u4E66\u8981\u6C42\u5B8C\u6210\u4E0A\u4E0B\u62C9 \u6392\u9664 1\u30012 \u540E\uFF0C\u6D4B\u91CF pixelclk \u662F\u5426\u7B26\u5408\u5C4F\u89C4\u683C\u8981\u6C42\uFF0Cpixelclk \u8BA1\u7B97\u516C\u5F0F\u5982\u4E0B\uFF1A pixelclk = (hactive + hback-porch + hfront-porch + hsync-len) *...","topics/sdk/display/display_faq_screen_2.html@@@\u8C03\u5C4F\u5E38\u89C1\u95EE\u9898@@@PRGB \u63A5\u53E3\u5C4F \u73B0\u8C61\u4E00\uFF1A\u9ED1\u5C4F \u68C0\u67E5\u80CC\u5149\u662F\u5426\u5DF2\u4EAE \u6392\u9664 1 \u540E\u786E\u5B9A\u5C4F\u89C4\u683C\u4E66\u662F SYNC \u6A21\u5F0F\u8FD8\u662F DE \u6A21\u5F0F\uFF0C\u68C0\u67E5\u786C\u4EF6\u7535\u8DEF\u76F8\u5173\u63A7\u5236\u4FE1\u53F7\u662F\u5426\u6309\u7167\u5C4F\u89C4\u683C\u4E66\u8981\u6C42\u5B8C\u6210\u4E0A\u4E0B\u62C9 \u6392\u9664 1\u30012 \u540E\uFF0C\u6D4B\u91CF pixelclk \u662F\u5426\u7B26\u5408\u5C4F\u89C4\u683C\u8981\u6C42\uFF0Cpixelclk \u8BA1\u7B97\u516C\u5F0F\u5982\u4E0B\uFF1A pixelclk = (hactive + hback-porch + hfront-porch + hsync-len) *...","topics/sdk/display/display_faqs.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/display/display_fb_roatate_buffer_choice.html@@@\u573A\u666F\u9009\u62E9@@@ArtInChip \u5E73\u53F0\u5728\u8FDB\u884C\u5C4F\u5E55\u65CB\u8F6C\u65F6\uFF0C\u517C\u5BB9\u5355 buffer \u548C\u53CC buffer \u7684\u5E94\u7528\u7A0B\u5E8F\uFF0C\u53EF\u4EE5\u63D0\u4F9B\u591A\u79CD\u5C4F\u5E55\u65CB\u8F6C\u573A\u666F\u4F9B\u7528\u6237\u9009\u62E9\u3002\u5404\u79CD\u573A\u666F\u7684\u8BE6\u7EC6\u5BF9\u6BD4\u8BF4\u660E\u5982\u4E0B\u8868\u6240\u793A\uFF1A \u8868 1 . \u5C4F\u5E55\u65CB\u8F6C\u573A\u666F\u5BF9\u6BD4 \u573A\u666F \u4F18\u52BF \u52A3\u52BF \u53CC\u7ED8\u5236 buffer \u548C\u53CC\u663E\u793A buffer \u5BF9\u5E94\u7528\u53CB\u597D\uFF0C\u4EC5\u9700\u4FEE\u6539 dts \u914D\u7F6E\u5373\u53EF\u8FBE\u6210\u7AD6\u5C4F\u6A2A\u7528\uFF0C\u4E0D\u9700\u8981\u4FEE\u6539\u4E0A\u5C42\u5E94\u7528\u3002 \u5360\u7528\u7684\u5185\u5B58\u8D44\u6E90\u591A\uFF0C\u9700\u8981 4 \u5757 buf\uFF0C\u6709\u4E00\u5757\u7ED8\u5236 buf...","topics/sdk/display/display_fb_roatate_buffer_choice_lite.html@@@\u573A\u666F\u9009\u62E9@@@ArtInChip \u5E73\u53F0\u5728\u8FDB\u884C\u5C4F\u5E55\u65CB\u8F6C\u65F6\uFF0C\u517C\u5BB9\u5355 buffer \u548C\u53CC buffer \u7684\u5E94\u7528\u7A0B\u5E8F\uFF0C\u53EF\u4EE5\u63D0\u4F9B\u591A\u79CD\u5C4F\u5E55\u65CB\u8F6C\u573A\u666F\u4F9B\u7528\u6237\u9009\u62E9\u3002\u5404\u79CD\u573A\u666F\u7684\u8BE6\u7EC6\u5BF9\u6BD4\u8BF4\u660E\u5982\u4E0B\u8868\u6240\u793A\uFF1A \u8868 1 . \u5C4F\u5E55\u65CB\u8F6C\u573A\u666F\u5BF9\u6BD4 \u573A\u666F \u4F18\u52BF \u52A3\u52BF \u53CC\u7ED8\u5236 buffer \u548C\u53CC\u663E\u793A buffer \u5BF9\u5E94\u7528\u53CB\u597D\uFF0C\u4EC5\u9700\u4FEE\u6539 dts \u914D\u7F6E\u5373\u53EF\u8FBE\u6210\u7AD6\u5C4F\u6A2A\u7528\uFF0C\u4E0D\u9700\u8981\u4FEE\u6539\u4E0A\u5C42\u5E94\u7528\u3002 \u5360\u7528\u7684\u5185\u5B58\u8D44\u6E90\u591A\uFF0C\u9700\u8981 4 \u5757 buf\uFF0C\u6709\u4E00\u5757\u7ED8\u5236 buf...","topics/sdk/display/display_fb_rotation.html@@@\u5C4F\u5E55\u65CB\u8F6C@@@ArtInChip \u5E73\u53F0\u652F\u6301\u5C4F\u5E55\u65CB\u8F6C\uFF0C\u652F\u6301\u7AD6\u5C4F\u6A2A\u7528\u548C\u6A2A\u5C4F\u7AD6\u7528\uFF0C\u517C\u5BB9\u5355\u7F13\u51B2 \u548C\u53CC\u7F13\u51B2\u7684\u5E94\u7528\u7A0B\u5E8F\u3002 Display Engine \u5E76\u4E0D\u63D0\u4F9B\u65CB\u8F6C\u529F\u80FD\uFF0C\u65CB\u8F6C\u662F\u7531\u663E\u793A\u9A71\u52A8\u8C03\u7528 Graphics Engine \u5B9E\u73B0\u7684\u3002\u652F\u6301\u987A\u65F6\u9488\u65CB\u8F6C 0\u00B0/ 90\u00B0/ 180\u00B0/ 270\u00B0\u3002 LCD \u9002\u914D \u65E0\u8BBA\u662F\u7AD6\u5C4F\u6A2A\u7528\uFF0C\u8FD8\u662F\u6A2A\u5C4F\u7AD6\u7528\uFF0C\u5728\u9002\u914D LCD \u5C4F\u5E55\u65F6\uFF0C\u6309\u7167\u5C4F\u5E55\u7684\u7269\u7406\u5BBD\u9AD8\u914D\u7F6E\u65F6\u5E8F\u53C2\u6570\u5373\u53EF\uFF0C\u4E0D\u9700\u8981\u5C06\u65F6\u5E8F\u53C2\u6570\u4E2D\u7684\u5BBD\u9AD8\u4E92\u6362\u3002...","topics/sdk/display/display_fb_rotation_lite.html@@@\u5C4F\u5E55\u65CB\u8F6C@@@ArtInChip \u5E73\u53F0\u652F\u6301\u5C4F\u5E55\u65CB\u8F6C\uFF0C\u652F\u6301\u7AD6\u5C4F\u6A2A\u7528\u548C\u6A2A\u5C4F\u7AD6\u7528\uFF0C\u517C\u5BB9\u5355\u7F13\u51B2 \u548C\u53CC\u7F13\u51B2\u7684\u5E94\u7528\u7A0B\u5E8F\u3002 Display Engine \u5E76\u4E0D\u63D0\u4F9B\u65CB\u8F6C\u529F\u80FD\uFF0C\u65CB\u8F6C\u662F\u7531\u663E\u793A\u9A71\u52A8\u8C03\u7528 Graphics Engine \u5B9E\u73B0\u7684\u3002\u652F\u6301\u987A\u65F6\u9488\u65CB\u8F6C 0\u00B0/ 90\u00B0/ 180\u00B0/ 270\u00B0\u3002 \u5C4F\u5E55\u65CB\u8F6C\u529F\u80FD\u914D\u7F6E\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u9002\u914D LCD \u5C4F\u5E55\u3002 \u65E0\u8BBA\u662F\u7AD6\u5C4F\u6A2A\u7528\uFF0C\u8FD8\u662F\u6A2A\u5C4F\u7AD6\u7528\uFF0C\u5728\u9002\u914D LCD...","topics/sdk/display/display_init_process.html@@@\u521D\u59CB\u5316\u6D41\u7A0B@@@Probe \u548C Bind \u8FC7\u7A0B \u4E3A\u4E86\u7EA6\u675F\u521D\u59CB\u5316\u987A\u5E8F\uFF0CAICFB \u4E3A component \u7684 master \u8BBE\u5907\uFF0CDE\u3001DI \u548C panel \u4E3A slave \u8BBE\u5907\uFF0Ccomponent \u6846\u67B6\u4FDD\u8BC1 master \u7684\u521D\u59CB\u5316\u987A\u5E8F\u5728\u6240\u6709 slave \u4E4B\u540E\u3002\u5404\u6A21\u5757\u7684\u521D\u59CB\u5316\u987A\u5E8F\u5982\u4E0B\uFF1A \u56FE 1 . \u663E\u793A\u6A21\u5757\u7684\u521D\u59CB\u5316\u987A\u5E8F \u5176\u4E2D\uFF1A Master \u8C03\u7528 component_match_add() \u63A5\u53E3\u58F0\u660E\u4E00\u4E2A match...","topics/sdk/display/display_interface.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@AICFB \u663E\u793A\u9A71\u52A8\u63A5\u53E3\u5206\u53EF\u4E3A\u6807\u51C6\u529F\u80FD\u548C\u6269\u5C55\u529F\u80FD\u3002 \u6807\u51C6\u529F\u80FD\uFF1A \u5C06\u7269\u7406\u663E\u5B58\u6620\u5C04\u5230\u7528\u6237\u7A7A\u95F4 \u83B7\u53D6\u663E\u793A\u5C4F\u7684\u5206\u8FA8\u7387\u548C\u83B7\u53D6 Framebuffer \u7684\u50CF\u7D20\u683C\u5F0F \u652F\u6301\u5355\u7F13\u51B2 Framebuffer \u548C\u53CC\u7F13\u51B2 Framebuffer \u53EF\u914D\u7F6E \u6269\u5C55\u529F\u80FD\uFF1A \u83B7\u53D6\u56FE\u5C42\u4E2A\u6570 \u83B7\u53D6\u56FE\u5C42\u80FD\u529B \u83B7\u53D6\u56FE\u5C42\u914D\u7F6E\u6570\u636E \u66F4\u65B0\u56FE\u5C42\u914D\u7F6E\u6570\u636E \u652F\u6301\u540C\u65F6\u66F4\u65B0\u591A\u56FE\u5C42\u914D\u7F6E\u6570\u636E \u652F\u6301\u56FE\u5C42 scaler \u8BBE\u7F6E \u652F\u6301 alpha blending...","topics/sdk/display/display_interface_lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Luban-Lite SDK \u901A\u8FC7 MPP \u4E2D\u95F4\u4EF6\uFF0C\u5BF9\u5916\u63D0\u4F9B\u4E00\u5957\u7EDF\u4E00\u7684\u63A5\u53E3\u6765\u63A7\u5236\u663E\u793A\u9A71\u52A8\uFF0C\u5C4F\u853D\u64CD\u4F5C\u7CFB\u7EDF\u5185\u6838\u548C\u88F8\u673A\u65B9\u6848\u7684\u5DEE\u5F02\u3002 \u4EE5\u4E0B\u662F Luban-Lite SDK \u7684\u4E3B\u8981\u529F\u80FD\u548C\u63A5\u53E3\u8BF4\u660E\uFF1A \u83B7\u53D6\u56FE\u5C42\u4E2A\u6570 \u83B7\u53D6\u56FE\u5C42\u80FD\u529B \u83B7\u53D6\u56FE\u5C42\u914D\u7F6E\u6570\u636E \u66F4\u65B0\u56FE\u5C42\u914D\u7F6E\u6570\u636E \u652F\u6301\u540C\u65F6\u66F4\u65B0\u591A\u56FE\u5C42\u914D\u7F6E\u6570\u636E \u652F\u6301\u56FE\u5C42 scaler \u8BBE\u7F6E \u652F\u6301 alpha blending \u8BBE\u7F6E \u652F\u6301 color key \u8BBE\u7F6E \u652F\u6301 disp...","topics/sdk/display/display_key_process.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B \u5728 menuconfig \u4E2D\u4F7F\u80FD LVDS \u663E\u793A\u63A5\u53E3\u548C simple panel \u540E\uFF0C\u663E\u793A\u9A71\u52A8\u7684\u521D\u59CB\u5316\u8FC7\u7A0B\u5982\u4E0B\uFF1A DE \u548C DI \u5339\u914D DE \u548C DI \u5339\u914D\u662F\u901A\u8FC7\u904D\u5386 drivers \u6307\u9488\u6570\u7EC4\uFF0C\u901A\u8FC7 component_type \u6765\u5339\u914D menuconfig \u6307\u5B9A\u7684 DI\u3002 DE/DI \u7684 driver \u5B58\u653E\u5728\u4E00\u4E2A\u6307\u9488\u6570\u7EC4\u4E2D\u3002DE \u9ED8\u8BA4\u4F7F\u80FD\uFF0CDI \u901A\u8FC7 menuconfig...","topics/sdk/display/display_mem_managment.html@@@\u9884\u7559\u5185\u5B58\u7BA1\u7406\u6D41\u7A0B@@@CMA Linux-3.5 \u5F15\u5165\u4E86\u4E00\u5957 Contiguous Memory Allocator\uFF0C\u7B80\u79F0 CMA\uFF0C\u57FA\u4E8E DMA \u6620\u5C04\u6846\u67B6\u4E3A\u5185\u6838\u63D0\u4F9B\u8FDE\u7EED\u5927\u5757\u5185\u5B58\u7684\u7533\u8BF7\u548C\u91CA\u653E\u3002CMA \u4E3B\u8981\u601D\u8DEF\u662F\u5C06\u9884\u7559\u5185\u5B58\u7EB3\u5165 DMA \u6620\u5C04\u7BA1\u7406\uFF0C\u53EF\u4EE5\u7ED9\u7CFB\u7EDF\u5185\u6240\u6709\u8BBE\u5907\u5171\u4EAB\u4F7F\u7528\uFF0C\u8FD9\u6837\u5C31\u65E2\u89E3\u51B3\u4E86\u4E3A GPU\u3001Camera\u3001\u663E\u793A\u7B49\u56FE\u50CF\u5904\u7406\u7C7B\u6A21\u5757\u9884\u7559\u5927\u5757\u7684\u8FDE\u7EED\u5185\u5B58\uFF0C\u53C8\u89E3\u51B3\u4E86\u9884\u7559\u5185\u5B58\u88AB\u7A7A\u7F6E\u7684\u95EE\u9898\uFF0C\u63D0\u5347\u5185\u5B58\u4F7F\u7528\u7387\u3002 CMA...","topics/sdk/display/display_menuconfig.html@@@menuconfig \u914D\u7F6E@@@\u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C \uFF0C\u8FDB\u5165 \u7684\u529F\u80FD\u914D\u7F6E\uFF0C\u4F7F\u80FD\u663E\u793A\u6A21\u5757\u9A71\u52A8\uFF1A Linux Device Drivers Graphics support ArtInChip Graphics ---> <*> ArtInChip Framebuffer support \u5C06\u663E\u793A\u63A5\u53E3\u7F16\u8BD1\u8FDB\u5185\u6838\u3002 \u53EF\u4EE5\u7F16\u8BD1\u6240\u6709\u663E\u793A\u63A5\u53E3\uFF0C\u4F46\u53EA\u6709 panel \u9A71\u52A8\u5BF9\u5E94\u7684\u663E\u793A\u63A5\u53E3\u80FD\u751F\u6548\u3002 Device Drivers...","topics/sdk/display/display_menuconfig_lite.html@@@menuconfig \u914D\u7F6E@@@\u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C \uFF0C\u8FDB\u5165 \u7684\u529F\u80FD\u914D\u7F6E\u3002 \u5728 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u4F7F\u80FD\u663E\u793A\u5F15\u64CE\u9A71\u52A8\uFF1A Board options ---> [*] Using Display Engine (DE) \u6839\u636E LCD \u5916\u8BBE\u7C7B\u578B\uFF0C\u9009\u62E9\u663E\u793A\u63A5\u53E3\u3002\u4EC5\u652F\u6301\u4F7F\u80FD\u4E00\u4E2A\u663E\u793A\u63A5\u53E3\u3002 \u4F8B\u5982\uFF0C\u9009\u62E9 Display LVDS interface \uFF1A Display Parameter...","topics/sdk/display/display_panel_port.html@@@\u5C4F\u9002\u914D\u6307\u5357@@@\u672C\u7AE0\u8282\u4ECB\u7ECD LCD \u5916\u8BBE\u5728 Luban-Lite \u4E0A\u7684\u9002\u914D\u65B9\u6CD5\u3002\u7528\u6237\u53EF\u9009\u62E9\u4EE5\u4E0B\u4EFB\u610F\u65B9\u5F0F\u914D\u7F6E\u5C4F\u53C2\u6570\uFF1A \u5C06\u4EE5\u4E0B\u5C4F\u53C2\u6570\u5199\u5165 panel \u9A71\u52A8\u6E90\u7801\u4E2D\uFF1A \u6CE8\uFF1A \u5BF9\u4E8E\u5C4F\u65F6\u5E8F\u53C2\u6570\uFF0C\u53EA\u6709\u5F53 board.dts \u6587\u4EF6\u7684 panel \u7ED3\u70B9\u6CA1\u6709\u8BBE\u7F6E display-timings \u5B50\u8282\u70B9\u65F6\uFF0C\u6B64\u65B9\u5F0F\u624D\u4F1A\u751F\u6548\u3002 \u65F6\u5E8F\u53C2\u6570 \u5C4F\u63A5\u53E3\u53C2\u6570 \u5C4F\u914D\u7F6E\u65B9\u5F0F \u65B9\u5F0F\u4E00\uFF1A\u5C06\u5C4F\u53C2\u6570\u5199\u5165\u5230 board.dts \u6587\u4EF6\u4E2D\u3002\u5173\u4E8E panel_lvds...","topics/sdk/display/display_panel_port_lite.html@@@\u5C4F\u9002\u914D\u6307\u5357@@@\u672C\u7AE0\u8282\u4ECB\u7ECD LCD \u5916\u8BBE\u5728 Luban-Lite \u4E0A\u7684\u9002\u914D\u65B9\u6CD5\u3002\u7528\u6237\u53EF\u9009\u62E9\u4EE5\u4E0B\u4EFB\u610F\u65B9\u5F0F\u914D\u7F6E\u5C4F\u53C2\u6570\uFF1A \u6CE8\uFF1A \u5982\u679C\u540C\u65F6\u4F7F\u7528\u65B9\u5F0F\u4E00\u548C\u65B9\u5F0F\u4E8C\u914D\u7F6E\u4E86\u5C4F\u5E55\u53C2\u6570\uFF0C\u6700\u7EC8\u751F\u6548\u7684\u662F\u65B9\u5F0F\u4E8C\u7684\u53C2\u6570\u3002 \u65B9\u5F0F\u4E00\uFF1A\u901A\u8FC7 menuconfig \u4FEE\u6539\u5C4F\u53C2\u6570\u3002 RGB/LVDS \u5C4F\u5E55\u4E0D\u9700\u8981\u521D\u59CB\u5316\uFF0C\u4F7F\u7528\u901A\u7528\u7684\u5C4F\u9A71\u52A8\u5373\u53EF\u3002\u5982\u679C\u9002\u914D\u4E00\u6B3E RGB/LVDS \u5C4F\u5E55\uFF0C\u901A\u8FC7 menuconfig \u9009\u62E9 ArtInChip simple panel...","topics/sdk/display/display_parameter_backlight.html@@@PWM Backlight@@@panel_rgb { ... backlight = <&backlight>; } backlight: backlight { compatible = "pwm-backlight" ; /* pwm node name; pwm device No.; period_ns; pwm_polarity */ pwms = <&pwm 2 1000000 0 >...","topics/sdk/display/display_parameter_display_engine.html@@@Display Engine@@@&de0 { status = "okay" ; port@ 0 { reg = < 0 >; de0_in: endpoint { remote-endpoint = <&fb0_out>; }; }; port@ 1 { reg = < 1 >; de0_out: endpoint { remote-endpoint = <&lvds0_in>; }; }; }; \u8868 1 . MIPI-DBI...","topics/sdk/display/display_parameter_display_fb0.html@@@Display FB0@@@&fb0 { artinchip,uboot-logo-on=< 1 >; rotation-degress = < 270 >; rotation-buf-num = < 2 >; height-virtual = < 2160 >; disp-bright = < 45 >; disp-contrast = < 50 >; disp-saturation = < 60 >; disp-hue...","topics/sdk/display/display_parameter_display_interface.html@@@Display Interface@@@RGB Display Interface &rgb0 { pinctrl-names = "default" ; pinctrl- 0 = <&lcd_pins>; status = "okay" ; port@ 0 { reg = < 0 >; rgb0_in: endpoint { remote-endpoint = <&de0_out>; }; }; port@ 1 { reg = < 1...","topics/sdk/display/display_parameter_function_config.html@@@\u529F\u80FD\u53C2\u6570\u914D\u7F6E@@@\u529F\u80FD\u53C2\u6570\u4F1A\u968F\u7740\u4F7F\u7528\u65B9\u6848\u7684\u6539\u53D8\u800C\u53D8\u5316\uFF0C\u4E3B\u8981\u5B58\u50A8\u5728 target/d211/\u65B9\u6848/x/board.dts \u6587\u4EF6\u4E2D\uFF0C\u8BBE\u7F6E\u7684\u529F\u80FD\u53C2\u6570\u5FC5\u987B\u548C\u786C\u4EF6\u539F\u7406\u56FE\u76F8\u5339\u914D\u3002 \u529F\u80FD\u53C2\u6570\u7684\u8BBE\u7F6E\u4EA6\u53EF\u53C2\u770B\u4EE5\u4E0B\u8DEF\u5F84\u7684\u5185\u6838\u6587\u6863\uFF1A linux- 5.10 /Documentation/devicetree/bindings/display/artinchip/ artinchip-de.txt artinchip-dsi.txt...","topics/sdk/display/display_parameter_panel_dbi.html@@@Panel_DBI@@@panel_dbi \u7ED3\u70B9\u7684\u8BE6\u7EC6\u53C2\u6570\u914D\u7F6E\u548C\u63CF\u8FF0\u5982\u4E0B\uFF1A \u6CE8\uFF1A \u76F8\u5173\u5B8F\u5B9A\u4E49\u53D6\u503C\u5728\u6587\u4EF6 include/dt-bindings/display/artinchip,aic-disp.h \u4E2D\u3002\u5173\u4E8E\u5404\u53C2\u6570\u7684\u5B8F\u5B9A\u4E49\u53D6\u503C\u63CF\u8FF0\uFF0C\u53EF\u67E5\u770B \u5B8F\u5B9A\u4E49\u53D6\u503C \u3002 panel_dbi { compatible = "artinchip,aic-dbi-panel-simple" ; status = "okay" ; port...","topics/sdk/display/display_parameter_panel_dsi.html@@@Panel_DSI@@@panel_dsi \u7ED3\u70B9\u7684\u8BE6\u7EC6\u53C2\u6570\u914D\u7F6E\u548C\u63CF\u8FF0\u5982\u4E0B\uFF1A \u6CE8\uFF1A \u76F8\u5173\u5B8F\u5B9A\u4E49\u53D6\u503C\u5728\u6587\u4EF6 include/dt-bindings/display/artinchip,aic-disp.h \u4E2D\u3002\u5173\u4E8E\u5404\u53C2\u6570\u7684\u5B8F\u5B9A\u4E49\u53D6\u503C\u63CF\u8FF0\uFF0C\u53EF\u67E5\u770B \u5B8F\u5B9A\u4E49\u53D6\u503C \u3002 panel_dsi { compatible = "artinchip,aic-dsi-panel-simple" ; backlight =...","topics/sdk/display/display_parameter_panel_lvds.html@@@Panel_LVDS@@@panel_lvds \u7ED3\u70B9\u7684\u8BE6\u7EC6\u53C2\u6570\u914D\u7F6E\u548C\u63CF\u8FF0\u5982\u4E0B\uFF1A \u6CE8\uFF1A \u76F8\u5173\u5B8F\u5B9A\u4E49\u53D6\u503C\u5728\u6587\u4EF6 include/dt-bindings/display/artinchip,aic-disp.h \u4E2D\u3002\u5173\u4E8E\u5404\u53C2\u6570\u7684\u5B8F\u5B9A\u4E49\u53D6\u503C\u63CF\u8FF0\uFF0C\u53EF\u67E5\u770B \u5B8F\u5B9A\u4E49\u53D6\u503C \u3002 panel_lvds { compatible = "artinchip,aic-general-lvds-panel" ; data-mapping =...","topics/sdk/display/display_parameter_panel_rgb.html@@@Panel_RGB@@@panel_rgb \u7ED3\u70B9\u7684\u8BE6\u7EC6\u53C2\u6570\u914D\u7F6E\u548C\u63CF\u8FF0\u5982\u4E0B\uFF1A \u6CE8\uFF1A \u76F8\u5173\u5B8F\u5B9A\u4E49\u53D6\u503C\u5728\u6587\u4EF6 include/dt-bindings/display/artinchip,aic-disp.h \u4E2D\u3002\u5173\u4E8E\u5404\u53C2\u6570\u7684\u5B8F\u5B9A\u4E49\u53D6\u503C\u63CF\u8FF0\uFF0C\u53EF\u67E5\u770B \u3002 panel_rgb { compatible = "artinchip,aic-general-rgb-panel" ; status = "okay" ; rgb-mode =...","topics/sdk/display/display_parameter_sys_config.html@@@\u7CFB\u7EDF\u53C2\u6570\u914D\u7F6E@@@\u7CFB\u7EDF\u53C2\u6570\u4E3B\u8981\u5B58\u653E\u4E8E target/ board /common/ board .dtsi \u6587\u4EF6\u4E2D\uFF0C\u4F8B\u5982 target/d211/common/d211.dtsi \u3002\u6A21\u5757\u7CFB\u7EDF\u53C2\u6570\u968F\u7740 IC \u7684\u53D8\u5316\u800C\u6539\u53D8\uFF0C\u4E0D\u5EFA\u8BAE\u7528\u6237\u4FEE\u6539\u3002\u5404\u7C7B\u578B\u663E\u793A\u5C4F\u5E38\u89C1\u7684\u7CFB\u7EDF\u53C2\u6570\u5982\u4E0B\u6240\u793A\uFF1A Display FB0 display-fb { compatible = "artinchip,aic-framebuffer"...","topics/sdk/display/display_sourcecode_and_arch.html@@@\u6E90\u7801\u548C\u6846\u67B6\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u672C\u6A21\u5757\u6E90\u4EE3\u7801\u5728\u5185\u6838\u76EE\u5F55 linux-5.10/drivers/video/artinchip/disp \u4E0B\uFF0C\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B\uFF1A \u251C\u2500\u2500 aic_com.h // \u663E\u793A\u9A71\u52A8\u5171\u7528\u7684\u5934\u6587\u4EF6\uFF0C\u5176\u4E2D\u5B9A\u4E49\u4E86\u5BC4\u5B58\u5668\u3001\u5171\u7528\u6570\u636E\u7ED3\u6784\u3001\u5168\u5C40\u51FD\u6570\u7B49 \u251C\u2500\u2500 aic_fb.c // \u5BF9\u63A5 fbdev \u6846\u67B6\uFF0C\u5E76\u8FDB\u884C\u6269\u5C55 \u251C\u2500\u2500 aic_de.c // \u663E\u793A\u5F15\u64CE\u9A71\u52A8 \u251C\u2500\u2500 aic_dsi.c // mipi-dsi...","topics/sdk/display/display_sourcecode_and_arch_lite.html@@@\u6E90\u7801\u548C\u6846\u67B6\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u672C\u6A21\u5757\u6E90\u4EE3\u7801\u7684\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B\uFF1A \u8868 1 . \u76EE\u5F55 bsp/artinchip/drv/display \u6587\u4EF6\u540D \u542B\u4E49 drv_fb.c \u663E\u793A\u9A71\u52A8\u6846\u67B6 drv_de.c \u663E\u793A\u5F15\u64CE\u9A71\u52A8 drv_rgb.c RGB \u663E\u793A\u63A5\u53E3\u9A71\u52A8 drv_lvds.c LVDS \u663E\u793A\u63A5\u53E3\u9A71\u52A8 drv_dsi.c MIPI-DSI \u663E\u793A\u63A5\u53E3\u9A71\u52A8 drv_dbi.c MIPI-DBI \u663E\u793A\u63A5\u53E3\u9A71\u52A8 disp_com.h...","topics/sdk/display/display_startup_ui.html@@@\u5F00\u673A\u52A8\u753B@@@ArtInChip \u5E73\u53F0\u652F\u6301\u5728\u5F00\u673A\u65F6\u663E\u793A\u5F00\u673A\u52A8\u753B\u3002D12x/D13x/D21x \u5747\u652F\u6301\u663E\u793A\u5F00\u673A\u52A8\u753B\u3002\u7528\u6237\u80FD\u591F\u81EA\u5B9A\u4E49\u5F00\u673A\u52A8\u753B\u7684\u6548\u679C,\u4EE5\u4E0B\u4E3A\u5F00\u673A\u52A8\u753B\u663E\u793A\u6548\u679C\u3002 \u5F00\u673A\u52A8\u753B\u914D\u7F6E\u6D41\u7A0B\u5982\u4E0B\uFF1A \u66FF\u6362\u56FE\u7247\u7684\u8BFB\u53D6\u8DEF\u5F84 luban-lite Application options--> [*]Using File System Image 1 -->...","topics/sdk/display/display_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F\uFF0C\u6216\u8005 D211 \u7684 FPGA \u677F \u53EF\u8F6C\u63A5 LVDS \u7684\u5B50\u677F LVDS \u5C4F\u5E55\uFF0C7 \u5BF8 TFT \u5C4F\u5E55\uFF0C\u9A71\u52A8\u82AF\u7247 EK79001+EK73215 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 \u663E\u793A\u6A21\u5757\u7684\u6D4B\u8BD5 demo\uFF1A test_dmabuf \u8F6F\u4EF6\u914D\u7F6E \u6D4B\u8BD5\u4E2D\u9700\u8981\u7528\u5230 LVDS \u5C4F\u5E55\uFF0C\u4EE5\u9A71\u52A8\u82AF\u7247 EK79001+EK73215 \u4E3A\u4F8B\u3002 \u5728 Luban-Lite...","topics/sdk/display/display_test_guide_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 demo100 \u5F00\u53D1\u677F LVDS \u5C4F\u5E55\uFF0C7 \u5BF8 TFT \u5C4F\u5E55\uFF0C\u9A71\u52A8\u82AF\u7247 EK79001+EK73215 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 \u663E\u793A\u5B50\u7CFB\u7EDF video \u56FE\u5C42 blend \u6D4B\u8BD5\uFF1A video_layer \u663E\u793A\u5B50\u7CFB\u7EDF video \u56FE\u5C42\u8C03\u8272\u6D4B\u8BD5\uFF1A disp_prop \u8F6F\u4EF6\u914D\u7F6E \u914D\u7F6E LVDS \u5C4F\u5E55 \u6D4B\u8BD5\u4E2D\u9700\u8981\u7528\u5230 LVDS \u5C4F\u5E55\uFF0C\u4EE5\u9A71\u52A8\u82AF\u7247...","topics/sdk/display/display_user_guide.html@@@Display \u4F7F\u7528\u6307\u5357@@@\u663E\u793A\u5B50\u7CFB\u7EDF (DSS) \u8D1F\u8D23\u5C06\u5185\u5B58\u4E2D\u7684\u6570\u636E\u8F6C\u6362\u6210 LCD \u4FE1\u53F7\u8F93\u51FA\u3002DSS \u5305\u62EC\u4EE5\u4E0B\u4E3B\u8981\u7EC4\u4EF6\uFF1A \u663E\u793A\u5F15\u64CE (DE)\uFF1A\u63D0\u4F9B\u591A\u56FE\u5C42\u53E0\u52A0\uFF0C\u652F\u6301 Alpha Blending \u548C Color Key\uFF0C\u652F\u6301\u5404\u79CD\u50CF\u7D20\u64CD\u4F5C\uFF0C\u4F8B\u5982\u989C\u8272\u7A7A\u95F4\u8F6C\u6362\u548C\u7F29\u653E\u7B49\u3002 \u663E\u793A\u63A5\u53E3 (DI)\uFF1A\u5C06\u663E\u793A\u8F93\u51FA\u7684\u65E0\u7F1D\u8FDE\u63A5\u5230 LCD \u5916\u8BBE\uFF0C\u652F\u6301 RGB/ LVDS/ MIPI-DSI/ MIPI-DBI \u7B49\u63A5\u53E3\u6807\u51C6\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49...","topics/sdk/display/display_user_guide_2.html@@@Display \u4F7F\u7528\u6307\u5357@@@\u663E\u793A\u5B50\u7CFB\u7EDF (DSS) \u8D1F\u8D23\u5C06\u5185\u5B58\u4E2D\u7684\u6570\u636E\u8F6C\u6362\u6210 LCD \u4FE1\u53F7\u8F93\u51FA\u3002DSS \u5305\u62EC\u4EE5\u4E0B\u4E3B\u8981\u7EC4\u4EF6\uFF1A \u663E\u793A\u5F15\u64CE (DE)\uFF1A\u63D0\u4F9B\u591A\u56FE\u5C42\u53E0\u52A0\uFF0C\u652F\u6301 Alpha Blending \u548C Color Key\uFF0C\u652F\u6301\u5404\u79CD\u50CF\u7D20\u64CD\u4F5C\uFF0C\u4F8B\u5982\u989C\u8272\u7A7A\u95F4\u8F6C\u6362\u548C\u7F29\u653E\u7B49\u3002 \u663E\u793A\u63A5\u53E3 (DI)\uFF1A\u5C06\u663E\u793A\u8F93\u51FA\u7684\u65E0\u7F1D\u8FDE\u63A5\u5230 LCD \u5916\u8BBE\uFF0C\u652F\u6301 RGB/ LVDS/ MIPI-DSI/ MIPI-DBI \u7B49\u63A5\u53E3\u6807\u51C6\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49...","topics/sdk/display/usb-display-config-addon.html@@@\u914D\u7F6E\u9644\u52A0\u529F\u80FD@@@\u9664\u4E86\u63D0\u4F9B\u57FA\u672C\u7684\u663E\u793A\u529F\u80FD\uFF0CUSB Display \u8BBE\u5907\u8FD8\u80FD\u63D0\u4F9B USB HID TP / USB Audio / USB MSC \u7B49\u9644\u52A0\u529F\u80FD\u3002\u9644\u52A0\u529F\u80FD\u90FD\u662F\u72EC\u7ACB\u53EF\u9009\u7684\uFF0C\u53EF\u4EE5\u6839\u636E\u4EA7\u54C1\u5F62\u6001\u7075\u6D3B\u7EC4\u5408\u3002 USB Display \u5229\u7528 CherryUSB \u7EC4\u5408\u4E86\u4E00\u4E2A USB \u590D\u5408\u8BBE\u5907\uFF0C\u4ECE\u800C\u53EF\u4EE5\u4F5C\u4E3A\u63D0\u4F9B\u591A\u4E2A\u529F\u80FD\u7684\u7EC4\u5408\u8BBE\u5907\u3002\u5176\u4E2D Interface 0 \u662F\u57FA\u672C\u7684 Display \u529F\u80FD\uFF0C\u5176\u4ED6\u6BCF\u4E00\u4E2A Interface...","topics/sdk/display/usb-display-config-screen-cut.html@@@\u914D\u7F6E\u5C4F\u5E55\u88C1\u526A@@@\u5728\u5B9E\u9645\u4F7F\u7528\u8FC7\u7A0B\u4E2D\uFF0C\u5982\u9700\u88C1\u526A\u6389\u5C4F\u5E55\u4E0A\u4E0B\u5DE6\u53F3\u7684\u8FB9\uFF0C\u53EF\u6839\u636E\u4E0B\u5217\u6D41\u7A0B\u8FDB\u884C\u914D\u7F6E\uFF1A \u5728 SDK \u6839\u76EE\u5F55\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A scons menuconfig \u914D\u7F6E\u663E\u793A\u7684\u88C1\u526A\u529F\u80FD\u53C2\u6570\uFF1A \u4EE5\u4E00\u4E2A 1024x600 \u7684\u5C4F\u5E55\u4E3A\u4F8B\uFF0CY \u8F74\u9876\u7AEF\u88C1\u526A 60\uFF0CY \u8F74\u5E95\u7AEF\u88C1\u526A 100\uFF0C\u88C1\u526A\u540E\u7684\u5C4F\u5E55\u5C3A\u5BF8\u4E3A 1024x440\u3002\u88C1\u526A\u5750\u6807\u6309\u7167\u5C4F\u5E55\u65CB\u8F6C\u524D\u7684\u5750\u6807\u8BA1\u7B97\u3002 > Board options...","topics/sdk/display/usb-display-config-ui.html@@@\u914D\u7F6E\u672C\u5730 UI@@@\u672C\u5730 UI \u53EF\u63D0\u4F9B\u4E00\u7CFB\u5217\u8F85\u52A9\u529F\u80FD\uFF0C\u53EF\u6839\u636E\u9700\u8981\u6253\u5F00\u3002\u672C\u5730 UI \u8BE6\u7EC6\u914D\u7F6E\u6D41\u7A0B\u5982\u4E0B\uFF1A \u5728 SDK \u6839\u76EE\u5F55\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A scons menuconfig \u4F7F\u80FD LVGL USB OSD Demo\uFF1A > Application options ---> -*- LVGL (official): powerful and easy-to-use...","topics/sdk/display/usb-display-rotate.html@@@\u914D\u7F6E\u6A2A\u5C4F\u7AD6\u7528\u548C\u7AD6\u5C4F\u6A2A\u7528\u529F\u80FD@@@\u5728\u5B9E\u9645\u4F7F\u7528\u8FC7\u7A0B\u4E2D\uFF0C\u5982\u9700\u4F7F\u7528\u6A2A\u5C4F\u7AD6\u7528\u548C\u7AD6\u5C4F\u6A2A\u7528\u529F\u80FD\uFF0C\u53EF\u6839\u636E\u4E0B\u5217\u6D41\u7A0B\u8FDB\u884C\u914D\u7F6E\uFF1A \u5728 SDK \u6839\u76EE\u5F55\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A scons menuconfig \u914D\u7F6E\u663E\u793A\u7684\u65CB\u8F6C\u89D2\u5EA6\uFF1A > Board options ---> [*] Using Display Engine (DE) Display Parameter ---> framebuffer rotation...","topics/sdk/display/usb-display-ui-interface.html@@@\u672C\u5730 UI \u754C\u9762\u8BF4\u660E@@@OSD \u83DC\u5355\u529F\u80FD\u4ECB\u7ECD OSD \u83DC\u5355\u4E3B\u9875\u63D0\u4F9B\u4E86\u4E0B\u5217\u914D\u7F6E\u9879\uFF0C\u65B9\u4FBF\u7528\u6237\u6839\u636E\u9700\u6C42\u81EA\u5B9A\u4E49\uFF1A \u56FE 1 . OSD \u83DC\u5355\u4E3B\u9875 Display \u9009\u9879 \u8868 1 . OSD \u83DC\u5355\u4E3B\u9875\u529F\u80FD\u4ECB\u7ECD \u4E3B\u83DC\u5355\u9009\u9879 \u53C2\u6570\u8BF4\u660E Display \u663E\u793A\u914D\u7F6E\uFF0C\u53EF\u914D\u7F6E\u53C2\u6570\u5305\u62EC\uFF1A \u5C4F\u5E55\u4EAE\u5EA6 (Brightness) \u5BF9\u6BD4\u5EA6 (Contrast) \u9971\u548C\u5EA6 (Saturation) \u8272\u8C03 (Hue) Lockscreen...","topics/sdk/dma/dma-configuration.html@@@DMA \u914D\u7F6E@@@DMA \u5305\u542B\u4EE5\u4E0B\u914D\u7F6E\u5185\u5BB9\uFF1A \u9A71\u52A8\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [*] Using DMA...","topics/sdk/dma/dma-configuration_2.html@@@DMA \u914D\u7F6E@@@DMA \u5305\u542B\u4EE5\u4E0B\u914D\u7F6E\u5185\u5BB9\uFF1A \u9A71\u52A8\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [*] Using DMA...","topics/sdk/dma/dma-data-structure.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@\u672C\u8282\u4ECB\u7ECD\u4E86 DMA \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u3002 struct aic_dma_dev \u5C5E\u4E8E HAL \u5C42\u63A5\u53E3\uFF0C \u8BB0\u5F55 DMA \u63A7\u5236\u5668\u7684\u914D\u7F6E\u4FE1\u606F\uFF1A struct aic_dma_dev { struct aic_dma_task task[TASK_MAX_NUM]; s32 inited; unsigned long base; u32 burst_length; /* burst length...","topics/sdk/dma/dma-data-structure_2.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@\u672C\u8282\u4ECB\u7ECD\u4E86 DMA \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u3002 struct aic_dma_dev \u5C5E\u4E8E HAL \u5C42\u63A5\u53E3\uFF0C \u8BB0\u5F55 DMA \u63A7\u5236\u5668\u7684\u914D\u7F6E\u4FE1\u606F\uFF1A struct aic_dma_dev { struct aic_dma_task task[TASK_MAX_NUM]; s32 inited; unsigned long base; u32 burst_length; /* burst length...","topics/sdk/dma/dma-debug-guide.html@@@\u8C03\u8BD5\u6307\u5357@@@\u5728 Luban-Lite \u4E2D\uFF0CDMA \u9A71\u52A8\u7684\u65E5\u5FD7\u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 aic_log.h \u63A5\u53E3\u3002 \u4E3A\u4E86\u65B9\u4FBF\u8C03\u8BD5\uFF0CDMA \u6A21\u5757\u589E\u52A0\u4E86\u4E00\u4E2A dump \u63A7\u5236\u5F00\u5173\uFF0C\u53EF\u4EE5\u5728\u8FD0\u884C\u65F6\u4E22\u5F03\u6BCF\u6B21 DMA \u8BF7\u6C42\u7684\u4EFB\u52A1\u94FE\u8868\u8BE6\u7EC6\u4FE1\u606F\u3002 \u6267\u884C\u4E0B\u5217\u547D\u4EE4\u548C\u6B65\u9AA4\u6253\u5F00 DMA \u8C03\u8BD5\uFF1A \u6267\u884C scons --menuconfig \u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u5728\u914D\u7F6E\u754C\u9762\u9009\u62E9\u4F7F\u80FD DMA \u9A71\u52A8\u8C03\u8BD5\uFF1ADrivers...","topics/sdk/dma/dma-debug-guide_2.html@@@\u8C03\u8BD5\u6307\u5357@@@\u5728 Luban-Lite \u4E2D\uFF0CDMA \u9A71\u52A8\u7684\u65E5\u5FD7\u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 aic_log.h \u63A5\u53E3\u3002 \u4E3A\u4E86\u65B9\u4FBF\u8C03\u8BD5\uFF0CDMA \u6A21\u5757\u589E\u52A0\u4E86\u4E00\u4E2A dump \u63A7\u5236\u5F00\u5173\uFF0C\u53EF\u4EE5\u5728\u8FD0\u884C\u65F6\u4E22\u5F03\u6BCF\u6B21 DMA \u8BF7\u6C42\u7684\u4EFB\u52A1\u94FE\u8868\u8BE6\u7EC6\u4FE1\u606F\u3002 \u6267\u884C\u4E0B\u5217\u547D\u4EE4\u548C\u6B65\u9AA4\u6253\u5F00 DMA \u8C03\u8BD5\uFF1A \u6267\u884C scons --menuconfig \u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u5728\u914D\u7F6E\u754C\u9762\u9009\u62E9\u4F7F\u80FD DMA \u9A71\u52A8\u8C03\u8BD5\uFF1ADrivers...","topics/sdk/dma/dma-demo-lite.html@@@Demo@@@Mem to Device SPI \u9A71\u52A8\uFF08\u8BE6\u89C1 bsp/artinchip/hal/qspi/aic_hal_qspi.c \uFF09\u4E2D\u8C03\u7528\u4E86 DMA \u8FDB\u884C\u6570\u636E\u4F20\u8F93\uFF0C\u5176\u4F7F\u7528\u8FC7\u7A0B\u53EF\u4EE5\u5F53\u4F5C Demo \u53C2\u8003\uFF1A static s32 qspi_tx_rx_dma(u32 base, u8 *tx, u32 txlen, u8 *rx, u32 rxlen) { u32 poll_time, single_len...","topics/sdk/dma/dma-demo.html@@@Demo@@@SPI \u9A71\u52A8\uFF08\u8BE6\u89C1 drivers/spi/spi-artinchip.c \uFF09\u4E2D\u8C03\u7528\u4E86 DMA \u8FDB\u884C\u6570\u636E\u4F20\u8F93\uFF0C\u5176\u4F7F\u7528\u8FC7\u7A0B\u53EF\u4EE5\u5F53\u4F5C Demo \u53C2\u8003\u3002 DMA \u901A\u9053\u7684\u7533\u8BF7 static int aic_spi_probe( struct platform_device *pdev) { ... aicspi->dma_rx =...","topics/sdk/dma/dma-design-guide-lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@RTOS \u7CFB\u7EDF\u4E2D\u672A\u63D0\u4F9B\u4E00\u4E2A\u7C7B\u4F3C Linux \u7684 DMA Engine \u5B50\u7CFB\u7EDF\uFF0C\u4F46\u4E3A\u4E86\u65B9\u4FBF DMA \u4F7F\u7528\u8005\u7684\u4EE3\u7801\u517C\u5BB9\uFF0CDMA \u9A71\u52A8\u63D0\u4F9B\u4E86\u7C7B\u4F3C Linux \u7684 DMA Engine \u63A5\u53E3\u5B9A\u4E49\u3002 \u5982 DMA \u9A71\u52A8\u7684\u8F6F\u4EF6\u67B6\u6784\u56FE \u6240\u793A\uFF0CDMA \u9A71\u52A8\u4E0D\u4F9D\u8D56\u4E8E\u4EFB\u4F55 RTOS \u7684\u8BBE\u5907\u9A71\u52A8\u6A21\u578B\uFF0C\u56E0\u6B64\u65E0\u8BBA\u662F\u5728 RTOS \u8FD8\u662F baremetal \u73AF\u5883\u4E0B\uFF0CDMA \u9A71\u52A8\u90FD\u53EF\u4EE5\u76F4\u63A5\u8C03\u7528 DMA Engine API\u3002 \u56FE...","topics/sdk/dma/dma-design-guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@DMA \u6E90\u4EE3\u7801\u4F4D\u4E8E drivers/dma/artinchip-dma.c \u3002 Linux \u63D0\u4F9B\u4E86\u4E00\u4E2A DMA Engine \u5B50\u7CFB\u7EDF\uFF0C\u53EF\u5C01\u88C5\u4E0D\u540C\u7C7B\u578B\u7684 DMA \u63A7\u5236\u5668\u9A71\u52A8\uFF0C\u4FBF\u4E8E DMA \u7528\u6237\u4E86\u89E3\u786C\u4EF6\u7EC6\u8282\u3002 \u56FE 1 . Linux DMA Engine \u5B50\u7CFB\u7EDF\u67B6\u6784 Linux DMA Engine \u5B50\u7CFB\u7EDF\u67B6\u6784 \u5C55\u793A\u4E86 DMA Engine \u4E2D\u7684\u4E0B\u5217\u7EC4\u6210\u90E8\u5206\uFF1A DMA Device \u5BF9\u5E94\u7269\u7406\u4E0A\u7684\u4E00\u4E2A...","topics/sdk/dma/dma-drivers.html@@@DMA@@@\u6B64\u5904\u63CF\u8FF0\u7684 DMA \u662F ArtInChip \u5E73\u53F0\u4E0A\u7684\u7CFB\u7EDF DMA\u3002\u4E00\u4E9B\u786C\u4EF6 IP \u5185\u90E8\u81EA\u5E26\u7684 DMA \u4E0D\u5728\u8FD9\u91CC\u63CF\u8FF0\u7684\u8303\u56F4\u3002 \u9A71\u52A8\u6846\u67B6 U-Boot \u9A71\u52A8\u6A21\u578B\u652F\u6301 DMA\uFF0CArtInChip \u5E73\u53F0\u4E2D DMA \u9A71\u52A8\u57FA\u4E8E\u8BE5\u6846\u67B6\u8FDB\u884C\u5B9E\u73B0\u3002 \u76F8\u5173\u914D\u7F6E\u4E3A\uFF1A CONFIG_DMA CONFIG_ARTINCHIP_DMA \u76F8\u5173\u6E90\u7801\u6709\uFF1A include/dma.h drivers/dma/dma-uclass.c...","topics/sdk/dma/dma-faq-lite.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/dma/dma-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@dmatest \u65F6 verify \u6570\u636E\u62A5\u9519 \u73B0\u8C61 \u5F53\u8FD0\u884C dmatest \u6D4B\u8BD5\u65F6\uFF0C\u9519\u8BEF log \u7C7B\u4F3C\u5982\u4E0B\uFF1A [ 381.878419 ] dmatest: dma0chan5-copy0: dstbuf[ 0x3f70 ] mismatch! Expected cf, got d7 [ 381.885999 ] dmatest: dma0chan5-copy0: dstbuf[ 0x3f71 ]...","topics/sdk/dma/dma-interface-design-lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u4EE5\u4E0B\u63A5\u53E3\u662F\u9075\u5FAA Linux DMA Engine \u5B50\u7CFB\u7EDF\u7684\u6807\u51C6\u63A5\u53E3\u3002 \u8868 1 . dmaengine_slave_config \u51FD\u6570\u539F\u578B int dmaengine_slave_config(struct dma_chan *chan, struct dma_slave_config *config) \u529F\u80FD\u8BF4\u660E \u914D\u7F6E\u6307\u5B9A\u7684 DMA \u7269\u7406\u901A\u9053 \u53C2\u6570\u5B9A\u4E49 chan...","topics/sdk/dma/dma-interface-design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u4EE5\u4E0B\u63A5\u53E3\u662F\u9075\u5FAA Linux DMA Engine \u5B50\u7CFB\u7EDF\u7684\u6807\u51C6\u63A5\u53E3\uFF1A \u8868 1 . aic_dma_config \u51FD\u6570\u539F\u578B static int aic_dma_config(struct dma_chan *chan, struct dma_slave_config *config) \u529F\u80FD\u8BF4\u660E \u914D\u7F6E\u6307\u5B9A\u7684 DMA \u7269\u7406\u901A\u9053 \u53C2\u6570\u5B9A\u4E49 chan - \u6307\u5411\u4E00\u4E2A DMA \u7269\u7406\u901A\u9053 config...","topics/sdk/dma/dma-key-procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u672C\u8282\u4ECB\u7ECD\u4E86 DMA \u6A21\u5757\u7684\u5173\u952E\u6D41\u7A0B\u3002 \u521D\u59CB\u5316\u6D41\u7A0B DMA \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u901A\u8FC7 INIT_BOARD_EXPORT(drv_dma_init) \u5B8C\u6210\u6CE8\u518C\uFF0C\u5176\u4E2D\u4E3B\u8981\u6B65\u9AA4\u6709\uFF1A \u521D\u59CB\u5316\u6A21\u5757\u7684 clk\u3002 \u521D\u59CB\u5316 DMA \u901A\u9053\u3001\u4EFB\u52A1\u63CF\u8FF0\u7B26\u7BA1\u7406\u4FE1\u606F\u3002 \u6CE8\u518C\u4E2D\u65AD\u3002 DMA Client \u7684\u8C03\u7528\u6D41\u7A0B \u4F5C\u4E3A DMA \u7528\u6237\uFF0C\u8C03\u7528\u6D41\u7A0B\u5982\u4E0B\uFF1A \u56FE 1 . DMA Client \u8C03\u7528\u6D41\u7A0B \u5728 DMA Client \u8C03\u7528\u6D41\u7A0B...","topics/sdk/dma/dma-key-procedures_2.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u672C\u8282\u4ECB\u7ECD\u4E86 DMA \u6A21\u5757\u7684\u5173\u952E\u6D41\u7A0B\u3002 \u521D\u59CB\u5316\u6D41\u7A0B DMA \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u901A\u8FC7 INIT_BOARD_EXPORT(drv_dma_init) \u5B8C\u6210\u6CE8\u518C\uFF0C\u5176\u4E2D\u4E3B\u8981\u6B65\u9AA4\u6709\uFF1A \u521D\u59CB\u5316\u6A21\u5757\u7684 clk\u3002 \u521D\u59CB\u5316 DMA \u901A\u9053\u3001\u4EFB\u52A1\u63CF\u8FF0\u7B26\u7BA1\u7406\u4FE1\u606F\u3002 \u6CE8\u518C\u4E2D\u65AD\u3002 DMA Client \u7684\u8C03\u7528\u6D41\u7A0B \u4F5C\u4E3A DMA \u7528\u6237\uFF0C\u8C03\u7528\u6D41\u7A0B\u5982\u4E0B\uFF1A \u56FE 1 . DMA Client \u8C03\u7528\u6D41\u7A0B \u5728 DMA Client \u8C03\u7528\u6D41\u7A0B...","topics/sdk/dma/dma-test-guide-lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Luban-Lite \u81EA\u5E26\u7684 test-dma \u5DE5\u5177 \u6CE8\uFF1A test-dma \u53EA\u9650\u4E8E\u6D4B\u8BD5 Mem To Mem \u7684\u6570\u636E\u4F20\u8F93\u64CD\u4F5C\u7C7B\u578B\u3002 \u4F7F\u80FD test-dma \u547D\u4EE4\u5DE5\u5177 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\u4F7F\u80FD...","topics/sdk/dma/dma-test-guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@DMA \u6D4B\u8BD5\u6240\u9700\u7684\u6D4B\u8BD5\u73AF\u5883\u5982\u4E0B\uFF1A \u786C\u4EF6 \uFF1A\u5F00\u53D1\u677F\u6216 FPGA \u677F \u8F6F\u4EF6 \uFF1A PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Linux \u5185\u6838\u539F\u751F\u7684 dmatest \u6A21\u5757 \u6CE8\uFF1A dmatest \u6A21\u5757 \u53EA\u9650\u4E8E\u6D4B\u8BD5 Mem To Mem \u7684\u6570\u636E\u4F20\u8F93\u64CD\u4F5C\u3002 \u914D\u7F6E\u8F6F\u4EF6 \u8FDB\u5165 Luban \u7684\u6839\u76EE\u5F55\uFF0C\u6267\u884C make menuconfig \u547D\u4EE4\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Linux Device Drivers...","topics/sdk/dma/dma-user-guide.html@@@DMA \u4F7F\u7528\u6307\u5357@@@Direction memory access (DMA) \u6A21\u5757\u63D0\u4F9B\u4E00\u79CD\u9AD8\u6548\u7684\u6570\u636E\u4F20\u8F93\u6280\u672F\uFF0C\u80FD\u591F\u5728\u4E0D\u53D7 CPU \u5E72\u9884\u7684\u60C5\u51B5\u4E0B\u8FDB\u884C\u8BBE\u5907\u95F4\u7684\u6570\u636E\u4F20\u8F93\uFF0C\u4ECE\u800C\u51CF\u5C11 CPU \u8D1F\u8377\u3002CPU \u4F7F\u80FD DMA \u4E4B\u540E\uFF0C\u5C31\u9000\u51FA\u64CD\u4F5C\uFF0C\u7531 DMA \u72EC\u7ACB\u81EA\u4E3B\u63A7\u5236\u6570\u636E\u4F20\u8F93\u3002\u6B64\u5916\uFF0CDMA \u63D0\u4F9B\u7684\u6570\u636E\u4EA4\u6362\u5177\u6709\u9AD8\u5E26\u5BBD\u548C\u4F4E\u5EF6\u8FDF\u7684\u4F18\u70B9\u3002 \u6CE8\uFF1A \u5173\u4E8E DMA \u53EF\u4EE5\u8FDE\u63A5\u7684\u8BBE\u5907\u5217\u8868\uFF0C\u53EF\u67E5\u770B\u5177\u4F53\u4EA7\u54C1\u578B\u53F7\u5BF9\u5E94\u7684\u6570\u636E\u624B\u518C\u3002\u5173\u4E8E DMA...","topics/sdk/dma/dma-user-guide_2.html@@@DMA \u4F7F\u7528\u6307\u5357@@@Direction memory access (DMA) \u6A21\u5757\u63D0\u4F9B\u4E00\u79CD\u9AD8\u6548\u7684\u6570\u636E\u4F20\u8F93\u6280\u672F\uFF0C\u80FD\u591F\u5728\u4E0D\u53D7 CPU \u5E72\u9884\u7684\u60C5\u51B5\u4E0B\u8FDB\u884C\u8BBE\u5907\u95F4\u7684\u6570\u636E\u4F20\u8F93\uFF0C\u4ECE\u800C\u51CF\u5C11 CPU \u8D1F\u8377\u3002CPU \u4F7F\u80FD DMA \u4E4B\u540E\uFF0C\u5C31\u9000\u51FA\u64CD\u4F5C\uFF0C\u7531 DMA \u72EC\u7ACB\u81EA\u4E3B\u63A7\u5236\u6570\u636E\u4F20\u8F93\u3002\u6B64\u5916\uFF0CDMA \u63D0\u4F9B\u7684\u6570\u636E\u4EA4\u6362\u5177\u6709\u9AD8\u5E26\u5BBD\u548C\u4F4E\u5EF6\u8FDF\u7684\u4F18\u70B9\u3002 \u6CE8\uFF1A \u5173\u4E8E DMA \u53EF\u4EE5\u8FDE\u63A5\u7684\u8BBE\u5907\u5217\u8868\uFF0C\u53EF\u67E5\u770B\u5177\u4F53\u4EA7\u54C1\u578B\u53F7\u5BF9\u5E94\u7684\u6570\u636E\u624B\u518C\u3002\u5173\u4E8E DMA...","topics/sdk/dvp/dvp_config.html@@@DVP \u914D\u7F6E@@@DVP \u5305\u62EC\u4EE5\u4E0B\u914D\u7F6E\u5185\u5BB9\uFF1A \u5185\u6838\u914D\u7F6E DVP \u9A71\u52A8\u4F9D\u8D56 buf\u3001CMA\u3001V4L2 \u6A21\u5757\uFF0C\u6240\u4EE5\u9700\u8981\u63D0\u524D\u6253\u5F00\u3002 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Linux Memory Management options [*] Contiguous Memory...","topics/sdk/dvp/dvp_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u6309\u7167\u4EE5\u4E0B\u6D41\u7A0B\u6253\u5F00\u76F8\u5E94\u7684\u9A71\u52A8\u6A21\u5757\uFF1A \u6253\u5F00 MPP VIN \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A \u6CE8\uFF1A DVP \u9A71\u52A8\u4F9D\u8D56 MPP \u4E2D\u7684 VIN \u5B50\u6A21\u5757\uFF0C\u6240\u4EE5\u9700\u8981\u63D0\u524D\u6253\u5F00\u3002 Local packages options ---> ArtInChip packages options ---> [*]...","topics/sdk/dvp/dvp_data_struct.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@DVP \u81EA\u5B9A\u4E49\u7684\u6570\u636E\u7ED3\u6784\u90FD\u5728 aic_dvp.h \u4E2D\u3002 struct aic_dvp\uFF1A\u5B9A\u4E49\u4E86 DVP \u63A7\u5236\u5668\u7684\u8BBE\u5907\u7BA1\u7406\u4FE1\u606F\uFF1A struct aic_dvp { /* Device resources */ struct device *dev; void __iomem *regs; struct clk *clk; struct reset_control *rst; u32 clk_rate...","topics/sdk/dvp/dvp_data_struct_lite.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@struct aic_dvp \u5C5E\u4E8E Driver \u5C42\u63A5\u53E3\uFF0C\u5B9A\u4E49\u4E86 DVP \u63A7\u5236\u5668\u7684\u8BBE\u5907\u7BA1\u7406\u4FE1\u606F\uFF1A struct aic_dvp { struct aic_dvp_config cfg; /* The configuration of DVP HW */ struct dvp_out_fmt fmt; /* The format of output data */ /* Videobuf */...","topics/sdk/dvp/dvp_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6253\u5F00 DVP \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A Linux Kernel hacking Artinchip Debug [*] DVP driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5 -O0 \u7F16\u8BD1\u3002...","topics/sdk/dvp/dvp_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u9A71\u52A8\u52A0\u8F7D\u72B6\u6001 DVP \u7684\u8BBE\u5907\u521D\u59CB\u5316\u5165\u53E3\uFF0C\u662F\u653E\u5728 MPP VIN \u7684\u521D\u59CB\u5316\u4E2D\u8C03\u7528\u5B8C\u6210\u7684\u3002 \u5728 RT-Thread \u4E2D\uFF0CDVP \u6682\u65F6\u6CA1\u6709\u6CE8\u518C\u4E3A\u4E00\u4E2A\u8BBE\u5907\uFF0C\u53EA\u662F\u63D0\u4F9B\u4E86\u4E00\u4E9B API \u63A5\u53E3\uFF0C\u6240\u4EE5\u4ECE\u547D\u4EE4 list_device \u4E2D\u662F\u770B\u4E0D\u5230 DVP \u8BBE\u5907\uFF0C\u4F46\u662F\u53EF\u4EE5\u770B\u5230 Camera \u8BBE\u5907\uFF1A list_device device type ref count...","topics/sdk/dvp/dvp_demo.html@@@APP Demo@@@APP \u5C42\u7684\u5904\u7406\u6D41\u7A0B APP \u4E2D\u5B9E\u73B0\u4ECE Sensor -> DVP -> DE \u7684\u6570\u636E\u901A\u8DEF\uFF0C\u6574\u4F53\u7684\u5904\u7406\u6D41\u7A0B\u5982\u4E0B\u56FE\uFF08\u56FE\u4E2D\u6309\u7167\u8BBF\u95EE\u5BF9\u8C61\u5206\u4E3A\u4E09\u5217\uFF0C\u5B9E\u9645\u4E0A\u6574\u4F53\u662F\u4E32\u884C\u6267\u884C\uFF09\uFF1A \u56FE 1 . APP \u4E2D\u7684\u5904\u7406\u6D41\u7A0B test-dvp \u652F\u6301\u4E86 \u5148\u65CB\u8F6C\u518D\u663E\u793A \uFF0C\u4E0A\u56FE\u4E2D\u4E3A\u4E86\u7B80\u5316\u5E76\u672A\u5C55\u793A GE \u7684\u5904\u7406\u3002\u5728\u56FE\u4E2D\u5C06\u5F53\u524D Buf \u4F20\u7ED9 Video Layer \u73AF\u8282\uFF0C\u5982\u679C\u6253\u5F00\u4E86\u65CB\u8F6C\u529F\u80FD\uFF08\u53C2\u6570 -a \uFF09\uFF0C\u4F1A\u5148\u5C06 Buf \u9001\u7ED9 GE...","topics/sdk/dvp/dvp_demo_2.html@@@APP Demo@@@APP \u5C42\u7684\u5904\u7406\u6D41\u7A0B APP \u4E2D\u5B9E\u73B0\u4ECE Sensor -> DVP -> DE \u7684\u6570\u636E\u901A\u8DEF\uFF0C\u6574\u4F53\u7684\u5904\u7406\u6D41\u7A0B\u5982\u4E0B\u56FE\uFF08\u56FE\u4E2D\u6309\u7167\u8BBF\u95EE\u5BF9\u8C61\u5206\u4E3A\u4E09\u5217\uFF0C\u5B9E\u9645\u4E0A\u6574\u4F53\u662F\u4E32\u884C\u6267\u884C\uFF09\uFF1A \u56FE 1 . APP \u4E2D\u7684\u5904\u7406\u6D41\u7A0B test-dvp \u652F\u6301\u4E86 \u5148\u65CB\u8F6C\u518D\u663E\u793A \uFF0C\u4E0A\u56FE\u4E2D\u4E3A\u4E86\u7B80\u5316\u5E76\u672A\u5C55\u793A GE \u7684\u5904\u7406\u3002\u5728\u56FE\u4E2D\u5C06\u5F53\u524D Buf \u4F20\u7ED9 Video Layer \u73AF\u8282\uFF0C\u5982\u679C\u6253\u5F00\u4E86\u65CB\u8F6C\u529F\u80FD\uFF08\u53C2\u6570 -a \uFF09\uFF0C\u4F1A\u5148\u5C06 Buf \u9001\u7ED9 GE...","topics/sdk/dvp/dvp_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u672C\u6A21\u5757\u6E90\u4EE3\u7801\u5728\u5185\u6838\u76EE\u5F55 linux-5.4/drivers/media/platform/artinchip \u4E0B\uFF0C\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B\uFF1A drivers/media/platform/artinchip/ \u251C\u2500\u2500 aic_buf.c // \u548C buf \u7BA1\u7406\u76F8\u5173\u7684\u5904\u7406\u4EE3\u7801 \u251C\u2500\u2500 aic_dvp.c // DVP \u9A71\u52A8\u7684\u521D\u59CB\u5316\u5165\u53E3\uFF0C\u4E3B\u8981\u5B9E\u73B0\u4E86 probe\u3001Notifier \u63A5\u53E3 \u251C\u2500\u2500 aic_dvp.h...","topics/sdk/dvp/dvp_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/dvp/drv_dvp.c \uFF0CDVP Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/dvp/hal_dvp.c \uFF0CDVP HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_dvp.h \uFF0CDVP HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 \u6574\u4E2A\u8F6F\u4EF6\u7CFB\u7EDF\u7684\u67B6\u6784\u56FE\u5982\u4E0B\uFF1A DVP \u9A71\u52A8\u9700\u8981\u548C...","topics/sdk/dvp/dvp_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6444\u50CF\u5934\u521D\u59CB\u5316\u5931\u8D25 \u73B0\u8C61 \u677F\u5B50\u542F\u52A8\u540E\uFF0C\u6444\u50CF\u5934\u7684 V4L2 device \u6CE8\u518C\u5931\u8D25\uFF0C\u6B64\u65F6 DVP \u7684\u6CE8\u518C\u6D41\u7A0B\u4E5F\u56E0\u6B64\u4E0D\u5B8C\u6574\uFF0C\u5728 Sysfs \u4E2D\u4F1A\u627E\u4E0D\u5230 /dev/video0 \u4E0D\u5B58\u5728\u3002 \u539F\u56E0\u5206\u6790 \u4E00\u822C\u60C5\u51B5\u4E0B\uFF0C\u6444\u50CF\u5934\u9700\u8981\u901A\u8FC7 I2C \u6765\u8BBF\u95EE\uFF0C\u6240\u4EE5\u8981\u786E\u4FDD I2C \u548C\u6444\u50CF\u5934\u4E24\u4E2A\u6A21\u5757\u662F\u5426\u6253\u5F00\u3002 \u6444\u50CF\u5934\u7684\u6253\u5F00\u65B9\u6CD5\uFF1A \u914D\u7F6E OV5640 \u6444\u50CF\u5934 I2C \u7684\u6253\u5F00\u65B9\u6CD5\uFF0C\u53C2\u8003 I2C \u6A21\u5757\u7684\u4F7F\u7528\u8BF4\u660E\u3002...","topics/sdk/dvp/dvp_faq_lite.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6444\u50CF\u5934\u521D\u59CB\u5316\u5931\u8D25 \u73B0\u8C61 \u677F\u5B50\u542F\u52A8\u540E\uFF0C\u6444\u50CF\u5934\u6CE8\u518C\u5931\u8D25\uFF0C\u6B64\u65F6 DVP \u7684\u6CE8\u518C\u6D41\u7A0B\u4E5F\u65E0\u6CD5\u5B8C\u6210\u3002 \u539F\u56E0\u5206\u6790 \u4E00\u822C\u60C5\u51B5\u4E0B\uFF0C\u6444\u50CF\u5934\u9700\u8981\u901A\u8FC7 I2C \u6765\u8BBF\u95EE\uFF0C\u6240\u4EE5\u8981\u786E\u4FDD I2C \u548C\u6444\u50CF\u5934\u4E24\u4E2A\u6A21\u5757\u662F\u5426\u6253\u5F00\u3002 \u6444\u50CF\u5934\u7684\u6253\u5F00\u65B9\u6CD5\uFF1A \u6253\u5F00 Camera \u3002 I2C \u7684\u6253\u5F00\u65B9\u6CD5\uFF0C\u8BF7\u53C2\u8003 I2C \u6A21\u5757\u7684\u4F7F\u7528\u8BF4\u660E\u3002 \u540C\u65F6\uFF0C\u8981\u786E\u8BA4\u4EE5\u4E0B\u914D\u7F6E\u662F\u5426\u6B63\u786E\uFF1A \u786C\u4EF6\u4E0A\uFF0C\u6444\u50CF\u5934\u662F\u8FDE\u63A5\u5230\u54EA\u4E2A I2C \u901A\u9053\uFF0C\u5BF9\u5E94\u7684 menuconfig...","topics/sdk/dvp/dvp_interface.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u8868 1 . aic_dvp_probe \u51FD\u6570\u539F\u578B int aic_dvp_probe(void) \u529F\u80FD\u8BF4\u660E \u5B8C\u6210\u4E2D\u65AD\u7533\u8BF7\u3001\u7BA1\u7406\u72B6\u6001\u521D\u59CB\u5316\u7B49 \u53C2\u6570\u5B9A\u4E49 \u65E0 \u8FD4\u56DE\u503C 0\uFF0C\u6210\u529F\u3002<0\uFF0C\u5931\u8D25 \u6CE8\u610F\u4E8B\u9879 - \u8868 2 . aic_dvp_open \u51FD\u6570\u539F\u578B int aic_dvp_open(void) \u529F\u80FD\u8BF4\u660E \u4F7F\u80FD\u65F6\u949F\u3001\u4F7F\u80FD DVP \u63A7\u5236\u5668\u3001\u521D\u59CB\u5316 Buf \u94FE\u8868\u4FE1\u606F\u7B49 \u53C2\u6570\u5B9A\u4E49 \u65E0...","topics/sdk/dvp/dvp_interface_lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u8868 1 . aic_dvp_probe \u51FD\u6570\u539F\u578B int aic_dvp_probe(void) \u529F\u80FD\u8BF4\u660E \u5B8C\u6210\u4E2D\u65AD\u7533\u8BF7\u3001\u7BA1\u7406\u72B6\u6001\u521D\u59CB\u5316\u7B49 \u53C2\u6570\u5B9A\u4E49 \u65E0 \u8FD4\u56DE\u503C 0\uFF0C\u6210\u529F\uFF1B<0\uFF0C\u5931\u8D25 \u6CE8\u610F\u4E8B\u9879 - \u8868 2 . aic_dvp_open \u51FD\u6570\u539F\u578B int aic_dvp_open(void) \u529F\u80FD\u8BF4\u660E \u4F7F\u80FD\u65F6\u949F\u3001\u4F7F\u80FD DVP \u63A7\u5236\u5668\u3001\u521D\u59CB\u5316 Buf \u94FE\u8868\u4FE1\u606F\u7B49 \u53C2\u6570\u5B9A\u4E49 \u65E0...","topics/sdk/dvp/dvp_key_procedure.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B DVP \u9A71\u52A8\u7684\u521D\u59CB\u5316\u8FC7\u7A0B\u603B\u4F53\u5206\u4E3A\u4E24\u5927\u90E8\u5206\uFF1A \u9636\u6BB5\u4E00\uFF1A\u7531 probe() \u63A5\u53E3\u5B8C\u6210\u8D44\u6E90\u7533\u8BF7\u3001\u6CE8\u518C subdev\u3001\u6CE8\u518C buf\u3001\u6CE8\u518C notifier \u7B49\u64CD\u4F5C\u3002 \u9636\u6BB5\u4E8C\uFF1A\u7531 notifier \u7684 complete() \u63A5\u53E3\u5B8C\u6210\uFF0C\u9700\u8981\u7B49 Sensor \u6267\u884C\u5B8C\u521D\u59CB\u5316\uFF08\u5176 probe() \u63A5\u53E3\uFF09\u540E\u624D\u80FD\u6267\u884C\uFF0C\u5B8C\u6210\u7684\u64CD\u4F5C\u6709\uFF1A\u6CE8\u518C device\u3001\u6CE8\u518C device\u3001\u914D\u7F6E link \u7B49\u3002 Probe...","topics/sdk/dvp/dvp_key_procedure_lite.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B \u603B\u4F53\u4E0A\u770B\uFF0CDVP \u9A71\u52A8\u7684\u521D\u59CB\u5316\u8FC7\u7A0B\u5206\u4E3A\u4E24\u5927\u6BB5\uFF1A \u7531 probe() \u63A5\u53E3\u5B8C\u6210\u4E2D\u65AD\u7533\u8BF7\u3001\u7BA1\u7406\u72B6\u6001\u521D\u59CB\u5316\uFF0C\u4E3B\u8981\u4EFB\u52A1\u5305\u62EC\u6CE8\u518C\u4E2D\u65AD\u5904\u7406\u51FD\u6570\u3001\u521D\u59CB\u5316\u5168\u5C40\u53D8\u91CF\u548C\u6570\u636E\u7ED3\u6784\u3002 \u7531 open() \u63A5\u53E3\u5B8C\u6210\uFF0C\u9700\u8981\u7B49 Sensor \u6267\u884C\u5B8C\u521D\u59CB\u5316\u540E\u624D\u80FD\u6267\u884C\u3002\u5B8C\u6210\u7684\u64CD\u4F5C\u5305\u62EC\u4F7F\u80FD\u65F6\u949F\u3001\u4F7F\u80FD DVP \u63A7\u5236\u5668\u3001\u521D\u59CB\u5316 Buf \u94FE\u8868\u4FE1\u606F\u7B49\u3002 Buf \u7BA1\u7406 Buf \u7BA1\u7406\u6D89\u53CA\u4EE5\u4E0B\u5173\u952E\u64CD\u4F5C\uFF1A \u521D\u59CB\u5316 Buf \u961F\u5217\u3002...","topics/sdk/dvp/dvp_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F\uFF0C\u6216\u8005 D211 \u7684 FPGA \u677F \u53EF\u8F6C\u63A5\u6444\u50CF\u5934\u7684\u5B50\u677F \u6444\u50CF\u5934\uFF0C\u5982 OV5640 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 DVP \u6A21\u5757\u7684\u6D4B\u8BD5 demo\uFF1Atest_dvp \u8F6F\u4EF6\u914D\u7F6E \u914D\u7F6E OV5640 \u6444\u50CF\u5934 \u6D4B\u8BD5\u4E2D\u9700\u8981\u7528\u5230\u6444\u50CF\u5934\uFF0C\u4EE5 OV5640 \u4E3A\u4F8B\uFF0C\u5728 Luban \u7684\u6839\u76EE\u5F55\u4E0B\u901A\u8FC7 make kernel-menuconfig \uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A...","topics/sdk/dvp/dvp_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u9700\u8981\u9A8C\u8BC1\u677F\uFF0C\u4E0A\u9762\u53EF\u4EE5\u63A5 DVP \u5B50\u677F \u53EF\u8F6C\u63A5\u6444\u50CF\u5934\u7684\u5B50\u677F \u6444\u50CF\u5934\uFF0C\u5982 OV5640 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 DVP \u6A21\u5757\u7684\u6D4B\u8BD5 demo\uFF1Atest_dvp test_dvp \u6D4B\u8BD5 test_dvp \u7684\u4E3B\u8981\u529F\u80FD\u662F\u5C06\u6444\u50CF\u5934\u7684\u6570\u636E\u91C7\u96C6\u540E\uFF0C\u4F20\u7ED9 DE \u6A21\u5757\u7684 Video \u56FE\u5C42\u8FDB\u884C\u663E\u793A\u3002test_dvp...","topics/sdk/dvp/dvp_user_guide.html@@@DVP \u4F7F\u7528\u6307\u5357@@@Digital Video Port (DVP) \u6A21\u5757\u662F\u4E00\u4E2A\u8D1F\u8D23\u4ECE Sensor \uFF08\u4F20\u611F\u5668\uFF09\u4E2D\u83B7\u53D6\u6570\u636E\uFF0C\u7ECF\u8FC7\u683C\u5F0F\u8F6C\u6362\u6216\u8005\u7F29\u653E\u540E\u8F93\u51FA\u5230\u5185\u5B58 (DRAM) \u4E2D\u7684\u786C\u4EF6\u7EC4\u4EF6\u3002DVP \u6A21\u5757\u5E94\u7528\u4E8E\u5D4C\u5165\u5F0F\u7CFB\u7EDF\u548C\u591A\u5A92\u4F53\u8BBE\u5907\u4E2D\uFF0C\u7528\u4E8E\u5904\u7406\u6765\u81EA\u6444\u50CF\u5934\u7684\u89C6\u9891\u6570\u636E\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E CMA Contiguous Memory Allocator \u8FDE\u7EED\u5185\u5B58\u5206\u914D\u5668 DVP Digital Video...","topics/sdk/dvp/dvp_user_guide_2.html@@@DVP \u4F7F\u7528\u6307\u5357@@@Digital Video Port (DVP) \u6A21\u5757\u662F\u4E00\u4E2A\u8D1F\u8D23\u4ECE Sensor \uFF08\u4F20\u611F\u5668\uFF09\u4E2D\u83B7\u53D6\u6570\u636E\uFF0C\u7ECF\u8FC7\u683C\u5F0F\u8F6C\u6362\u6216\u8005\u7F29\u653E\u540E\u8F93\u51FA\u5230\u5185\u5B58 (DRAM) \u4E2D\u7684\u786C\u4EF6\u7EC4\u4EF6\u3002DVP \u6A21\u5757\u5E94\u7528\u4E8E\u5D4C\u5165\u5F0F\u7CFB\u7EDF\u548C\u591A\u5A92\u4F53\u8BBE\u5907\u4E2D\uFF0C\u7528\u4E8E\u5904\u7406\u6765\u81EA\u6444\u50CF\u5934\u7684\u89C6\u9891\u6570\u636E\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E CMA Contiguous Memory Allocator \u8FDE\u7EED\u5185\u5B58\u5206\u914D\u5668 DVP Digital Video...","topics/sdk/efuse/efuse-design_intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/efuse/drv_efuse.c \uFF0CeFuse Driver \u5C42\u5B9E\u73B0 bsp/artinchip/drv/efuse/efuse_cmds.c \uFF0CeFuse Command \u5B9E\u73B0 bsp/artinchip/hal/efuse/hal_efuse.c \uFF0CeFuse HAL \u5C42\u5B9E\u73B0...","topics/sdk/efuse/efuse_config.html@@@eFuse \u914D\u7F6E@@@\u901A\u5E38 eFuse \u4FE1\u606F\u7684\u8BFB\u5199\u542F\u52A8\u7A0B\u5E8F\u3001\u751F\u4EA7\u8FC7\u7A0B\u6BD4\u8F83\u76F8\u5173\uFF0C\u5185\u6838\u4EE5\u53CA\u7528\u6237\u6001\u7A0B\u5E8F\u4E0D\u9700\u8981\u5173\u5FC3 eFuse \u7684\u5185\u5BB9\u3002 \u4F46\u7531\u4E8E eFuse \u4E2D\u4E5F\u53EF\u4EE5\u4FDD\u7559\u4E00\u4E9B\u4EA7\u54C1\u76F8\u5173\u7684\u4FE1\u606F\uFF0C\u56E0\u6B64\u4E5F\u53EF\u4EE5\u901A\u8FC7\u5185\u6838\u76F8\u5173\u9A71\u52A8\u8BFB\u53D6 eFuse\u3002 \u5185\u6838\u914D\u7F6E \u901A\u8FC7\u5185\u6838\u914D\u7F6E\u4F7F\u80FD eFuse \u76F8\u5173\u7684\u5185\u6838\u9A71\u52A8\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4...","topics/sdk/efuse/efuse_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [*] Using Efuse/SID \u8FDB\u884C\u5982\u4E0A\u7684\u914D\u7F6E\u4E4B\u540E\uFF0CeFuse \u9A71\u52A8\u4F7F\u80FD\u3002...","topics/sdk/efuse/efuse_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u901A\u8FC7\u5185\u6838\u914D\u7F6E\u4F7F\u80FD eFuse \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u7684\u914D\u7F6E\u754C\u9762\u4E2D\uFF0C\u914D\u7F6E\u4E0B\u5217\u9009\u9879\uFF1A Linux Kernel hacking ArtInChip Debug [*] SID(eFuse) driver debug \u6253\u5F00...","topics/sdk/efuse/efuse_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D eFuse \u9A71\u52A8\u63D0\u4F9B\u4E86 Command \u7528\u4E8E\u67E5\u770B\u3001\u8BFB\u53D6\u3001\u5199\u5165 eFuse \u6570\u636E\uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u8FDB\u884C\u5982\u4E0B\u914D\u7F6E\u5373\u53EF\u652F\u6301 eFuse Command\u3002 Drivers options ---> Drivers examples ---> [*] Enable SID driver test command \u4F7F\u7528\u5E2E\u52A9 efuse...","topics/sdk/efuse/efuse_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/efuse/drv_efuse.c \uFF0CeFuse Driver \u5C42\u5B9E\u73B0 bsp/artinchip/drv/efuse/efuse_cmds.c \uFF0CeFuse Command \u5B9E\u73B0 bsp/artinchip/hal/efuse/hal_efuse.c \uFF0CeFuse HAL \u5C42\u5B9E\u73B0...","topics/sdk/efuse/efuse_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/efuse/efuse_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/efuse/efuse_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@eFuse \u5728\u7528\u6237\u7A7A\u95F4\u4EC5\u53EF\u8BFB\u53D6\uFF0C\u4E0D\u53EF\u5199\u3002 \u8BFB\u53D6 eFuse \u5185\u5BB9\u53EF\u901A\u8FC7\u4E0B\u5217\u547D\u4EE4\u8FDB\u884C\uFF1A hexdump /sys/bus/nvmem/devices/aic-efuse0/nvmem...","topics/sdk/efuse/efuse_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@...","topics/sdk/efuse/efuse_user_guide.html@@@eFuse \u4F7F\u7528\u6307\u5357@@@\u82AF\u7247\u7535\u8DEF\u901A\u5E38\u662F\u751F\u4EA7\u65F6\u7269\u7406\u56FA\u5316\u7684\u7535\u8DEF\uFF0C\u751F\u4EA7\u5B8C\u6210\u4E4B\u540E\u4E0D\u53EF\u6539\u53D8\u3002\u5B9E\u9645\u5E94\u7528\u4E2D\u6709\u4E00\u4E9B\u91CD\u8981\u4FE1\u606F\uFF0C\u9700\u8981\u56FA\u5316\u5728\u82AF\u7247\u4E4B\u4E2D\uFF0C \u4F7F\u5F97\u4E0A\u7535\u5373\u53EF\u8BFB\u53D6\u4F7F\u7528\uFF0C\u6BD4\u5982\u4E00\u4E9B\u786C\u4EF6\u7684\u6027\u80FD\u53C2\u6570\u4FE1\u606F\u3002\u4F46\u662F\u8FD9\u4E9B\u53C2\u6570\u53EF\u80FD\u4E0E\u82AF\u7247\u7684\u751F\u4EA7\u5DE5\u827A\u3001\u6240\u7528\u7684\u6750\u6599\u7B49\u6709\u5173\u7CFB\uFF0C \u65E0\u6CD5\u5728\u8BBE\u8BA1\u65F6\u786E\u5B9A\uFF0C\u56E0\u6B64\u9700\u8981\u6709\u4E00\u79CD\u5B58\u50A8\u6280\u672F\uFF0C\u5373\u53EF\u4EE5\u56FA\u5316\u4FE1\u606F\uFF0C\u53C8\u80FD\u591F\u5728\u751F\u4EA7\u4E4B\u540E\u8FDB\u884C\u4FEE\u6539\u3002 eFuse \u5C31\u662F\u4E00\u79CD\u5141\u8BB8\u82AF\u7247\u4E0A\u7684\u7535\u8DEF\u5728\u8FD0\u884C\u65F6\u8FDB\u884C\u4FEE\u6539\u7684\u6280\u672F\u3002\u5B83\u7C7B\u4F3C...","topics/sdk/efuse/efuse_user_guide_2.html@@@eFuse \u4F7F\u7528\u6307\u5357@@@\u82AF\u7247\u7535\u8DEF\u901A\u5E38\u662F\u751F\u4EA7\u65F6\u7269\u7406\u56FA\u5316\u7684\u7535\u8DEF\uFF0C\u751F\u4EA7\u5B8C\u6210\u4E4B\u540E\u4E0D\u53EF\u6539\u53D8\u3002\u5B9E\u9645\u5E94\u7528\u4E2D\u6709\u4E00\u4E9B\u91CD\u8981\u4FE1\u606F\uFF0C\u9700\u8981\u56FA\u5316\u5728\u82AF\u7247\u4E4B\u4E2D\uFF0C \u4F7F\u5F97\u4E0A\u7535\u5373\u53EF\u8BFB\u53D6\u4F7F\u7528\uFF0C\u6BD4\u5982\u4E00\u4E9B\u786C\u4EF6\u7684\u6027\u80FD\u53C2\u6570\u4FE1\u606F\u3002\u4F46\u662F\u8FD9\u4E9B\u53C2\u6570\u53EF\u80FD\u4E0E\u82AF\u7247\u7684\u751F\u4EA7\u5DE5\u827A\u3001\u6240\u7528\u7684\u6750\u6599\u7B49\u6709\u5173\u7CFB\uFF0C \u65E0\u6CD5\u5728\u8BBE\u8BA1\u65F6\u786E\u5B9A\uFF0C\u56E0\u6B64\u9700\u8981\u6709\u4E00\u79CD\u5B58\u50A8\u6280\u672F\uFF0C\u5373\u53EF\u4EE5\u56FA\u5316\u4FE1\u606F\uFF0C\u53C8\u80FD\u591F\u5728\u751F\u4EA7\u4E4B\u540E\u8FDB\u884C\u4FEE\u6539\u3002 eFuse \u5C31\u662F\u4E00\u79CD\u5141\u8BB8\u82AF\u7247\u4E0A\u7684\u7535\u8DEF\u5728\u8FD0\u884C\u65F6\u8FDB\u884C\u4FEE\u6539\u7684\u6280\u672F\u3002\u5B83\u7C7B\u4F3C...","topics/sdk/env/compile.html@@@\u56FA\u4EF6\u7F16\u8BD1@@@\u672C\u8282\u4ECB\u7ECD\u4E86\u7F16\u8BD1\u56FA\u4EF6\u7684\u5E38\u89C4\u6D41\u7A0B\u3002\u5728\u5F00\u59CB\u7F16\u8BD1\u56FA\u4EF6\u4E4B\u524D\uFF0C\u786E\u4FDD\u7F16\u8BD1\u73AF\u5883\u5DF2\u7ECF\u642D\u5EFA\u5B8C\u6210\u3002\u5173\u4E8E\u64CD\u4F5C\u7CFB\u7EDF\u548C\u4F9D\u8D56\u7684\u8BE6\u7EC6\u5B89\u88C5\u8BF4\u660E\uFF0C\u53EF\u67E5\u770B Ubuntu \u548C VMWare \u5B89\u88C5 \u3002 \u9879\u76EE\u914D\u7F6E\u4E0E\u7F16\u8BD1 \u9009\u62E9\u4EE5\u4E0B\u4EFB\u610F\u4E00\u79CD\u7F16\u8BD1\u548C\u914D\u7F6E\u547D\u4EE4\u65B9\u5F0F\uFF0C\u5BF9\u9879\u76EE\u8FDB\u884C\u914D\u7F6E\u548C\u7F16\u8BD1\uFF1A \uFF0C\u4F8B\u5982\uFF1A make list make d211_demo128_nand_defconfig make OneStep \u5FEB\u6377\u547D\u4EE4 \uFF0C\u4F8B\u5982\uFF1A source...","topics/sdk/env/eclipse.html@@@Eclipse@@@\u672C\u8282\u4ECB\u7ECD\u4E86\u4F7F\u7528 Eclipse IDE \u521B\u5EFA\u3001\u7F16\u8BD1\u548C\u4FEE\u6539 Eclipse \u5DE5\u7A0B\u7684\u8BE6\u7EC6\u6D41\u7A0B\u3002 \u4F7F\u7528 Eclipse IDE \u524D\uFF0C\u786E\u4FDD\u5DF2\u7ECF\u4E0B\u8F7D\u548C\u5B89\u88C5 Eclipse IDE for Embedded C/C++ Developers \u3002 Eclipse \u5DE5\u7A0B\u7F16\u8BD1\u6D89\u53CA\u4E0B\u5217\u5DE5\u7A0B\u6587\u4EF6\uFF0C\u4E24\u8005\u7684\u533A\u522B\u5982\u4E0B\uFF1A eclipse \u5DE5\u7A0B\uFF1A\u6E90\u7801\u6587\u4EF6\u548C Luban-Lite SDK \u5171\u4EAB\uFF0C\u53EF\u4EE5\u4F7F\u7528 menuconfig...","topics/sdk/env/sdk-compile.html@@@SDK \u7F16\u8BD1@@@\u4ECB\u7ECD\u4E0D\u540C\u7F16\u8BD1\u73AF\u5883\u4E0B SDK \u7684\u8BE6\u7EC6\u7F16\u8BD1\u6D41\u7A0B\u3002...","topics/sdk/env/sourcecode.html@@@\u51C6\u5907\u4EE3\u7801@@@Luban-Lite SDK \u7684\u4EE3\u7801\u6258\u7BA1\u4E8E Gitee \u670D\u52A1\u5668\u4E2D\uFF0C\u4E3A\u5F00\u6E90\u4EE3\u7801\u3002\u672C\u8282\u63CF\u8FF0\u4E86\u5982\u4F55\u4ECE\u5BF9\u5E94\u7684\u4ED3\u5E93\u5730\u5740\u4E2D\u4E0B\u8F7D\u6E90\u4EE3\u7801\u3002 Git \u63A8\u8350\u901A\u8FC7 Git \u7528\u6237\u7AEF\u4E0B\u8F7D\u4EE3\u7801\uFF0C\u53EF\u4EE5\u5B9E\u65F6\u5173\u6CE8\u670D\u52A1\u5668\u8865\u4E01\u548C\u7248\u672C\u7684\u53D1\u5E03\uFF1A git clone https: //gitee.com/artinchip/luban-lite.git HTTP \u901A\u8FC7\u7F51\u7EDC\u4E0B\u8F7D\u7684\u65B9\u5F0F\u53EF\u76F4\u63A5\u4E0B\u8F7D\u538B\u7F29\u5305\uFF0C\u8BE6\u7EC6\u6B65\u9AA4\u5982\u4E0B\uFF1A \u5728 Gitee \u4E0A\u6253\u5F00...","topics/sdk/env/ubuntu2004.html@@@Ubuntu@@@Luban-Lite SDK \u7684\u5F00\u53D1\u53EF\u4EE5\u5728 Linux \u7CFB\u7EDF\u4E2D\u8FDB\u884C\uFF0C Luban-Lite SDK \u76EE\u524D\u81EA\u52A8\u652F\u6301\u7684 Linux \u53D1\u884C\u7248\u4E3A\uFF1A Ubuntu 18.04\u300120.04\u300122.04 CentOS 7.x\u30018.x ArtInChip \u63A8\u8350\u7684 Linux \u53D1\u884C\u7248\u4E3A Ubuntu 20.04 LTS\uFF08Long Term Support\uFF09\u7248\u672C\uFF0C\u672C\u8282\u4EE5\u6B64\u7248\u672C\u5C55\u793A Ubuntu...","topics/sdk/env/vmware-config-vm.html@@@\u914D\u7F6E\u865A\u62DF\u673A@@@Ubuntu \u7CFB\u7EDF\u5B89\u88C5\u5B8C\u6210\u540E\uFF0C\u9700\u8981\u6267\u884C\u672C\u8282\u63CF\u8FF0\u7684\u914D\u7F6E\u6D41\u7A0B\u3002 \u5728\u5B8C\u6210\u914D\u7F6E\u6D41\u7A0B\u540E\uFF0C\u6253\u5F00\u7684\u7CFB\u7EDF\u624D\u662F\u62E5\u6709\u5B8C\u6574\u529F\u80FD\u7684 Ubuntu20.04 \u7CFB\u7EDF\u3002\u5173\u4E8E\u5982\u4F55\u51C6\u5907 Luban-Lite \u7684\u7F16\u8BD1\u73AF\u5883\uFF0C\u53EF\u53C2\u8003 Ubuntu \u3002 VMWare Tools VMWare Tools \u662F VMWare \u63D0\u4F9B\u7684\u4E00\u4E2A\u5DE5\u5177\u5305\uFF0C\u5FC5\u987B\u5B89\u88C5\u3002 \u9664\u4E86\u81EA\u5E26\u7684\u5DE5\u5177\u5916\uFF0CVMWare Tools...","topics/sdk/env/vmware-install-ubuntu.html@@@\u5B89\u88C5 Ubuntu@@@\u672C\u7AE0\u8282\u4ECB\u7ECD\u5728\u865A\u62DF\u673A\u4E0A\u5B89\u88C5 Ubuntu \u7684\u65B9\u6CD5\uFF0C\u4EE5 Ubuntu20.04 \u7248\u672C\u4E3A\u4F8B\u3002\u5982\u4F7F\u7528\u5176\u4ED6\u7248\u672C\uFF0C\u5B89\u88C5\u65B9\u5F0F\u53EF\u80FD\u4F1A\u6709\u5DEE\u5F02\u3002 \u5168\u65B0\u5B89\u88C5 \u8BBE\u7F6E Ubuntu \u6587\u4EF6\u8DEF\u5F84\uFF1A \u6253\u5F00\u7684 VMWare \u9009\u62E9 \u6211\u7684\u8BA1\u7B97\u673A \u4E2D\u7684 Luban-Lite \u865A\u62DF\u673A \u5728 \u8BBE\u5907 \u4E2D\u70B9\u51FB CD/DVD \u3002 \u9009\u4E2D\u4F7F\u7528 ISO \u6620\u50CF\u6587\u4EF6\u3002 \u901A\u8FC7 \u6D4F\u89C8 \u9009\u4E2D Ubuntu-20.04.3-desktop-amd64.iso \u3002...","topics/sdk/env/vmware.html@@@VMWare \u5B89\u88C5@@@\u5982\u9700\u5728\u865A\u62DF\u673A\u4E0A\u8FDB\u884C Luban-Lite \u7684\u5F00\u53D1\u5DE5\u4F5C\uFF0C\u53EF\u4EE5\u53C2\u8003\u672C\u8282\u7684\u5B89\u88C5\u8BF4\u660E\u3002...","topics/sdk/env/vscode.html@@@VSCode@@@Luban-Lite \u652F\u6301\u5728 VSCode \u73AF\u5883\u4E2D\u5B8C\u6210\u5168\u6D41\u7A0B\u7684\u5F00\u53D1\uFF0C\u5305\u62EC\u4EE3\u7801\u7F16\u8F91\u3001\u7F16\u8BD1\u3001\u8C03\u8BD5\u548C\u70E7\u5199\u3002VSCode \u662F\u4E00\u6B3E\u5F00\u6E90\u3001\u514D\u8D39\u3001\u8DE8\u5E73\u53F0\u7684\u6E90\u4EE3\u7801\u7F16\u8F91\u5668\uFF0C\u7531 MicroSoft \u5F00\u53D1\uFF0C\u7279\u70B9\u662F\u8F7B\u91CF\u7EA7\u3001\u9AD8\u6027\u80FD\u548C\u53EF\u6269\u5C55\u3002 \u6CE8\uFF1A \u4EC5\u5728\u6253\u5F00 Luban-Lite \u6839\u76EE\u5F55\u7684\u524D\u63D0\u4E0B\uFF0CVSCode \u624D\u80FD\u5B8C\u6210\u4EE5\u4E0B\u7684\u7F16\u8BD1\u3001\u8C03\u8BD5\u548C\u70E7\u5199\u64CD\u4F5C\u3002 \u63D2\u4EF6\u5B89\u88C5 \u5982\u9700\u5728 VSCode \u4E2D\u8FDB\u884C C/C++ \u8BED\u8A00\u7684\u8C03\u8BD5\uFF0C\u5FC5\u987B\u5148\u5B89\u88C5\u63D2\u4EF6...","topics/sdk/env/windows.html@@@Windows@@@\u672C\u8282\u4ECB\u7ECD\u4E86 Windows \u73AF\u5883\u4E0B\u53EF\u4EE5\u91C7\u7528\u7684\u7F16\u8BD1\u65B9\u5F0F\uFF0C\u4EE5\u53CA\u4E24\u4E2A\u547D\u4EE4\u884C\u5DE5\u5177\u7684\u4F7F\u7528\u3002 Luban-Lite SDK \u91C7\u7528\u4E86 Scons \u4F5C\u4E3A\u7F16\u8BD1\u6846\u67B6\u7684\u57FA\u7840\u8BED\u8A00\uFF0CWindows \u73AF\u5883\u4E2D\u4F7F\u7528\u7684\u5DE5\u5177\u5B58\u653E\u5728 luban-lite/tools/env/tools \u76EE\u5F55\u4E2D\uFF0C\u4E0D\u9700\u8981\u5355\u72EC\u5B89\u88C5\u3002 \u5E38\u89C4\u7F16\u8BD1 Windows \u73AF\u5883\u4E0B\u7684\u5E38\u89C4\u7F16\u8BD1\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u5DE5\u7A0B\u52A0\u8F7D \u53CC\u51FB SDK \u6839\u76EE\u5F55\u4E0B\u7684 win_cmd.bat \u6216...","topics/sdk/env/wmware-create-vm.html@@@\u521B\u5EFA\u865A\u62DF\u673A@@@\u81EA\u5B9A\u4E49\u5B89\u88C5 \u5728\u65B0\u5EFA\u865A\u62DF\u673A\u7684\u5411\u5BFC\u9875\u9009\u62E9 \u81EA\u5B9A\u4E49\u5B89\u88C5 \uFF0C\u5E76\u5B8C\u6210 VMWare \u548C\u5E73\u53F0\u5173\u8054\u7684\u5B9A\u5236\u8BBE\u7F6E\u3002 \u624B\u52A8\u5B89\u88C5\u64CD\u4F5C\u7CFB\u7EDF \u5728\u64CD\u4F5C\u7CFB\u7EDF\u5B89\u88C5\u754C\u9762\u9009\u62E9 \u7A0D\u540E\u5B89\u88C5\u64CD\u4F5C\u7CFB\u7EDF \u3002 VMWare \u5728\u81EA\u52A8\u5B89\u88C5\u64CD\u4F5C\u7CFB\u7EDF\u65F6\u4F1A\u987A\u5E26\u5B89\u88C5\u81EA\u5E26\u7684 VMware tools\uFF0C \u4F46\u8BE5 tools \u4EE5 iso \u65B9\u5F0F\u5B58\u5728\uFF0C\u9700\u8981\u865A\u62DF\u5149\u9A71\u65B9\u5F0F\u6302\u8F7D\u51FA\u6765\u624D\u80FD\u5B89\u88C5\u3002\u8BE5\u6302\u8F7D\u4EFB\u52A1\u53EA\u80FD\u5728\u7CFB\u7EDF\u542F\u52A8\u540E\u624B\u52A8\u6267\u884C\uFF0C\u6240\u4EE5\u81EA\u52A8\u5B89\u88C5\u5F80\u5F80\u4F1A\u5361\u5728 VMWare tools...","topics/sdk/file-system/file-system-user-guide.html@@@\u6587\u4EF6\u7CFB\u7EDF\u4F7F\u7528\u6307\u5357@@@...","topics/sdk/file-system/lb_usage_autoboot.html@@@\u5F00\u673A\u542F\u52A8@@@\u5728 Luban SDK \u4E2D\uFF0C\u901A\u8FC7\u4EE5\u4E0B\u591A\u79CD\u65B9\u5F0F\u53EF\u4EE5\u4E3A\u9879\u76EE\u5B89\u88C5\u5F00\u673A\u521D\u59CB\u5316\u811A\u672C\uFF1A init.d \u811A\u672C \uFF1A\u5982\u679C\u521D\u59CB\u5316\u811A\u672C\u4E0E\u7EC4\u4EF6\u5305\u76F8\u5173\u3002 RootFS Overlay \uFF1A\u5982\u679C\u521D\u59CB\u5316\u811A\u672C\u4E0E\u5177\u4F53\u7684\u7EC4\u4EF6\u5305\u6CA1\u6709\u76F4\u63A5\u5173\u7CFB\u3002 initscripts \uFF1A\u4E0D\u5EFA\u8BAE\u5C06\u8FC7\u591A\u7684\u811A\u672C\u5B58\u653E\u5728 initscripts \u5305\u4E2D\u8FDB\u884C\u5B89\u88C5\u3002 \u63D0\u793A\uFF1A \u767B\u5F55\u4E4B\u524D linuxrc \u4F1A\u6267\u884C\u5F00\u673A\u811A\u672C\uFF0C\u6267\u884C\u7684\u5185\u5BB9\u548C\u987A\u5E8F\u53EF\u8BE6\u7EC6\u53C2\u8003...","topics/sdk/ge/ge_blit.html@@@\u4F4D\u5757\u642C\u79FB@@@\u4F4D\u5757\u642C\u79FB\u53EF\u4EE5\u5206\u4E24\u79CD\u60C5\u51B5\uFF1A \u539F\u56FE\u7684\u77E9\u5F62\u533A\u57DF\u642C\u79FB\u5230\u76EE\u6807\u56FE\u7684\u77E9\u5F62\u533A\u57DF\u4E2D\u4E0D\u8FDB\u884C\u7F29\u653E \u56FE 1 . \u4E0D\u8FDB\u884C\u7F29\u653E \u539F\u56FE\u7684\u77E9\u5F62\u533A\u57DF\u642C\u79FB\u5230\u76EE\u6807\u56FE\u7684\u77E9\u5F62\u533A\u57DF\u4E2D\u540C\u65F6\u8FDB\u884C\u653E\u5927\u6216\u8005\u7F29\u5C0F \u56FE 2 . \u8FDB\u884C\u7F29\u653E \u5728\u8FDB\u884C\u4F4D\u5757\u642C\u79FB\u7684\u540C\u65F6\u53EF\u4EE5\u8FDB\u884C blending \u548C key\uFF0C\u540C\u65F6\u4E5F\u652F\u6301 90/180/270 \u5EA6\u65CB\u8F6C\u548C\u955C\u50CF\u3002...","topics/sdk/ge/ge_cmdq_mode.html@@@\u547D\u4EE4\u961F\u5217\u6A21\u5F0F@@@\u547D\u4EE4\u961F\u5217\u6A21\u5F0F\uFF0C\u5373 CMD queue \u6A21\u5F0F\u3002GE \u7684\u5B8C\u6574\u529F\u80FD\u9700\u8981\u4F9D\u8D56 MPP \u4E2D\u95F4\u4EF6\uFF0C \u5728 MPP \u4E2D\u95F4\u4EF6\u4E2D\u4F1A\u628A\u7528\u6237\u8BBE\u7F6E\u7684\u53C2\u6570\u4FE1\u606F\u8F6C\u6362\u6210\u786C\u4EF6\u53EF\u4EE5\u8BC6\u522B\u7684\u547D\u4EE4\u961F\u5217\u4FE1\u606F\u3002 \u5728 CMD queue \u6A21\u5F0F\u4E0B\uFF0CGE \u9A71\u52A8\u5185\u90E8\u4EE5\u4E0B\u5217\u547D\u4EE4\u961F\u5217\u65B9\u5F0F\u6267\u884C\uFF0C GE \u9A71\u52A8\u53EA\u8D1F\u8D23\u63A5\u6536\u5E76\u6267\u884C\u547D\u4EE4\u961F\u5217\uFF1A Task\uFF1AGE \u53EF\u4EE5\u6267\u884C\u7684\u6700\u5C0F\u4EFB\u52A1\u5355\u5143\uFF0C\u6BD4\u5982\u4E00\u6B21 blit \u64CD\u4F5C\u6216\u4E00\u6B21\u77E9\u5F62\u586B\u5145\u3002...","topics/sdk/ge/ge_cmdq_mode_lite.html@@@\u547D\u4EE4\u961F\u5217\u6A21\u5F0F@@@\u547D\u4EE4\u961F\u5217\u6A21\u5F0F\uFF0C\u5373 CMD queue \u6A21\u5F0F\u3002GE \u7684\u5B8C\u6574\u529F\u80FD\u9700\u8981\u4F9D\u8D56 MPP \u4E2D\u95F4\u4EF6\uFF0C \u5728 MPP \u4E2D\u95F4\u4EF6\u4E2D\u4F1A\u628A\u7528\u6237\u8BBE\u7F6E\u7684\u53C2\u6570\u4FE1\u606F\u8F6C\u6362\u6210\u786C\u4EF6\u53EF\u4EE5\u8BC6\u522B\u7684\u547D\u4EE4\u961F\u5217\u4FE1\u606F\u3002 \u5728 CMD queue \u6A21\u5F0F\u4E0B\uFF0CGE \u9A71\u52A8\u5185\u90E8\u4EE5\u4E0B\u5217\u547D\u4EE4\u961F\u5217\u65B9\u5F0F\u6267\u884C\uFF0C GE \u9A71\u52A8\u53EA\u8D1F\u8D23\u63A5\u6536\u5E76\u6267\u884C\u547D\u4EE4\u961F\u5217\uFF1A Task\uFF1AGE \u53EF\u4EE5\u6267\u884C\u7684\u6700\u5C0F\u4EFB\u52A1\u5355\u5143\uFF0C\u6BD4\u5982\u4E00\u6B21 blit \u64CD\u4F5C\u6216\u4E00\u6B21\u77E9\u5F62\u586B\u5145\u3002...","topics/sdk/ge/ge_compare_mode.html@@@\u975E\u547D\u4EE4\u961F\u5217\u548C\u547D\u4EE4\u961F\u5217\u5BF9\u6BD4@@@CMD queue \u4E0E normal \u6A21\u5F0F\u9A71\u52A8\u7684\u533A\u522B\u5982\u4E0B\uFF1A \u5728 CMD queue \u6A21\u5F0F\u4E0B\uFF0C\u589E\u52A0\u4E86 hal_ge_write \u63A5\u53E3\u3002\u547D\u4EE4\u961F\u5217\u901A\u8FC7 hal_ge_write \u63A5\u53E3\uFF0C\u4EE5 batch \u4E3A\u5355\u4F4D\u53D1\u9001\u7ED9\u9A71\u52A8\u3002 \u4E00\u4E2A batch \u4E2D\u53EF\u4EE5\u5305\u542B\u591A\u4E2A task \u7684\u547D\u4EE4\u3002 hal_ge_write \u64CD\u4F5C\u662F\u5F02\u6B65\u7684\uFF0C\u76F8\u5E94\u7684\u547D\u4EE4\u53EA\u8981\u5199\u5165\u9A71\u52A8\u4E2D\u7684 cmd queue buffer \u5373\u8FD4\u56DE\uFF0C\u4E0D\u7528\u7B49\u5F85\u786C\u4EF6\u6267\u884C\u5B8C\u5F53\u524D...","topics/sdk/ge/ge_compare_mode_2.html@@@\u975E\u547D\u4EE4\u961F\u5217\u548C\u547D\u4EE4\u961F\u5217\u5BF9\u6BD4@@@CMD queue \u4E0E normal \u6A21\u5F0F\u9A71\u52A8\u7684\u533A\u522B\u5982\u4E0B\uFF1A \u5728 CMD queue \u6A21\u5F0F\u4E0B\uFF0C\u589E\u52A0\u4E86 hal_ge_write \u63A5\u53E3\u3002\u547D\u4EE4\u961F\u5217\u901A\u8FC7 hal_ge_write \u63A5\u53E3\uFF0C\u4EE5 batch \u4E3A\u5355\u4F4D\u53D1\u9001\u7ED9\u9A71\u52A8\u3002 \u4E00\u4E2A batch \u4E2D\u53EF\u4EE5\u5305\u542B\u591A\u4E2A task \u7684\u547D\u4EE4\u3002 hal_ge_write \u64CD\u4F5C\u662F\u5F02\u6B65\u7684\uFF0C\u76F8\u5E94\u7684\u547D\u4EE4\u53EA\u8981\u5199\u5165\u9A71\u52A8\u4E2D\u7684 cmd queue buffer \u5373\u8FD4\u56DE\uFF0C\u4E0D\u7528\u7B49\u5F85\u786C\u4EF6\u6267\u884C\u5B8C\u5F53\u524D...","topics/sdk/ge/ge_config.html@@@GE \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E GE \u9A71\u52A8\u4F9D\u8D56 BUF\u3001CMA\uFF0C\u9700\u8981\u63D0\u524D\u6253\u5F00\u3002 \u6253\u5F00 CMA \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Linux Memory Management options [*] Contiguous Memory Allocator \u6839\u636E\u5177\u4F53\u9700\u6C42\uFF0C\u914D\u7F6E...","topics/sdk/ge/ge_config_lite.html@@@GE \u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u901A\u8FC7 MPP \u5C42\u53EF\u4EE5 0 \u4F7F\u7528 GE\uFF0C\u4E14 MPP \u4F9D\u8D56 GE\uFF0C\u56E0\u6B64\u9700\u8981\u914D\u7F6E MPP\u3002 MPP \u4F7F\u80FD \u5728 Luban-Lite \u7684\u6839\u76EE\u5F55\u4E0B\u901A\u8FC7 scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Local packages options---> ArtInChip packages options---> [*]aic-mpp...","topics/sdk/ge/ge_data_structure.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@GE \u6A21\u5757\u6570\u636E\u7ED3\u6784\u5982\u4E0B\uFF1A enum ge_pd_rules Porter/Duff alpha \u6DF7\u5408\u89C4\u5219\u679A\u4E3E /* * enum ge_pd_mode - graphics engine Porter/Duff alpha blending rules * * pixel = (source * fs + destination * fd) * sa = source alpha * da =...","topics/sdk/ge/ge_data_structure_lite.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@GE \u6A21\u5757\u6570\u636E\u7ED3\u6784\u5982\u4E0B\uFF1A enum ge_pd_rules Porter/Duff alpha \u6DF7\u5408\u89C4\u5219\u679A\u4E3E /* * enum ge_pd_mode - graphics engine Porter/Duff alpha blending rules * * pixel = (source * fs + destination * fd) * sa = source alpha * da =...","topics/sdk/ge/ge_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6253\u5F00 GE \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A Linux Kernel hacking ArtInChip Debug [*] GE driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5 -O0 \u7F16\u8BD1\u3002 pr_dbg() \u548C...","topics/sdk/ge/ge_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/ge/ge_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@GE \u6E90\u4EE3\u7801\u5728\u5185\u6838\u76EE\u5F55 linux-5.10/drivers/video/artinchip \u4E0B\uFF0C\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B drivers/video/artinchip/ge/ \u251C\u2500\u2500 ge_normal.c // normal \u6A21\u5F0F\u9A71\u52A8 \u251C\u2500\u2500 ge_hw.c // normal \u6A21\u5F0F\u5BF9\u786C\u4EF6\u64CD\u4F5C\u7684\u5C01\u88C5 \u251C\u2500\u2500 ge_hw.h // normal \u6A21\u5F0F\u5BF9\u786C\u4EF6\u64CD\u4F5C\u5C01\u88C5\u7684 API \u251C\u2500\u2500 ge_cmdq.c...","topics/sdk/ge/ge_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u672C\u6A21\u5757\u6E90\u4EE3\u7801\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B HAL \u5C42\u5B9E\u73B0: luban-lite/bsp/artinchip/hal/ge \u251C\u2500\u2500 hal_ge_normal.c // normal \u6A21\u5F0F\u9A71\u52A8 \u251C\u2500\u2500 hal_ge_hw.c // normal \u6A21\u5F0F\u5BF9\u786C\u4EF6\u64CD\u4F5C\u7684\u5C01\u88C5 \u251C\u2500\u2500 hal_ge_hw.h // normal \u6A21\u5F0F\u5BF9\u786C\u4EF6\u64CD\u4F5C\u5C01\u88C5\u7684 API \u251C\u2500\u2500 hal_ge_cmdq.c // CMD...","topics/sdk/ge/ge_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5982\u4F55\u8BBE\u7F6E\u5185\u5B58\u5206\u914D\u548C\u53C2\u6570 \u786E\u5B9A\u5C4F\u5E55\u5206\u8FA8\u7387\u548C\u56FE\u50CF\u5206\u8FA8\u7387\u3002 \u6839\u636E\u56FE\u50CF\u5206\u8FA8\u7387\u548C\u989C\u8272\u6DF1\u5EA6\uFF08\u5982 RGBA \u683C\u5F0F\uFF09\uFF0C\u8BA1\u7B97\u6240\u9700\u7684\u5185\u5B58\u5927\u5C0F\u3002 \u5728\u7CFB\u7EDF\u542F\u52A8\u6216\u521D\u59CB\u5316\u9636\u6BB5\uFF0C\u9884\u7559\u8DB3\u591F\u5927\u5C0F\u7684 CMA\u3002\u53EF\u4EE5\u901A\u8FC7\u5185\u6838\u914D\u7F6E\u6216\u8005\u52A8\u6001\u5206\u914D\u6765\u5B9E\u73B0\u3002 GE \u6A21\u5757\u6240\u4F7F\u7528\u5185\u5B58\u4ECE CMA \u4E2D\u5206\u914D\uFF0C\u6839\u636E\u5C4F\u5E55\u5206\u8FA8\u7387\u548C\u9700\u8981\u5904\u7406\u7684\u56FE\u50CF\u7684\u5206\u8FA8\u7387\u9884\u7559\u5408\u7406\u5927\u5C0F\u7684 CMA\u3002 \u5728\u4F7F\u7528 GE \u6A21\u5757\u63A5\u53E3\u65F6\uFF0C\u786E\u4FDD\u7ED3\u6784\u4F53\u5404\u53C2\u6570\u7684\u6B63\u786E\u6027\u3002\u4F8B\u5982\uFF0C\u5047\u8BBE\u6709\u4E00\u4E2A...","topics/sdk/ge/ge_interface.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u5E94\u7528\u901A\u8FC7 hal_ge_open \u6253\u5F00 GE \u9A71\u52A8\u3002 IOC_GE_VERSION \u63A5\u53E3\u8BED\u6CD5\uFF1A int ioctl( int fd, unsigned long cmd, unsinged int *pversion); \u8868 1 . IOC_GE_VERSION \u529F\u80FD\u8BF4\u660E \u83B7\u53D6 GE \u7248\u672C \u53C2\u6570 cmd\uFF1AIOC_GE_VERSION pversion: \u6307\u5411 32 bits \u65E0\u7B26\u53F7\u7248\u672C\u53F7\u6307\u9488...","topics/sdk/ge/ge_interface_lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u5E94\u7528\u901A\u8FC7 hal_ge_open \u6253\u5F00 GE \u9A71\u52A8\u3002 \u8868 1 . IOC_GE_VERSION \u63A5\u53E3\u8BED\u6CD5\uFF1A int hal_ge_control( struct aic_ge_client *clt, unsigned long cmd, unsinged int *pversion); \u529F\u80FD\u8BF4\u660E \u83B7\u53D6 GE \u7248\u672C \u53C2\u6570 cmd\uFF1AIOC_GE_VERSION pversion: \u6307\u5411 32bits...","topics/sdk/ge/ge_mpp_api.html@@@MPP \u5BF9 GE \u63A5\u53E3\u7684\u5C01\u88C5@@@...","topics/sdk/ge/ge_normal_mode.html@@@\u975E\u547D\u4EE4\u961F\u5217\u6A21\u5F0F@@@\u975E\u547D\u4EE4\u961F\u5217\u6A21\u5F0F\uFF0C\u5373 normal \u6A21\u5F0F\u3002 GE normal \u6A21\u5F0F\u7684\u63A7\u5236\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u5F53\u7528\u6237\u6001\u901A\u8FC7 open \u51FD\u6570\u6253\u5F00 /dev/ge \u8BBE\u5907\u8282\u70B9\uFF0C\u4F1A\u8C03\u7528\u5230\u9A71\u52A8\u4E2D\u7684 open\u3002 \u5F53\u7528\u6237\u901A\u8FC7 close \u5173\u95ED\u9A71\u52A8\u65F6\uFF0C\u4F1A\u8C03\u7528\u5230\u9A71\u52A8\u4E2D\u7684 release\u3002 \u5728 open \u4E2D\u4E3B\u8981\u662F\u5B9E\u73B0\u4E86\u6A21\u5757 clock \u7684\u6253\u5F00\u64CD\u4F5C\uFF0C \u5728 release \u4E2D\u5B9E\u73B0\u4E86\u6A21\u5757 clock \u7684\u5173\u95ED\u64CD\u4F5C\u3002 \u5F53\u7528\u6237\u6001\u6709\u591A\u4E2A\u7528\u6237\u6253\u5F00 GE...","topics/sdk/ge/ge_normal_mode_lite.html@@@\u975E\u547D\u4EE4\u961F\u5217\u6A21\u5F0F@@@\u975E\u547D\u4EE4\u961F\u5217\u6A21\u5F0F\uFF0C\u5373 normal \u6A21\u5F0F\u3002 GE normal \u6A21\u5F0F\u7684\u63A7\u5236\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A GE HAL \u5C42\u5DF2\u7ECF\u5B9E\u73B0\u4E86 GE \u7684\u5B8C\u6574\u529F\u80FD\uFF0C\u53EF\u4EE5\u4E0D\u4F9D\u9760 MPP \u5C42\u548C DRV \u5C42\u8FDB\u884C\u8FD0\u884C\u3002 \u5728\u4E00\u822C\u60C5\u51B5\u4E0B\uFF0C\u4E0D\u4F1A\u76F4\u63A5\u64CD\u4F5C HAL \u5C42\uFF0C\u800C\u662F\u901A\u8FC7 MPP \u5C42\u95F4\u63A5\u64CD\u4F5C GE\u3002 \u5728 Normal \u6A21\u5F0F\u4E0B\uFF0C\u53EF\u7528 hal_ge_control \u63A7\u5236 GE\uFF0C\u5305\u62EC\u4EE5\u4E0B\u51E0\u79CD\u64CD\u4F5C\uFF1A IOC_GE_VERSION...","topics/sdk/ge/ge_rotate.html@@@\u4EFB\u610F\u89D2\u5EA6\u65CB\u8F6C@@@\u8FDB\u884C\u4EFB\u610F\u89D2\u5EA6\u65CB\u8F6C\u7684\u65F6\u5019\u53EF\u4EE5\u8FDB\u884C blending\uFF0C\u5E76\u4E14\u53EF\u4EE5\u6307\u5B9A\u539F\u56FE\u548C\u76EE\u6807\u56FE\u7684\u65CB\u8F6C\u4E2D\u5FC3\uFF0C\u4EFB\u610F\u89D2\u5EA6\u65CB\u8F6C\u539F\u56FE\u548C\u76EE\u6807\u56FE\u90FD\u53EA\u652F\u6301 RGB \u683C\u5F0F\u3002 \u5176\u4E2D\u65CB\u8F6C\u89D2\u5EA6\u4F20\u7ED9\u9A71\u52A8\u7684\u662F\u65CB\u8F6C\u89D2\u5EA6\u7684 sin \u548C cos \u503C\uFF0C\u4E3A 2.12 \u5B9A\u70B9\u6570\uFF0C\u5176\u4E2D\u5C0F\u6570\u90E8\u5206 12bits \uFF0C\u5219\u5E94\u7528\u7A0B\u5E8F\u8BA1\u7B97 sin \u548C cos \u503C\u7684\u65B9\u6CD5\u5982\u4E0B\uFF1A #include <stdio.h> #include <math.h> # define PI...","topics/sdk/ge/ge_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u4F4D\u5757\u642C\u79FB \u6D4B\u8BD5\u547D\u4EE4: ge_bitblt \u6E90\u7801\u76EE\u5F55: source/artinchip/aic-mpp/mpp_tes/ge_bitblt.c \u8272\u5757\u586B\u5145 \u6D4B\u8BD5\u547D\u4EE4: ge_fillrect \u6E90\u7801\u76EE\u5F55: source/artinchip/aic-mpp/mpp_tes/ge_fillrect.c \u56FE\u5F62\u65CB\u8F6C \u6D4B\u8BD5\u547D\u4EE4: ge_rotate \u6E90\u7801\u76EE\u5F55...","topics/sdk/ge/ge_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@MPP \u5BF9 GE \u9A71\u52A8\u63A5\u53E3\u8FDB\u884C\u4E86\u5C01\u88C5\uFF0CGE \u9A71\u52A8\u7684\u4F7F\u7528\u8BF7\u53C2\u8003 MPP \u4E2D\u7684 GE \u6D4B\u8BD5\u7528\u4F8B...","topics/sdk/ge/ge_user_guide.html@@@GE \u4F7F\u7528\u6307\u5357@@@Graphics Engine (GE) \u662F\u7528\u6765\u8FDB\u884C 2D \u56FE\u5F62\u52A0\u901F\u7684\u786C\u4EF6\u6A21\u5757\u3002\u4E3B\u8981\u5305\u62EC\u683C\u5F0F\u8F6C\u6362\u3001\u65CB\u8F6C\u3001\u955C\u50CF\u3001 \u7F29\u653E\u3001Alpha \u6DF7\u5408\u3001Color Key\u3001\u4F4D\u5757\u642C\u79FB\u3001Dither \u7B49\u529F\u80FD\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E GE Graphics Engine 2D \u56FE\u5F62\u52A0\u901F\u5F15\u64CE blit bit block transfer \u4F4D\u5757\u642C\u79FB MPP Media Process...","topics/sdk/ge/ge_user_guide_2.html@@@GE \u4F7F\u7528\u6307\u5357@@@Graphics Engine (GE) \u662F\u7528\u6765\u8FDB\u884C 2D \u56FE\u5F62\u52A0\u901F\u7684\u786C\u4EF6\u6A21\u5757\u3002\u4E3B\u8981\u5305\u62EC\u683C\u5F0F\u8F6C\u6362\u3001\u65CB\u8F6C\u3001\u955C\u50CF\u3001 \u7F29\u653E\u3001Alpha \u6DF7\u5408\u3001Color Key\u3001\u4F4D\u5757\u642C\u79FB\u3001Dither \u7B49\u529F\u80FD\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E GE Graphics Engine 2D \u56FE\u5F62\u52A0\u901F\u5F15\u64CE blit bit block transfer \u4F4D\u5757\u642C\u79FB MPP Media Process...","topics/sdk/gpai/gpai_config.html@@@GPAI \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u914D\u7F6E IIO \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C make menuconfig \uFF0C\u8FDB\u5165 menuconfig \u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A ArtInChip Luban SDK Configuration Linux kernel Advance setting Linux Kernel Tools <*>iio \u914D\u7F6E GPAI \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel...","topics/sdk/gpai/gpai_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u901A\u9053\u53C2\u6570\u9ED8\u8BA4\u91C7\u7528\u5468\u671F\u6A21\u5F0F\uFF0C\u91C7\u6837\u5468\u671F\u4E3A 1 ms\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF08\u914D\u7F6E\u4E2D\u53EA\u6253\u5F00\u4E86 GPAI2 \u548C GPAI7\uFF0C\u4F5C\u4E3A\u793A\u4F8B\uFF09\uFF1A Board options ---> [*] Using GPAI GPAI options ---> [ ] Using GPAI0 [ ]...","topics/sdk/gpai/gpai_data_structure.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@struct aic_gpai_data\uFF1A\u8BB0\u5F55\u5404\u4E2A\u901A\u9053\u7684\u6570\u636E\u4FE1\u606F struct aic_gpai_data { int num_bits; const struct iio_chan_spec *channels; int num_channels; u32 fifo_depth[AIC_GPAI_MAX_CH]; }; struct aic_gpai_ch\uFF1A\u8BB0\u5F55\u5404\u4E2A\u901A\u9053\u7684\u914D\u7F6E\u4FE1\u606F struct...","topics/sdk/gpai/gpai_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/gpai/gpai_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D GPAI \u9A71\u52A8\u7684 Log \u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 ulog \u63A5\u53E3\u3002 \u67E5\u770B\u901A\u9053\u7684\u914D\u7F6E\u72B6\u6001 \u5728 GPAI \u9A71\u52A8\u521D\u59CB\u5316\u6210\u529F\u540E\uFF0C\u4F1A\u5728 shell \u547D\u4EE4\u884C\u4E2D\u6CE8\u518C\u751F\u6210\u4E00\u4E2A gpai \u547D\u4EE4\uFF0C\u7528 -s \u53C2\u6570\u53EF\u4EE5\u6253\u5370\u5404\u901A\u9053\u7684\u914D\u7F6E\u53CA\u72B6\u6001\u4FE1\u606F\uFF1A \u793A\u4F8B 1\uFF1A gpai -s -c 2 In GPAI V1. 00 : Ch Mode Enable Value LTA HTA 2 S...","topics/sdk/gpai/gpai_demo.html@@@GPAI Demo@@@\u6B64 Demo \u662F gpai \u547D\u4EE4\u7684\u90E8\u5206\u4EE3\u7801\uFF08\u8BE6\u89C1 drv_gpai.c \uFF09\uFF0C\u53EF\u4EE5\u4F5C\u4E3A GPAI \u8BBE\u5907\u7684\u4F7F\u7528\u53C2\u8003\uFF1A u32 ch = 0 ; struct rt_adc_device *dev = NULL; dev = ( struct rt_adc_device *)rt_device_find( "gpai" ); if (!dev) { LOG_E( "Failed to open %s...","topics/sdk/gpai/gpai_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E\uFF1A drivers/iio/adc/artinchip_adc.c \u6A21\u5757\u67B6\u6784 IIO \u5DE5\u4E1A I/O\uFF0C\u662F Linux \u5185\u6838\u4E2D\u4E13\u7528\u4E8E\u5904\u7406\u6A21\u6570\u8F6C\u6362\u5668\uFF08ADC\uFF09\u548C\u6570\u6A21\u8F6C\u6362\u5668\uFF08DAC\uFF09\u7684\u5B50\u7CFB\u7EDF\uFF0C\u6700\u521D\u521B\u5EFA\u4E8E 2009 \u5E74\uFF0C\u63D0\u4F9B\u4E86\u7EDF\u4E00\u7684\u6846\u67B6\u6765\u8BBF\u95EE\u548C\u63A7\u5236\u5404\u79CD\u7C7B\u578B\u7684\u4F20\u611F\u5668\uFF0C\u5E76\u4E14\u4E3A\u7528\u6237\u6001\u63D0\u4F9B\u4E86\u6807\u51C6\u7684\u63A5\u53E3\u3002 \u76EE\u524D IIO...","topics/sdk/gpai/gpai_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/gpai/drv_gpai.c \uFF0CGPAI Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/gpai/hal_gpai.c \uFF0CGPAI HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_gpai.h \uFF0CGPAI HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 GPAI \u9A71\u52A8 Driver...","topics/sdk/gpai/gpai_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u91C7\u6837\u7535\u538B\u5927\u4E8E ADC \u57FA\u51C6\u53C2\u8003\u7535\u538B \u73B0\u8C61 \u5047\u8BBE\u5F53\u6211\u4EEC\u60F3\u8981\u4F7F\u7528 GPAI \u8FDB\u884C 4 V \u7535\u538B\u91C7\u6837\uFF0C\u4F46\u6B64\u65F6\uFF0C\u5BF9\u5E94\u578B\u53F7 ADC \u57FA\u51C6\u53C2\u8003\u7535\u538B\u4E3A 3 V \u89E3\u51B3\u65B9\u6CD5 \u53EF\u91C7\u7528\u7535\u963B\u5206\u538B\u8FDB\u884C\u7535\u538B\u8BA1\u7B97 ADC \u91C7\u6837\u5361\u6B7B \u73B0\u8C61 \u4F7F\u7528\u7EBF\u7A0B\u8C03\u5EA6 GPAI \u8FDB\u884C\u5468\u671F\u91C7\u6837\u65F6\uFF0CADC \u503C\u5E94\u8BE5\u662F\u6CE2\u52A8\u7684\u53D8\u5316\u7684\u503C\uFF0C\u4F46\u5374\u53D1\u73B0\u65E0\u8BBA\u7535\u538B\u600E\u4E48\u6539\u53D8\uFF0CADC \u503C\u4E00\u76F4\u4FDD\u6301\u5728\u67D0\u6570\u503C \u89E3\u51B3\u65B9\u6CD5 GPAI \u7684\u901A\u9053\u6253\u5F00\u5E94\u8BE5\u5728\u7EBF\u7A0B\u8C03\u5EA6 GPAI...","topics/sdk/gpai/gpai_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u91C7\u6837\u7535\u538B\u5927\u4E8E ADC \u57FA\u51C6\u53C2\u8003\u7535\u538B \u73B0\u8C61 \u5047\u8BBE\u5F53\u6211\u4EEC\u60F3\u8981\u4F7F\u7528 GPAI \u8FDB\u884C 4 V \u7535\u538B\u91C7\u6837\uFF0C\u4F46\u6B64\u65F6\uFF0C\u5BF9\u5E94\u578B\u53F7 ADC \u57FA\u51C6\u53C2\u8003\u7535\u538B\u4E3A 3 V \u89E3\u51B3\u65B9\u6CD5 \u53EF\u91C7\u7528\u7535\u963B\u5206\u538B\u8FDB\u884C\u7535\u538B\u8BA1\u7B97 ADC \u91C7\u6837\u5361\u6B7B \u73B0\u8C61 \u4F7F\u7528\u7EBF\u7A0B\u8C03\u5EA6 GPAI \u8FDB\u884C\u5468\u671F\u91C7\u6837\u65F6\uFF0CADC \u503C\u5E94\u8BE5\u662F\u6CE2\u52A8\u7684\u53D8\u5316\u7684\u503C\uFF0C\u4F46\u5374\u53D1\u73B0\u65E0\u8BBA\u7535\u538B\u600E\u4E48\u6539\u53D8\uFF0CADC \u503C\u4E00\u76F4\u4FDD\u6301\u5728\u67D0\u6570\u503C \u89E3\u51B3\u65B9\u6CD5 GPAI \u7684\u901A\u9053\u6253\u5F00\u5E94\u8BE5\u5728\u7EBF\u7A0B\u8C03\u5EA6 GPAI...","topics/sdk/gpai/gpai_interface.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u4EE5\u4E0B\u63A5\u53E3\u662F GPAI \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u7684\u6807\u51C6\u63A5\u53E3\u3002 struct rt_adc_ops { rt_err_t (*enabled)( struct rt_adc_device *device, rt_uint32_t channel, rt_bool_t enabled); rt_err_t (*convert)( struct rt_adc_device *device...","topics/sdk/gpai/gpai_key_procedure.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B GPAI \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u901A\u8FC7 INIT_DEVICE_EXPORT(drv_gpai_init) \u5B8C\u6210\uFF0C\u4F1A\u901A\u8FC7\u8C03\u7528 ADC \u5B50\u7CFB\u7EDF\u7684\u63A5\u53E3 rt_hw_adc_register() \u6CE8\u518C\u4E00\u4E2A ADC \u8BBE\u5907\u3002 GPAI \u63A7\u5236\u5668\u7684\u521D\u59CB\u5316\u8FC7\u7A0B\uFF0C\u4E3B\u8981\u6B65\u9AA4\u6709\uFF1A \u521D\u59CB\u5316\u6A21\u5757\u7684 clk \u6CE8\u518C\u4E2D\u65AD \u521D\u59CB\u5316\u9ED8\u8BA4\u53C2\u6570 \u5411\u8BBE\u5907\u6846\u67B6\u4E2D\u6CE8\u518C ADC \u8BBE\u5907 \u4E2D\u65AD\u5904\u7406\u6D41\u7A0B GPAI...","topics/sdk/gpai/gpai_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883\uFF1A \u786C\u4EF6\uFF1A\u5F00\u53D1\u677F\uFF0C\u6216 D211 \u7684 FPGA \u677F \u8F6F\u4EF6\uFF1APC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 ADC \u8BFB\u53D6\u6D4B\u8BD5 ADC \u6570\u636E\u7684\u8BFB\u53D6\uFF0C\u53EA\u9700\u8981\u666E\u901A\u7684 cat \u547D\u4EE4\u5373\u53EF\uFF0C\u6BCF\u6B21\u53EF\u8BFB\u53D6\u67D0\u4E00\u4E2A\u901A\u9053\u4E2D\u7684\u5F53\u524D\u6570\u636E\u3002\u8BE6\u89C1 Syfs \u8282\u70B9\u8C03\u8BD5 \u3002...","topics/sdk/gpai/gpai_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 test_gpai \u6D4B\u8BD5\u7A0B\u5E8F \u8F6F\u4EF6\u914D\u7F6E test_gpai \u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options ---> Drivers examples ---> [*] Enable...","topics/sdk/gpai/gpai_user_guide.html@@@GPAI \u4F7F\u7528\u6307\u5357@@@GPAI \u4E3B\u8981\u529F\u80FD\u662F\u5C06\u5916\u90E8\u7684\u6A21\u62DF\u4FE1\u53F7\u8F6C\u6210\u6570\u5B57\u4FE1\u53F7\uFF0C\u7136\u540E\u4E0A\u62A5\u7ED9 CPU\u3002GPAI \u9700\u8981\u4F9D\u8D56 ADCIM \u6A21\u5757\uFF08\u7EDF\u4E00\u7BA1\u7406\u786C\u4EF6\u901A\u8DEF\u548C\u5904\u7406\u4FE1\u53F7\u6821\u51C6\u7B49\uFF09\uFF0C\u5176\u5173\u7CFB\u5982\u56FE\uFF1A \u56FE 1 . GPAI \u76F8\u5173\u6A21\u5757\u7684\u786C\u4EF6\u6846\u56FE \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E ADC Analog Digital Converter \u6A21\u62DF\u6570\u5B57\u8F6C\u6362\u5668 ADCIM ADC Interface Management \u6A21\u6570\u8F6C\u6362\u7BA1\u7406\u6A21\u5757...","topics/sdk/gpai/gpai_user_guide_2.html@@@GPAI \u4F7F\u7528\u6307\u5357@@@GPAI \u4E3B\u8981\u529F\u80FD\u662F\u5C06\u5916\u90E8\u7684\u6A21\u62DF\u4FE1\u53F7\u8F6C\u6210\u6570\u5B57\u4FE1\u53F7\uFF0C\u7136\u540E\u4E0A\u62A5\u7ED9 CPU\u3002GPAI \u9700\u8981\u4F9D\u8D56 ADCIM \u6A21\u5757\uFF08\u7EDF\u4E00\u7BA1\u7406\u786C\u4EF6\u901A\u8DEF\u548C\u5904\u7406\u4FE1\u53F7\u6821\u51C6\u7B49\uFF09\uFF0C\u5176\u5173\u7CFB\u5982\u56FE\uFF1A \u56FE 1 . GPAI \u76F8\u5173\u6A21\u5757\u7684\u786C\u4EF6\u6846\u56FE \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E ADC Analog Digital Converter \u6A21\u62DF\u6570\u5B57\u8F6C\u6362\u5668 ADCIM ADC Interface Management \u6A21\u6570\u8F6C\u6362\u7BA1\u7406\u6A21\u5757...","topics/sdk/gpio/gpio_config.html@@@\u53C2\u6570\u914D\u7F6E@@@\u56E0\u4E3A GPIO \u662F\u6BCF\u4E2A\u7CFB\u7EDF\u7684\u5FC5\u9700\u6A21\u5757\uFF0CGPIO \u9A71\u52A8\u9ED8\u8BA4\u4F1A\u88AB\u7F16\u8BD1\u8FDB\u7CFB\u7EDF\uFF0C\u6240\u4EE5\u4E0D\u9700\u8981\u5728 scons --menuconfig \u83DC\u5355\u4E2D\u8FDB\u884C\u4F7F\u80FD\u3002 GPIO IRQ \u9A71\u52A8\u914D\u7F6E GPIO \u4E2D\u65AD\u6CE8\u518C\u7684\u529F\u80FD\u53EF\u4EE5\u5355\u72EC\u4F7F\u80FD \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options ---> [*]...","topics/sdk/gpio/gpio_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@pin \u8C03\u8BD5\u547D\u4EE4 Luban-Lite \u628A\u901A\u7528 GPIO \u529F\u80FD\u6CE8\u518C\u6210\u4E86\u6807\u51C6\u7684 RT-Thread pin driver\uFF0C\u901A\u8FC7 msh \u547D\u4EE4\u884C\u4E0B\u7684 pin \u547D\u4EE4\u53EF\u4EE5\u8C03\u8BD5\u4EE5\u4E0B\u4FE1\u606F\uFF1A pin \u793A\u4F8B\u5982\u4E0B\uFF1A pin [option] num: get pin number from hardware pin num can be PE02, PE2, PE. 02 , PE. 2 , pe02, pe2...","topics/sdk/gpio/gpio_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E GPIO HAL \u5C42\u76F8\u5173 .c \u548C .h \u6587\u4EF6\u5206\u522B\u4F4D\u4E8E luban-lite\\bsp\\artinchip\\hal\\gpio \u548C luban-lite\\bsp\\artinchip\\include\\hal \u76EE\u5F55\u3002 Driver \u5C42\u76F8\u5173 .c \u548C .h \u6587\u4EF6\u5206\u522B\u4F4D\u4E8E luban-lite\\bsp\\artinchip\\drv\\gpio \u548C...","topics/sdk/gpio/gpio_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/gpio/gpio_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 test_gpio \u6D4B\u8BD5\u7A0B\u5E8F\uFF0C\u7528\u4E8E\u8F93\u5165\u8F93\u51FA\u6A21\u5F0F\u6D4B\u8BD5 test_twinkle \u6D4B\u8BD5\u7A0B\u5E8F\uFF0C\u7528\u4E8E\u70B9\u706F\u6D4B\u8BD5 \u8F6F\u4EF6\u914D\u7F6E test_gpio \u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9 Drivers options...","topics/sdk/gpio/gpio_user_guide.html@@@GPIO \u4F7F\u7528\u6307\u5357@@@GPIO \u6A21\u5757\u63D0\u4F9B\u4E24\u90E8\u5206\u529F\u80FD\uFF1A PinMux \u529F\u80FD\u3002\u914D\u7F6E pin \u811A\u7684\u5DE5\u4F5C\u6A21\u5F0F\u3002 \u901A\u7528 GPIO \u529F\u80FD\u3002\u5F53 pin \u811A\u88AB\u914D\u7F6E\u4E3A\u901A\u7528 GPIO \u6A21\u5F0F\u65F6\uFF0C\u8FDB\u4E00\u6B65\u914D\u7F6E GPIO \u8F93\u5165\u8F93\u51FA\u6A21\u5F0F\u3001\u4E0A\u4E0B\u62C9\u6A21\u5F0F\u3001\u8F93\u51FA\u914D\u7F6E\u3001\u8F93\u5165\u8BFB\u53D6\u3001\u4E2D\u65AD\u7684\u6CE8\u518C\u548C\u4F7F\u80FD\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E GPIO General Purpose Input Output \u901A\u7528\u8F93\u5165\u8F93\u51FA PINCTRL Pin...","topics/sdk/gptimer/gptimer-user-guide.html@@@GPTimer \u4F7F\u7528\u6307\u5357@@@GPTimer \u901A\u8FC7\u8BA1\u6570\u5668\u6765\u5B9E\u73B0\u5B9A\u65F6\u529F\u80FD\u3002\u53EF\u901A\u8FC7\u81EA\u52A8\u89E6\u53D1\u6216\u8005\u8F93\u5165\u4FE1\u53F7\u6765\u542F\u52A8\u5B9A\u65F6\u5668\uFF0C\u5176\u4E2D\u5B9A\u65F6\u5668\u53EF\u4EE5\u914D\u7F6E\u4E3A\u5355\u6B21\u6A21\u5F0F\u6216\u5FAA\u73AF\u6A21\u5F0F\uFF0C\u540C\u65F6\u8FD8\u652F\u6301\u5F15\u811A\u8F93\u51FA\u529F\u80FD\u3002 GPTimer \u88AB\u7528\u4F5C Linux Clock Event \u5B50\u7CFB\u7EDF\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED/\u7F29\u7565\u8BED \u5B9A\u4E49\u53CA\u8BF4\u660E GPT/GPTimer General Purpose Timer\uFF0C\u901A\u7528\u5B9A\u65F6\u5668 \u56FE 1 . GPTimer \u6A21\u5757\u7684\u786C\u4EF6\u6846\u56FE...","topics/sdk/gptimer/gptimer_config_guide.html@@@GPTimer \u914D\u7F6E@@@\u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u9009\u62E9\u9700\u8981\u6253\u5F00\u7684 GPTimer\u3002 \u4EE5\u4E0B\u8F93\u51FA\u793A\u4F8B\u4E2D\uFF0C\u914D\u7F6E\u53EA\u6253\u5F00\u4E86 GPTimer0\uFF1A Board options ---> [*] Using GPTIMER0 [ ] Using GPTIMER1 [ ] Using GPTIMER2 [ ] Using GPTIMER3 [...","topics/sdk/gptimer/gptimer_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/gptimer/gptimer_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@GPTimer \u7684\u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/gpt/drv_gpt.c \uFF0CGPTimer Driver \u5C42\u5B9E\u73B0 bsp/artinchip/include/drv/drv_gptimer.h \uFF0CGPTimer Driver \u5C42\u63A5\u53E3 bsp/artinchip/hal/gpt/hal_gpt.c \uFF0CGTPimer \u6A21\u5757\u7684 HAL \u5C42\u5B9E\u73B0...","topics/sdk/gptimer/gptimer_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/gptimer/gptimer_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 FPGA \u9A8C\u8BC1\u7248 USB \u8F6C\u4E32\u53E3\u7684\u7EBF\u7F06 \u4FE1\u53F7\u6E90\uFF08\u7528\u4E8E\u6D4B\u8BD5\u89E6\u53D1\u6A21\u5F0F\uFF09 \u793A\u6CE2\u5668\uFF08\u7528\u4E8E\u89C2\u5BDF\u5F15\u811A\u8F93\u51FA\uFF09 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C \u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Luban-Lite \u81EA\u5E26\u7684 test_gptimer \u547D\u4EE4\u884C\u5DE5\u5177 \u8F6F\u4EF6\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00...","topics/sdk/hrtimer/hrtimer-config.html@@@HRTimer \u914D\u7F6E@@@\u6253\u5F00 HRTimer \u9A71\u52A8 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u9009\u62E9\u6240\u9700\u7684 HRTimer\u3002 \u4EE5\u4E0B\u8F93\u51FA\u793A\u4F8B\u4E2D\uFF0C\u914D\u7F6E\u53EA\u6253\u5F00\u4E86 HRTimer0\uFF1A Board options ---> Using HRTIMER ---> [*] Using HRTimer0 [ ] Using HRTimer1 [ ]...","topics/sdk/hrtimer/hrtimer-debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D\uFF0CHRTimer \u9A71\u52A8\u7684\u65E5\u5FD7\u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 aic_log.h \u63A5\u53E3\u3002 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u914D\u7F6E HRTimer \u548C RT-Thread \u7684 hwtimer \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u3002 \u914D\u7F6E\u5B8C\u6210\u540E\uFF0CHRTimer \u9A71\u52A8\u4F1A\u4F7F\u7528\u5168\u5C40\u7684 aic_log.h \u63A5\u53E3\u6765\u63A7\u5236\u65E5\u5FD7\u8F93\u51FA\u3002...","topics/sdk/hrtimer/hrtimer-design_intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@HRTimer \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/hrtimer/drv_hrtimer.c \uFF0CHRTimer Driver \u5C42\u5B9E\u73B0 bsp/artinchip/include/drv/drv_hrtimer.h \uFF0CHRTimer Driver \u5C42\u63A5\u53E3 bsp/artinchip/hal/pwmcs/hal_cap.c \uFF0CPWMCS CAP \u6A21\u5757\u7684...","topics/sdk/hrtimer/hrtimer-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/hrtimer/hrtimer-test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F USB \u8F6C\u4E32\u53E3\u7684\u7EBF\u7F06 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Luban-Lite \u81EA\u5E26\u7684 test_hrtimer \u547D\u4EE4\u884C\u5DE5\u5177 \u8F6F\u4EF6\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00 test_hrtimer \u547D\u4EE4\u884C\u5DE5\u5177\uFF1A Drivers options...","topics/sdk/hrtimer/hrtimer-user-guide.html@@@HRTimer \u4F7F\u7528\u6307\u5357@@@High-Resolution Timer\uFF08HRTimer\uFF0C\u9AD8\u7CBE\u5EA6\u5B9A\u65F6\u5668\uFF09\u662F\u4E00\u79CD\u7528\u4E8E\u7CBE\u786E\u8BA1\u65F6\u7684\u673A\u5236\uFF0C\u63D0\u4F9B\u4E86\u6BD4\u4F20\u7EDF\u5B9A\u65F6\u5668\u66F4\u9AD8\u7684\u7CBE\u5EA6\u548C\u7075\u6D3B\u6027\uFF0C\u9002\u7528\u4E8E\u9700\u8981\u9AD8\u7CBE\u5EA6\u65F6\u95F4\u6D4B\u91CF\u548C\u63A7\u5236\u7684\u573A\u666F\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED/\u7F29\u7565\u8BED \u5B9A\u4E49\u53CA\u8BF4\u660E CAP Capture\uFF0C\u4FE1\u53F7\u6355\u6349\uFF0C\u5C5E\u4E8E PWMCS \u4E2D\u7684\u4E00\u4E2A\u5B50\u6A21\u5757 HRTimer High Resolution Timer\uFF0C\u9AD8\u7CBE\u5EA6\u65F6\u949F PWM Pulse-Width...","topics/sdk/i2c/i2c_config.html@@@I2C \u914D\u7F6E@@@I2C \u5305\u62EC\u4EE5\u4E0B\u914D\u7F6E\u5185\u5BB9\uFF1A \u5185\u6838\u914D\u7F6E master \u9A71\u52A8\u4F7F\u80FD Device Drivers I2C support---> <*> I2C support <*> I2C device interface I2C Hardware Bus support---> <*> ArtInChip I2C support slave \u9A71\u52A8\u4F7F\u80FD Device Drivers I2C support--->...","topics/sdk/i2c/i2c_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u4EE5 D211DC-DEMO-V1.0 \u5F00\u53D1\u677F\u4E3A\u4F8B\uFF0CI2C \u63A5\u53E3 3 \u7528\u4E8E\u4E0E\u89E6\u6478\u5C4F\u8BBE\u5907\u901A\u4FE1\uFF0C\u539F\u7406\u56FE\u5982\u4E0B\uFF1A \u53E6\u5916\u6839\u636E\u82AF\u7247\u624B\u518C > 4 \u5F15\u811A\u590D\u7528 \u7AE0\u8282\u53EF\u77E5\uFF1A \u901A\u4FE1\u63A5\u53E3\u4E3A I2C3\uFF0CMaster \u6A21\u5F0F PA8 \u4E3A RST PA9 \u4E3A INT PA10 \u4E3A I2C3_SCL PA11 \u4E3A I2C3_SDA \u9700\u914D\u7F6E\uFF1A \u9A71\u52A8\u914D\u7F6E pinmux \u914D\u7F6E \u9A71\u52A8\u914D\u7F6E master \u9A71\u52A8\u4F7F\u80FD Board options...","topics/sdk/i2c/i2c_data_struct.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@drv \u5C42\u7BA1\u7406 I2C \u63A7\u5236\u5668\u8D44\u6E90\u7684\u9876\u5C42\u7ED3\u6784\u4F53 struct aic_i2c_bus { struct rt_i2c_bus_device bus; //RTT \u5185\u6838 I2C \u63A7\u5236\u5668\u6570\u636E\u7ED3\u6784 aic_i2c_ctrl aic_bus; //I2C \u63A7\u5236\u5668\u8D44\u6E90\u7684\u5E95\u5C42\u7ED3\u6784\u4F53 struct rt_completion cmd_complete; //\u5B8C\u6210\u91CF\uFF0C\u7528\u4E8E\u6307\u793A\u4E00\u4E2A message \u662F\u5426\u4F20\u8F93\u5B8C\u6210...","topics/sdk/i2c/i2c_data_struct_2.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@drv \u5C42\u7BA1\u7406 I2C \u63A7\u5236\u5668\u8D44\u6E90\u7684\u9876\u5C42\u7ED3\u6784\u4F53 struct aic_i2c_bus { struct rt_i2c_bus_device bus; //RTT \u5185\u6838 I2C \u63A7\u5236\u5668\u6570\u636E\u7ED3\u6784 aic_i2c_ctrl aic_bus; //I2C \u63A7\u5236\u5668\u8D44\u6E90\u7684\u5E95\u5C42\u7ED3\u6784\u4F53 struct rt_completion cmd_complete; //\u5B8C\u6210\u91CF\uFF0C\u7528\u4E8E\u6307\u793A\u4E00\u4E2A message \u662F\u5426\u4F20\u8F93\u5B8C\u6210...","topics/sdk/i2c/i2c_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@I2C \u901A\u4FE1\u8C03\u8BD5 \u5728\u4F7F\u80FD C \u7684\u9A71\u52A8\u540E\uFF0C\u53EF\u4EE5\u901A\u8FC7 tools \u4E2D\u7684 i2cdetect \u5DE5\u5177\uFF0C\u5FEB\u901F\u68C0\u6D4B C \u901A\u4FE1\u529F\u80FD\u662F\u5426\u6B63\u5E38\u3002\u4F7F\u80FD\u9A71\u52A8\u540E\uFF0C\u4F1A\u521B\u5EFA\u51FA\u76F8\u5E94\u7684 C \u9002\u914D\u5668\uFF0C\u4F46\u662F C \u901A\u4FE1\u529F\u80FD\u662F\u5426\u6B63\u5E38\u4ECD\u662F\u4E0D\u786E\u5B9A\u7684\uFF0C\u53EF\u901A\u8FC7\u5982\u4E0B\u547D\u4EE4\u8FDB\u884C\u6D4B\u8BD5\uFF1A i2cdetect -y -r 0 \u6B64\u547D\u4EE4\u7528\u6765\u6D4B\u8BD5 C \u603B\u7EBF 0 \u4E0A\u7684\u5730\u5740\u5206\u5E03\u60C5\u51B5\u3002\u5982\u679C\u901A\u4FE1\u6B63\u5E38\uFF0C\u5373\u4F7F\u603B\u7EBF\u4E0A\u6CA1\u6709\u6302\u63A5\u4EFB\u4F55 C...","topics/sdk/i2c/i2c_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 I2C \u7684\u9A71\u52A8\u4FE1\u606F\u7531\u4E24\u90E8\u5206\u7EC4\u6210\uFF0C\u9ED8\u8BA4\u60C5\u51B5\u4E0B\u662F\u4E0D\u4F1A\u6253\u5370\u7684\uFF0C\u5F53\u9700\u8981\u8FDB\u884C\u8DDF\u8E2A\u8C03\u8BD5\u65F6\uFF0C\u53EF\u901A\u8FC7\u4EE5\u4E0B\u6B65\u9AA4\u6253\u5F00\u8FD9\u4E9B\u8C03\u8BD5\u4FE1\u606F\u3002 RT-Thread I2C \u603B\u7EBF\u8C03\u8BD5\u5F00\u5173 Rt-Thread options ---> RT-Thread Components ---> Device Drivers ---> -*- Using I2C device drivers [*] Use I2C debug...","topics/sdk/i2c/i2c_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E\uFF1A linux-5.10/drivers/i2c/busses/ I2C \u7684\u9A71\u52A8\u6587\u4EF6\u5982\u4E0B\uFF1A \u6587\u4EF6 \u8BF4\u660E i2c-artinchip.h aic I2C \u516C\u7528\u5934\u6587\u4EF6\uFF0CI2C \u6A21\u5757\u7684\u5BC4\u5B58\u5668\u5B9A\u4E49\uFF0C\u7ED3\u6784\u4F53\u5B9A\u4E49\u7B49 i2c-artinchip-master.c I2C \u4F5C\u4E3A master \u65F6\u7684\u9A71\u52A8\u6587\u4EF6 i2c-artinchip-slave.c I2C \u4F5C\u4E3A slave \u65F6\u7684\u9A71\u52A8\u6587\u4EF6...","topics/sdk/i2c/i2c_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/i2c/drv_i2c.c \uFF0CI2C Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/i2c/hal_i2c.c \uFF0CI2C HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_i2c.h \uFF0CI2C HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 I2C \u9A71\u52A8 Driver \u5C42\u91C7\u7528...","topics/sdk/i2c/i2c_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/i2c/i2c_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/i2c/i2c_interface.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . i2c_handle_tx_abort \u51FD\u6570\u539F\u578B int i2c_handle_tx_abort(struct aic_i2c_dev *i2c_dev) \u529F\u80FD\u8BF4\u660E \u6253\u5370 c \u53D1\u751F abort \u7684\u539F\u56E0\uFF0C\u5E76\u8FD4\u56DE\u76F8\u5E94\u7684 error \u503C \u53C2\u6570\u5B9A\u4E49 i2c_dev\uFF1A\u6307\u5411\u81EA\u5B9A\u4E49\u7684 dev \u7ED3\u6784\u4F53 \u8FD4\u56DE\u503C \u6839\u636E\u4E0D\u540C\u7684 abort \u539F\u56E0\uFF0C\u8FD4\u56DE\u4E0D\u540C\u7684 error \u503C \u6CE8\u610F\u4E8B\u9879 - \u8868 2...","topics/sdk/i2c/i2c_interface_lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u8868 1 . aic_hw_i2c_register \u51FD\u6570\u539F\u578B static int aic_hw_i2c_register() \u529F\u80FD\u8BF4\u660E \u6CE8\u518C\u548C\u521D\u59CB\u5316 I2C \u8BBE\u5907 \u53C2\u6570\u5B9A\u4E49 NULL \u8FD4\u56DE\u503C 0\uFF1A\u6CE8\u518C\u6210\u529F <0\uFF1A\u6CE8\u518C\u5931\u8D25 \u6CE8\u610F\u4E8B\u9879 - \u8868 2 . aic_i2c_bus_control \u51FD\u6570\u539F\u578B static rt_err_t...","topics/sdk/i2c/i2c_key_procedure.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B I2C \u6A21\u5757\u9A71\u52A8\u7684\u521D\u59CB\u5316\u6D41\u7A0B\u5982\u4E0B\uFF1A \u4F20\u8F93\u6D41\u7A0B \u5728 master \u9A71\u52A8\u4E2D\uFF0C\u6570\u636E\u7684\u4F20\u8F93\u7531 xfer \u53D1\u8D77\uFF0C\u53EF\u4EE5\u5B8C\u6210\u591A\u4E2A msg \u7684\u4F20\u8F93\u3002\u4F20\u8F93\u6D41\u7A0B\u5982\u4E0B\uFF1A I2C \u6A21\u5757\u603B\u7EBF\u4FE1\u53F7 \u5728 I2C \u603B\u7EBF\u7684\u6570\u636E\u4F20\u8F93\u8FC7\u7A0B\uFF0C\u7531 start/restart/stop \u4F5C\u4E3A\u603B\u7EBF\u7684\u63A7\u5236\u4FE1\u53F7\u3002\u4E86\u89E3 I2C \u6A21\u5757\u4E2D start/restart/stop \u4FE1\u53F7\u7684\u751F\u6210\u65B9\u5F0F\uFF0C\u6709\u52A9\u4E8E\u4E86\u89E3\u9A71\u52A8\u7684\u6E90\u7801\u5B9E\u73B0\u3002 master...","topics/sdk/i2c/i2c_key_procedure_2.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B I2C \u6A21\u5757\u9A71\u52A8\u7684\u521D\u59CB\u5316\u6D41\u7A0B\u5982\u4E0B\uFF1A \u4F20\u8F93\u6D41\u7A0B \u5728 master \u9A71\u52A8\u4E2D\uFF0C\u6570\u636E\u7684\u4F20\u8F93\u7531 xfer \u53D1\u8D77\uFF0C\u53EF\u4EE5\u5B8C\u6210\u591A\u4E2A msg \u7684\u4F20\u8F93\u3002\u4F20\u8F93\u6D41\u7A0B\u5982\u4E0B\uFF1A I2C \u6A21\u5757\u603B\u7EBF\u4FE1\u53F7 \u5728 I2C \u603B\u7EBF\u7684\u6570\u636E\u4F20\u8F93\u8FC7\u7A0B\uFF0C\u7531 start/restart/stop \u4F5C\u4E3A\u603B\u7EBF\u7684\u63A7\u5236\u4FE1\u53F7\u3002\u4E86\u89E3 I2C \u6A21\u5757\u4E2D start/restart/stop \u4FE1\u53F7\u7684\u751F\u6210\u65B9\u5F0F\uFF0C\u6709\u52A9\u4E8E\u4E86\u89E3\u9A71\u52A8\u7684\u6E90\u7801\u5B9E\u73B0\u3002 master...","topics/sdk/i2c/i2c_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u6D4B\u8BD5\u677F\uFF1A\u5E26\u6709\u4E24\u4E2A C \u63A5\u53E3\u7684\u6D4B\u8BD5\u677F PC\uFF1A\u7528\u4E8E\u548C\u6D4B\u8BD5\u677F\u4EA4\u4E92 \u4E32\u53E3\u7EBF\uFF1A\u8FDE\u63A5\u6D4B\u8BD5\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6 i2c-tools \u7B2C\u4E09\u65B9\u8F6F\u4EF6\u5305 \u6D4B\u8BD5\u914D\u7F6E \u5C06\u6D4B\u8BD5\u677F\u7684\u4E24\u4E2A C\uFF0C\u4E00\u4E2A\u914D\u7F6E\u4E3A master\uFF0C\u4E00\u4E2A\u914D\u7F6E\u4E3A slave\u3002\u4E24\u4E2A C \u63A5\u53E3\u5BF9\u63A5\u3002 \u7F16\u8BD1\u7B2C\u4E09\u65B9\u6D4B\u8BD5\u5DE5\u5177 tools\uFF0C\u5229\u7528 tools \u63D0\u4F9B\u7684\u5DE5\u5177\u8FDB\u884C\u6D4B\u8BD5\u3002 i2c-tools \u6D4B\u8BD5\uFF1A i2cdetect...","topics/sdk/i2c/i2c_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u6D4B\u8BD5\u677F\uFF1A\u5E26\u6709 eeprom \u6216\u8005\u5176\u4ED6 I2C \u4ECE\u8BBE\u5907\u6A21\u5757\u7684\u6D4B\u8BD5\u677F PC\uFF1A\u7528\u4E8E\u548C\u6D4B\u8BD5\u677F\u4EA4\u4E92 \u4E32\u53E3\u7EBF\uFF1A\u8FDE\u63A5\u6D4B\u8BD5\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6 i2c-tools\u3001i2c \u6D4B\u8BD5\u4EE3\u7801 \u4F7F\u80FD\u6D4B\u8BD5\u4EE3\u7801 Drivers options ---> Drivers examples ---> [*] Enable i2c driver test comnand \u6CE8\uFF1A \u88F8\u673A\u73AF\u5883\u548C\u5C06 I2C...","topics/sdk/i2c/i2c_user_guide.html@@@I2C \u4F7F\u7528\u6307\u5357@@@I2C \u6A21\u5757\u662F\u4E00\u79CD\u7528\u4E8E\u8FDE\u63A5 CPU \u4E3B\u673A\u4E0E I 2 C \u603B\u7EBF\u4E4B\u95F4\u7684\u63A5\u53E3\uFF0C\u5305\u62EC\u4E00\u6839\u4E32\u884C\u6570\u636E\u7EBF (SDA) \u548C\u4E00\u6839\u4E32\u884C\u65F6\u949F\u7EBF (SCL)\uFF0C\u5206\u522B\u7528\u4E8E\u4F20\u8F93\u6570\u636E\u548C\u65F6\u949F\u4FE1\u53F7\uFF0C\u662F\u5B9E\u73B0 I2C \u901A\u4FE1\u7684\u57FA\u7840\u3002\u5728 I 2 C \u603B\u7EBF\u4E0A\uFF0C\u6BCF\u4E2A\u8BBE\u5907\u90FD\u6709\u4E00\u4E2A\u552F\u4E00\u7684\u5730\u5740\u3002\u5F53\u4E3B\u8BBE\u5907 (master) \u5E0C\u671B\u4E0E\u4ECE\u8BBE\u5907 (slave) \u901A\u4FE1\u65F6\uFF0C\u4F1A\u901A\u8FC7\u53D1\u9001\u4ECE\u8BBE\u5907 (slave)...","topics/sdk/i2c/i2c_user_guide_2.html@@@I2C \u4F7F\u7528\u6307\u5357@@@I2C \u6A21\u5757\u662F\u4E00\u79CD\u7528\u4E8E\u8FDE\u63A5 CPU \u4E3B\u673A\u4E0E I 2 C \u603B\u7EBF\u4E4B\u95F4\u7684\u63A5\u53E3\uFF0C\u5305\u62EC\u4E00\u6839\u4E32\u884C\u6570\u636E\u7EBF (SDA) \u548C\u4E00\u6839\u4E32\u884C\u65F6\u949F\u7EBF (SCL)\uFF0C\u5206\u522B\u7528\u4E8E\u4F20\u8F93\u6570\u636E\u548C\u65F6\u949F\u4FE1\u53F7\uFF0C\u662F\u5B9E\u73B0 I2C \u901A\u4FE1\u7684\u57FA\u7840\u3002\u5728 I 2 C \u603B\u7EBF\u4E0A\uFF0C\u6BCF\u4E2A\u8BBE\u5907\u90FD\u6709\u4E00\u4E2A\u552F\u4E00\u7684\u5730\u5740\u3002\u5F53\u4E3B\u8BBE\u5907 (master) \u5E0C\u671B\u4E0E\u4ECE\u8BBE\u5907 (slave) \u901A\u4FE1\u65F6\uFF0C\u4F1A\u901A\u8FC7\u53D1\u9001\u4ECE\u8BBE\u5907 (slave)...","topics/sdk/i2s/i2s_arch.html@@@I2S \u67B6\u6784\u8BBE\u8BA1@@@\u5185\u6838\u4E2D\u97F3\u9891\u91C7\u7528 ALSA \u9A71\u52A8\u6846\u67B6\uFF0C\u8BE5\u6846\u67B6\u7BA1\u7406\u6240\u6709\u4E0E\u97F3\u9891\u76F8\u5173\u7684\u8F6F\u4EF6\u4E0E\u786C\u4EF6\uFF0CI2S \u7684\u9A71\u52A8\u8BBE\u8BA1\u9700\u8981\u9075\u5FAA\u8BE5\u6846\u67B6\u7684\u57FA\u672C\u8981\u6C42\u3002ALSA \u97F3\u9891\u6846\u67B6\u5C06\u5E95\u5C42\u7684\u786C\u4EF6\u9A71\u52A8\u5206\u4E3A\u4E09\u4E2A\u90E8\u5206\uFF1Amachine\u3001pltform \u4E0E codec\u3002\u4E09\u8005\u7684\u5173\u7CFB\u5982\u4E0B\u56FE\u6240\u793A\uFF1A ALSA \u6846\u67B6\u5C06\u5E95\u5C42\u5212\u5206\u4E3A\u4E09\u90E8\u5206\u540E\uFF0C\u4F7F\u5F97 platform \u548C codec \u7684\u9A71\u52A8\u5B9E\u73B0\u53D8\u5F97\u66F4\u52A0\u7B80\u5355\uFF0C\u4E8C\u8005\u53EA\u4E13\u6CE8\u4E8E\u5B9E\u73B0\u81EA\u5DF1\u7684\u529F\u80FD\u4EE3\u7801\uFF0C\u7531 machine \u9A71\u52A8\u6765\u5B9E\u73B0...","topics/sdk/i2s/i2s_arch_lite.html@@@I2S \u67B6\u6784\u8BBE\u8BA1@@@RT-Thread \u97F3\u9891\u6846\u67B6 RT-Thread \u5B9A\u4E49\u4E86\u4E00\u5957\u97F3\u9891\u6846\u67B6\uFF0Cdriver \u5C42\u7684\u9A71\u52A8\u5C31\u662F\u4E3A\u4E86\u5BF9\u63A5\u8BE5\u97F3\u9891\u6846\u67B6\u3002\u8BE5\u6846\u67B6\u5728\u5F55\u97F3\u7AEF\u548C\u64AD\u653E\u7AEF\u91C7\u7528\u4E86\u4E24\u79CD\u4E0D\u540C\u7684\u673A\u5236\uFF0C\u73B0\u5BF9\u5F55\u97F3\u7AEF\u548C\u64AD\u653E\u7AEF\u7684\u6846\u67B6\u8FDB\u884C\u7B80\u5355\u8BF4\u660E\u3002 \u56FE 1 . \u64AD\u653E\u7AEF\u6846\u67B6 \u5982\u4E0A\u56FE\u6240\u793A\uFF0C\u5E94\u7528\u5C42\u8BFB\u53D6\u7684\u97F3\u9891\u6570\u636E\u5199\u5165\u5230\u5185\u5B58\u6C60\u7684 block \u4E2D\uFF0C\u5E76\u7528\u6570\u636E\u961F\u5217\u5BF9\u5185\u5B58\u6C60\u7684 block \u6570\u636E\u8FDB\u884C\u7BA1\u7406\u3002\u4ECE\u6570\u636E\u961F\u5217\u4E2D\u4F9D\u6B21\u53D6\u51FA\u97F3\u9891\u6570\u636E\uFF0C\u5199\u5165\u5230 TX buffer...","topics/sdk/i2s/i2s_config_guide.html@@@I2S \u914D\u7F6E@@@I2S \u5305\u62EC\u4EE5\u4E0B\u914D\u7F6E\u5185\u5BB9\uFF1A \u5185\u6838\u914D\u7F6E \u6309\u7167 ALSA \u7684\u6846\u67B6\u8BBE\u8BA1\uFF0CI2S \u7684\u6570\u636E\u4F20\u8F93\u4F7F\u7528 DMA \u65B9\u5F0F\uFF0C\u9700\u8981 engine \u7684\u652F\u6301\uFF0C\u6240\u4EE5\u5728 menuconfig \u4E2D \u9700\u8981\u6253\u5F00 engine \u7684\u9A71\u52A8\u652F\u6301\u3002 Device Drivers---> [*] DMA Engine support---> <*> ArtInChip SoCs DMA support \u5728 menuconfig \u4E2D\u6253\u5F00 ALSA...","topics/sdk/i2s/i2s_config_guide_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u6253\u5F00 I2S \u7684\u9A71\u52A8\u652F\u6301\u3002 \u6309\u7167\u6846\u67B6\u8BBE\u8BA1\uFF0CSOC \u548C\u97F3\u9891 Codec \u662F\u901A\u8FC7 I2S \u63A5\u53E3\u5B9E\u73B0\u97F3\u9891\u7684\u64AD\u653E\u548C\u5F55\u97F3\uFF0C\u9700\u8981 I2S \u7684\u652F\u6301\uFF0C\u6240\u4EE5\u5728 menuconfig \u4E2D\u6253\u5F00 I2S \u7684\u9A71\u52A8\u652F\u6301\uFF0C\u5982\u4E0B\u6240\u793A\uFF1A Board options ---> [*] Using I2S0 \u9009\u62E9\u4F7F\u7528\u97F3\u9891 codec\u3002 \u5982\u679C\u4F7F\u7528 I2S \u8FDB\u884C\u97F3\u9891\u7684\u64AD\u653E\u548C\u5F55\u97F3\uFF0C\u5219\u9700\u8981\u9009\u62E9 codec \u82AF\u7247\uFF0C\u5982\u4E0B\u6240\u793A\uFF1A Drivers...","topics/sdk/i2s/i2s_data_struct.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@aic_i2s struct aic_i2s { struct clk *clk; struct reset_control *rst; struct regmap *regmap; struct snd_dmaengine_dai_dma_data playback_dma_data; struct snd_dmaengine_dai_dma_data capture_dma_data...","topics/sdk/i2s/i2s_data_struct_lite.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@HAL \u5C42\u6570\u636E\u7ED3\u6784 hal_i2s.h \u7684\u6570\u636E\u7ED3\u6784 struct aic_i2s_buf_info { void *buf; uint32_t buf_len; uint32_t period_len; }; struct aic_i2s_transfer_info { struct aic_dma_chan *dma_chan; struct aic_audio_buf_info...","topics/sdk/i2s/i2s_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/i2s/i2s_debug_guide_2.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/i2s/i2s_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E\uFF1A linux-5.10/sound/soc/artinchip/aic-i2s.c...","topics/sdk/i2s/i2s_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E\uFF1A bsp/artinchip/drv/i2s/drv_i2s_sound.c : I2S \u7684 driver \u5C42\u9A71\u52A8 bsp/artinchip/hal/i2s/hal_i2s.c : i2s \u6A21\u5757\u7684 hal \u5C42\u9A71\u52A8 bsp/artinchip/include/hal/hal_i2s.h : i2s \u6A21\u5757\u7684 hal \u5C42\u5934\u6587\u4EF6\uFF0C\u7528\u4E8E\u5B9A\u4E49\u5BC4\u5B58\u5668\u76F8\u5173...","topics/sdk/i2s/i2s_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6267\u884C amixer \u65F6\u62A5\u9519\uFF0C\u663E\u793A\u627E\u4E0D\u5230 conf \u914D\u7F6E\u6587\u4EF6 \u8BE5\u95EE\u9898\u7684\u539F\u56E0\u662F\u627E\u4E0D\u5230 ALSA \u7684\u8DEF\u5F84\uFF0C\u53EF\u4EE5\u901A\u8FC7\u4EE5\u4E0B\u547D\u4EE4\u89E3\u51B3\uFF1A exportALSA_CONFIG_DIR=/usr/share/alsa/...","topics/sdk/i2s/i2s_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6267\u884C amixer \u65F6\u62A5\u9519\uFF0C\u663E\u793A\u627E\u4E0D\u5230 conf \u914D\u7F6E\u6587\u4EF6 \u8BE5\u95EE\u9898\u7684\u539F\u56E0\u662F\u627E\u4E0D\u5230 ALSA \u7684\u8DEF\u5F84\uFF0C\u53EF\u4EE5\u901A\u8FC7\u4EE5\u4E0B\u547D\u4EE4\u89E3\u51B3\uFF1A exportALSA_CONFIG_DIR=/usr/share/alsa/...","topics/sdk/i2s/i2s_interface.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . aic_i2s_set_sysclk \u51FD\u6570\u539F\u578B static int aic_i2s_set_sysclk(struct snd_soc_dai *dai, int clk_id, unsigned int freq, int dir) \u529F\u80FD\u8BF4\u660E \u8BBE\u7F6E S \u6A21\u5757\u8F93\u51FA\u7684 mclk \u65F6\u949F\u9891\u7387 \u53C2\u6570\u5B9A\u4E49 dai\uFF1A\u6307\u5411 dai \u7684\u6307\u9488 | clk_id\uFF1A\u8981\u8BBE\u7F6E\u7684\u65F6\u949F id |...","topics/sdk/i2s/i2s_interface_lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 Driver \u5C42\u53EF\u4EE5\u540C\u65F6\u5B9E\u73B0 playback \u548C record \u4E24\u4E2A\u529F\u80FD\uFF0C\u4E3B\u8981\u6839\u636E\u7684\u662F\u97F3\u9891\u6570\u636E\u6D41\u7684\u65B9\u5411\u8FDB\u884C\u5224\u522B\u3002 \u8868 1 . drv_i2s_sound_init \u51FD\u6570\u539F\u578B rt_err_t drv_i2s_sound_init(struct rt_audio_device *audio) \u529F\u80FD\u8BF4\u660E i2s \u7684\u521D\u59CB\u5316\u51FD\u6570 \u53C2\u6570\u5B9A\u4E49 audio\uFF1A\u6307\u5411\u97F3\u9891\u8BBE\u5907\u7684\u6307\u9488 \u8FD4\u56DE\u503C...","topics/sdk/i2s/i2s_key_procedure.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u64CD\u4F5C\u51FD\u6570\u96C6\u5B9E\u73B0 \u5728 S \u7684\u9A71\u52A8\u8BBE\u8BA1\u4E2D\uFF0Csnd_soc_dai_ops \u662F\u4E00\u4E2A\u975E\u5E38\u91CD\u8981\u7684\u7ED3\u6784\u4F53\uFF0C\u5B83\u662F dai \u7684\u64CD\u4F5C\u51FD\u6570\u96C6\uFF0C\u6240\u6709\u5BF9 S \u63A5\u53E3\u7684\u8BBE\u7F6E\u90FD\u662F\u901A\u8FC7\u6B64\u7ED3\u6784\u4F53\u5B8C\u6210\u3002\u6240\u4EE5\uFF0CI2S \u9A71\u52A8\u4E2D\u4E00\u9879\u975E\u5E38\u91CD\u8981\u7684\u90E8\u5206\u5C31\u662F\u5B9E\u73B0\u6B64\u7ED3\u6784\u4F53\u4E2D\u7684\u51FD\u6570\u63A5\u53E3\u3002snd_soc_dai_ops \u51FD\u6570\u96C6\u53EF\u4EE5\u5206\u4E3A\u5982\u4E0B\u51E0\u4E2A\u90E8\u5206\uFF1A cpu_dai \u65F6\u949F\u914D\u7F6E\u51FD\u6570\uFF0C\u901A\u5E38\u7531 machine \u9A71\u52A8\u8C03\u7528 set_sysclk\uFF1A\u8BBE\u7F6E dai...","topics/sdk/i2s/i2s_key_procedure_lite.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B \u91CA\u653E reset \u548C clock \u4FE1\u53F7 \u6CE8\u518C i2s \u8BBE\u5907 Playback \u6D41\u7A0B init \u6D41\u7A0B \u521D\u59CB\u5316 DMA \u4F20\u8F93\u7684\u8D77\u59CB\u5730\u5740\uFF0Cbuf_len \u4EE5\u53CA period_len \u6CE8\u518C hal \u5C42\u7684\u56DE\u8C03\u51FD\u6570 \u521D\u59CB\u5316 codec I2S \u6A21\u5757\u4F7F\u7528 DMA \u4F20\u8F93\u97F3\u9891\u6570\u636E\uFF0CDMA \u91C7\u7528\u73AF\u5F62\u94FE\u8868\u5F62\u5F0F\uFF0C\u4F9D\u6B21\u5C06\u97F3\u9891\u6570\u636E\u4F20\u9001\u5230\u786C\u4EF6\u3002\u6240\u4EE5\u9700\u8981\u914D\u7F6E DMA \u4F20\u8F93\u65F6\u7684\u8D77\u59CB\u5730\u5740\uFF08\u5373 TX buffer...","topics/sdk/i2s/i2s_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u6D4B\u8BD5\u677F\uFF1A\u5E26\u6709\u7B2C\u4E09\u65B9 codec \u82AF\u7247\u7684\u6D4B\u8BD5\u677F PC\uFF1A\u7528\u4E8E\u548C\u6D4B\u8BD5\u677F\u4EA4\u4E92 \u4E32\u53E3\u7EBF\uFF1A\u8FDE\u63A5\u6D4B\u8BD5\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6 alsa-lib \u548C alsa-utils \u7B2C\u4E09\u65B9\u8F6F\u4EF6\u5305 \u7B2C\u4E09\u65B9 codec \u9A71\u52A8 \u521B\u5EFA\u58F0\u5361\u7684 machine \u9A71\u52A8 \u521B\u5EFA\u58F0\u5361 machine \u9A71\u52A8 \u58F0\u5361\u7684\u9A71\u52A8\u5206\u4E3A\u4E09\u90E8\u5206\uFF1Aplatform \u9A71\u52A8\u3001codec \u9A71\u52A8\u3001machine...","topics/sdk/i2s/i2s_test_guide_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u6D4B\u8BD5\u677F\uFF1A\u5E26\u6709\u7B2C\u4E09\u65B9 codec \u82AF\u7247\u7684\u6D4B\u8BD5\u677F PC\uFF1A\u7528\u4E8E\u548C\u6D4B\u8BD5\u677F\u4EA4\u4E92 \u4E32\u53E3\u7EBF\uFF1A\u8FDE\u63A5\u6D4B\u8BD5\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6 \u7B2C\u4E09\u65B9 codec \u9A71\u52A8 \u97F3\u9891\u6D4B\u8BD5\u4EE3\u7801 \u4F7F\u80FD\u6D4B\u8BD5\u4EE3\u7801 Drivers options ---> Drivers examples ---> [*] Enable AUDIO driver test comnand \u91CD\u65B0\u7F16\u8BD1\u4EE3\u7801\uFF0C\u4F1A\u751F\u6210...","topics/sdk/i2s/i2s_user_guide.html@@@I2S \u4F7F\u7528\u6307\u5357@@@Inter-IC Sound (I2S) \u662F\u4E00\u79CD\u5E38\u89C1\u7684\u97F3\u9891\u63A5\u53E3\uFF0C\u4E3B\u8981\u7528\u4E8E\u97F3\u9891\u6570\u636E\u7684\u4F20\u8F93\u3002\u5E38\u89C1\u7684\u5E94\u7528\u573A\u666F\u662F SoC \u548C\u97F3\u9891 codec \u901A\u8FC7 I2S \u63A5\u53E3\u5B9E\u73B0\u97F3\u9891\u7684\u64AD\u653E\u4E0E\u5F55\u97F3\u3002\u7531\u4E8E\u97F3\u9891\u6570\u636E\u91CF\u8F83\u5927\uFF0CSoC \u4E00\u822C\u901A\u8FC7 DMA \u5B9E\u73B0\u97F3\u9891\u6570\u636E\u5728\u5185\u5B58\u548C I2S \u63A5\u53E3\u4E4B\u95F4\u7684\u4F20\u8F93\uFF0C\u6240\u4EE5\u9700\u8981 DMA \u9A71\u52A8\u7684\u652F\u6301\u3002 \u652F\u6301 I2S \u6807\u51C6\u534F\u8BAE \u652F\u6301 I2S\u3001\u5DE6\u5BF9\u9F50\u3001\u53F3\u5BF9\u9F50\u3001PCM\uFF08\u957F\u5E27/ \u77ED\u5E27\uFF09\u3001TDM \u683C\u5F0F \u652F\u6301\u4E3B/...","topics/sdk/i2s/i2s_user_guide_2.html@@@I2S \u4F7F\u7528\u6307\u5357@@@Inter-IC Sound (I2S) \u662F\u4E00\u79CD\u5E38\u89C1\u7684\u97F3\u9891\u63A5\u53E3\uFF0C\u4E3B\u8981\u7528\u4E8E\u97F3\u9891\u6570\u636E\u7684\u4F20\u8F93\u3002\u5E38\u89C1\u7684\u5E94\u7528\u573A\u666F\u662F SoC \u548C\u97F3\u9891 codec \u901A\u8FC7 I2S \u63A5\u53E3\u5B9E\u73B0\u97F3\u9891\u7684\u64AD\u653E\u4E0E\u5F55\u97F3\u3002\u7531\u4E8E\u97F3\u9891\u6570\u636E\u91CF\u8F83\u5927\uFF0CSoC \u4E00\u822C\u901A\u8FC7 DMA \u5B9E\u73B0\u97F3\u9891\u6570\u636E\u5728\u5185\u5B58\u548C I2S \u63A5\u53E3\u4E4B\u95F4\u7684\u4F20\u8F93\uFF0C\u6240\u4EE5\u9700\u8981 DMA \u9A71\u52A8\u7684\u652F\u6301\u3002 \u652F\u6301 I2S \u6807\u51C6\u534F\u8BAE \u652F\u6301 I2S\u3001\u5DE6\u5BF9\u9F50\u3001\u53F3\u5BF9\u9F50\u3001PCM\uFF08\u957F\u5E27/ \u77ED\u5E27\uFF09\u3001TDM \u683C\u5F0F \u652F\u6301\u4E3B/...","topics/sdk/interrupt/interrupt-user-guide.html@@@Interrupt \u4F7F\u7528\u6307\u5357@@@Interrupt \u76F8\u5173 .c \u548C .h \u6587\u4EF6\u5206\u522B\u4F4D\u4E8E luban-lite\\kernel\\common\\include\\osal\\aic_osal_platform_lbl.h \u548C luban-lite\\bsp\\artinchip\\sys\\dxxx\\ \u76EE\u5F55\u3002\u4E3B\u8981\u6E90\u6587\u4EF6\u8BF4\u660E\u5982\u4E0B\uFF1A \u6587\u4EF6 \u8BF4\u660E aic_osal_platform_lbl.h aicos \u5C42\u4E2D\u65AD \u6CE8\u518C & \u4F7F\u80FD \u51FD\u6570...","topics/sdk/interrupt/interrupt_config_guide.html@@@\u4E2D\u65AD\u914D\u7F6E@@@\u672C\u8282\u9002\u7528\u4EE5\u4E0B\u4EA7\u54C1\u5E73\u53F0\uFF1A \u4E2D\u65AD\u5D4C\u5957 \u4E2D\u65AD\u5D4C\u5957\u662F\u6307\u4E00\u4E2A\u9AD8\u4F18\u5148\u7EA7\u7684\u4E2D\u65AD\u53EF\u4EE5\u6253\u65AD\u6B63\u5728\u6267\u884C\u7684\u4F4E\u4F18\u5148\u7EA7\u4E2D\u65AD\uFF0C\u5141\u8BB8\u7CFB\u7EDF\u5728\u5904\u7406\u7D27\u6025\u4EFB\u52A1\u65F6\uFF0C\u80FD\u591F\u53CA\u65F6\u54CD\u5E94\u66F4\u9AD8\u7EA7\u522B\u7684\u4E2D\u65AD\u8BF7\u6C42\u3002\u4E2D\u65AD\u4F18\u5148\u7EA7\u53EF\u914D\u7F6E\u4E3A 0-7 \uFF0C\u6240\u6709\u4E2D\u65AD\u9ED8\u8BA4\u4F18\u5148\u7EA7\u4E3A 0 \u3002 \u901A\u8FC7\u4EE5\u4E0B API \u8BBE\u7F6E\u6216\u67E5\u8BE2\u67D0\u4E2A\u4E2D\u65AD\u7684\u4F18\u5148\u7EA7\uFF1A aicos_irq_set_prio(UART0_IRQn, 2 ); // \u8BBE\u7F6E UART0 \u7684\u4E2D\u65AD\u4F18\u5148\u7EA7\u4E3A 2...","topics/sdk/interrupt/interrupt_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u4E2D\u65AD\u76F8\u5173 .c \u548C .h \u6587\u4EF6\u5206\u522B\u4F4D\u4E8E luban-lite\\kernel\\common\\include\\osal\\aic_osal_platform_lbl.h \u548C luban-lite\\bsp\\artinchip\\sys\\dxxx\\ \u76EE\u5F55\u3002\u4E3B\u8981\u6E90\u6587\u4EF6\u8BF4\u660E\u5982\u4E0B\uFF1A \u8868 1 . \u6587\u4EF6 \u8BF4\u660E aic_osal_platform_lbl.h aicos \u5C42\u4E2D\u65AD\u6CE8\u518C & \u4F7F\u80FD\u51FD\u6570...","topics/sdk/linux/burn-image-partition-table.html@@@\u5206\u533A\u8868\u63CF\u8FF0@@@image_cfg.json \u6587\u4EF6\u7684\u5F00\u5934\u63CF\u8FF0\u7684\u662F\u5F53\u524D\u8981\u70E7\u5F55\u7684\u76EE\u6807\u5B58\u50A8\u8BBE\u5907\uFF0C\u4EE5\u53CA\u5728\u8BBE\u5907\u4E0A\u7684\u5206\u533A\u914D\u7F6E\uFF0C\u4EE5 spi-nand \u4E3A\u4F8B\uFF1A "spi-nand" : { // Device, The name should be the same with string in image:info:media:type "size" : "128m" , // Size of SPI NAND...","topics/sdk/linux/burn-image-partition-table_2.html@@@\u5206\u533A\u8868\u63CF\u8FF0@@@image_cfg.json \u6587\u4EF6\u7684\u5F00\u5934\u63CF\u8FF0\u7684\u662F\u5F53\u524D\u8981\u70E7\u5F55\u7684\u76EE\u6807\u5B58\u50A8\u8BBE\u5907\uFF0C\u4EE5\u53CA\u5728\u8BBE\u5907\u4E0A\u7684\u5206\u533A\u914D\u7F6E\uFF0C\u4EE5 spi-nand \u4E3A\u4F8B\uFF1A "spi-nand" : { // Device, The name should be the same with string in image:info:media:type "size" : "128m" , // Size of SPI NAND...","topics/sdk/lvgl/lvgl-connecting-display.html@@@\u663E\u793A\u5BF9\u63A5@@@LVGL \u663E\u793A\u5BF9\u63A5\u4E3B\u8981\u5305\u62EC\u4EE5\u4E0B\u6B65\u9AA4\u548C\u6D41\u7A0B\uFF1A \u7ED8\u5236 buffer \u521D\u59CB\u5316\uFF0C\u7528\u4E8E\u5B58\u50A8\u5F53\u524D\u5E27\u7684\u56FE\u50CF\u6570\u636E\uFF0C\u5E76\u5728\u9700\u8981\u65F6\u8FDB\u884C\u4EA4\u6362\u3002 flush_cb \u5BF9\u63A5\uFF0C\u5237\u65B0\u56DE\u8C03\u51FD\u6570\uFF0C\u7528\u4E8E\u5C06\u7ED8\u5236\u7F13\u51B2\u533A\u7684\u6570\u636E\u53D1\u9001\u5230\u663E\u793A\u5C4F\u3002\u5237\u65B0\u56DE\u8C03\u51FD\u6570\u53C8\u5206\u4E3A\u4EE5\u4E0B\u4E24\u79CD\u6A21\u5F0F\uFF1A \u5168\u5237\u65B0 \u5C40\u90E8\u5237\u65B0 2D \u786C\u4EF6\u52A0\u901F\u5BF9\u63A5\u3002 \u4E3A\u4E86\u63D0\u9AD8\u7ED8\u56FE\u6027\u80FD\uFF0C\u53EF\u4EE5\u5C06\u90E8\u5206\u7ED8\u56FE\u64CD\u4F5C\u8FDB\u884C\u786C\u4EF6\u52A0\u901F\u3002 \u5C06\u4E0A\u8FF0\u6240\u6709\u914D\u7F6E\u6CE8\u518C\u5230 LVGL \u4E2D\u3002 \u7ED8\u5236 buffer \u521D\u59CB\u5316 \u5728...","topics/sdk/lvgl/lvgl-demo.html@@@LVGL Demo@@@LVGL demo \u793A\u4F8B\u76EE\u524D\u652F\u6301\u4E0B\u5217\u5E38\u89C1\u7684\u793A\u4F8B\uFF1A Base Demo \uFF1ALVGL \u7684\u57FA\u7840\u6F14\u793A\u793A\u4F8B\uFF0C\u5C55\u793A\u4E86\u5982\u4F55\u4F7F\u7528 LVGL \u521B\u5EFA\u57FA\u672C\u7684 UI \u5143\u7D20\uFF0C\u901A\u5E38\u7528\u4E8E\u5C55\u793A LVGL \u7684\u57FA\u672C\u529F\u80FD\u548C\u4F7F\u7528\u65B9\u6CD5\uFF0C\u5305\u62EC\uFF1A \u521B\u5EFA\u6309\u94AE\u5E76\u54CD\u5E94\u70B9\u51FB\u4E8B\u4EF6 \u663E\u793A\u6587\u672C\u6807\u7B7E \u4F7F\u7528\u6ED1\u5757\u8C03\u6574\u6570\u503C \u7B80\u5355\u7684\u52A8\u753B\u6548\u679C Meter Demo \uFF1A\u6F14\u793A\u5982\u4F55\u4F7F\u7528 LVGL \u521B\u5EFA\u4EEA\u8868\u76D8\uFF08meter\uFF09\uFF0C...","topics/sdk/lvgl/lvgl-freetype.html@@@\u7B2C\u4E09\u65B9 FreeType \u5E93\u652F\u6301@@@\u5982\u9700\u5728 LVGL \u4E2D\u4F7F\u7528 FreeType \u5B57\u4F53\uFF0C\u6267\u884C\u4EE5\u4E0B\u914D\u7F6E\u6D41\u7A0B\uFF1A \u4F7F\u7528 scons --menuconfig \u6216 me \u8FDB\u5165\u914D\u7F6E\u83DC\u5355\uFF0C\u9009\u4E2D freetype \u5305\u3002 Local packages options ---> Third-party packages options ---> [*] freetype --- \u6253\u5F00\u5934\u6587\u4EF6...","topics/sdk/lvgl/lvgl-hw-decoder.html@@@\u786C\u4EF6\u89E3\u7801\u5BF9\u63A5@@@\u901A\u8FC7 lv_img_decoder_t \u53EF\u4EE5\u6CE8\u518C\u786C\u4EF6\u89E3\u7801\u5668\u63A5\u53E3\uFF0C\u4ECE\u800C\u63D0\u5347\u56FE\u50CF\u52A0\u8F7D\u548C\u6E32\u67D3\u7684\u6548\u7387\u3002 \u6CE8\u518C\u89E3\u7801\u5668\u8FC7\u7A0B\u5982\u4E0B\u6240\u793A\uFF1B \u5B9A\u4E49\u4E00\u4E2A\u89E3\u7801\u5668\u7ED3\u6784\u4F53\uFF0C\u5E76\u521D\u59CB\u5316\u3002 void aic_dec_create() { lv_img_decoder_t *aic_dec = lv_img_decoder_create(); /* init frame info lists */...","topics/sdk/lvgl/lvgl_add_app.html@@@\u6DFB\u52A0\u5E94\u7528@@@\u672C\u7AE0\u8282\u6F14\u793A\u5982\u4F55\u6DFB\u52A0\u4E00\u4E2A\u540D\u4E3A test_demo \u7684 LVGL \u5E94\u7528\uFF0C\u6765\u5B9E\u73B0\u4EE5\u4E0B\u529F\u80FD\uFF1A \u4E3B\u754C\u9762\u6DFB\u52A0\u4E00\u4E2A button \u63A7\u4EF6\uFF0C\u6309\u952E\u65F6\uFF0C\u5728\u63A7\u4EF6\u4E0A\u663E\u793A\u5F53\u524D\u540E\u53F0\u8BA1\u6570\u3002 \u540E\u53F0\u7EBF\u7A0B\u8FDB\u884C\u8BA1\u65F6\uFF0C\u6BCF\u4E00\u79D2\u8BA1\u6570\u52A0\u4E00\u3002 \u6DFB\u52A0 APP \u9009\u9879 \u5728 application/Kconfig \u4E2D\uFF0C\u6DFB\u52A0\u4EE5\u4E0B\u4EE3\u7801\uFF1A config AIC_LVGL_METER_DEMO bool "LVGL demo of meter" config...","topics/sdk/lvgl/lvgl_configure.html@@@\u53C2\u6570\u914D\u7F6E@@@\u4F7F\u80FD LVGL \u5E93\u548C LVGL demo \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u914D\u7F6E\u5982\u4E0B\uFF1A Application options ---> *** Filesystem related *** [*] Using File System Image 0 ---> --- Using File System...","topics/sdk/lvgl/lvgl_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@LVGL \u7684\u6253\u5370\u5B8F \u53EF\u901A\u8FC7\u914D\u7F6E lv_conf.h \u4E2D\u7684\u5B8F\u5B9A\u4E49\u6765\u6253\u5F00 log \u6253\u5F00\u5B8F\u5B9A\u4E49 LV_USE_LOG \u6765\u6253\u5F00 log \u6253\u5F00\u5B8F\u5B9A\u4E49 LV_LOG_PRINTF\uFF0C \u6253\u5370 log \u4F1A\u901A\u8FC7 printf \u51FD\u6570\u6765\u5B9E\u73B0 \u6253\u5370\u7EA7\u522B\u53EF\u4EE5\u8BBE\u7F6E\uFF1A LV_LOG_LEVEL_TRACE LV_LOG_LEVEL_INFO LV_LOG_LEVEL_WARN LV_LOG_LEVEL_ERROR...","topics/sdk/lvgl/lvgl_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u4EE3\u7801\u76EE\u5F55 luban-lite/packages/artinchip/lvgl-ui \u251C\u2500\u2500 aic_demo // aic lvgl demo \u251C\u2500\u2500 lv_driver // lvgl \u663E\u793A\u548C 2D \u52A0\u901F\u5BF9\u63A5 \u251C\u2500\u2500 lvgl // lvgl \u5E93 \u251C\u2500\u2500 aic_ui.c // aic demo \u5165\u53E3 \u251C\u2500\u2500 aic_ui.h // aic demo \u5934\u6587\u4EF6 \u251C\u2500\u2500 lv_conf.h //...","topics/sdk/lvgl/lvgl_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@UI \u56FE\u7247\u672A\u52A0\u8F7D \u73B0\u8C61 UI \u754C\u9762\u672A\u663E\u793A\u8981\u52A0\u8F7D\u7684\u56FE\u7247\u3002 \u539F\u56E0\u5206\u6790 \u9010\u6B65\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A Using File System Image 0 \u4E0E Using File System Image 1 \u4E2D\u6253\u5305\u7684\u8D44\u6E90\u6587\u4EF6\u8DEF\u5F84\u662F\u5426\u6B63\u786E\u3002 Using File System Image 0 \u4E0E Using File System Image 1 \u5728 image_cfg.json \u4E2D\u5BF9\u5E94\u7684\u5206\u533A\u8868\u914D\u7F6E\u662F\u5426\u6B63\u786E\u3002...","topics/sdk/lvgl/lvgl_introduction.html@@@LVGL \u4F7F\u7528\u6307\u5357@@@Light and Versatile Embedded Graphics Library (LVGL) \u662F\u4E00\u4E2A\u5F00\u6E90\u7684\u8F7B\u91CF\u7EA7\u56FE\u5F62\u5E93\uFF0C\u63D0\u4F9B\u4E86\u4E30\u5BCC\u7684\u56FE\u5F62\u7EC4\u4EF6\u548C\u63A7\u4EF6\uFF0C\u652F\u6301\u591A\u79CD\u5E73\u53F0\u548C\u64CD\u4F5C\u7CFB\u7EDF\uFF0C\u5982 Linux\u3001Windows\u3001RTOS \u7B49\u3002LVGL \u4EE5\u5176\u8F7B\u91CF\u7EA7\u3001\u591A\u529F\u80FD\u3001\u7075\u6D3B\u548C\u53EF\u79FB\u690D\u7B49\u7279\u70B9\uFF0C\u53EF\u5E7F\u6CDB\u5E94\u7528\u9002\u5404\u79CD\u5D4C\u5165\u5F0F\u7CFB\u7EDF\u7684 GUI...","topics/sdk/lvgl/lvgl_special_func.html@@@\u5C4F\u5E55\u65CB\u8F6C@@@\u672C\u8282\u5C55\u793A\u4E86\u57FA\u4E8E LVGL \u7684 UI \u6846\u67B6\uFF0C\u5B9E\u73B0\u6A2A\u5C4F\u7AD6\u7528\u3001\u7AD6\u5C4F\u6A2A\u7528\u7684\u65B9\u5F0F\u3002\u4EE5\u4E0B\u65B9\u5F0F\u4EFB\u9009\u4E00\u79CD\uFF0C\u8BE6\u7EC6\u6D41\u7A0B\u5982\u4E0B\uFF1A \u9759\u6001\u65CB\u8F6C \u5728 packages/artinchip/lvgl-ui/lv_driver/lv_fbdev.h \u6587\u4EF6\u4E2D\uFF0C\u4F7F\u80FD USE_DRAW_BUF \u5B8F\u5B9A\u4E49\uFF0C\u5F00\u542F\u8F6C\u5C4F\u7F13\u5B58\uFF1A ... # define USE_DRAW_BUF ... \u5728...","topics/sdk/lvgl/lvgl_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5E26\u5C4F\u7684\u8BBE\u5907 USB Type-C \u6570\u636E\u7EBF\uFF0C\u7528\u4E8E\u8BBE\u5907\u4F9B\u7535\uFF0C\u4EE5\u53CA\u70E7\u5199\u56FA\u4EF6 \u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E\u4E32\u53E3\u901A\u4FE1 AiBurn \u70E7\u5199\u5DE5\u5177\uFF0C\u7528\u4E8E\u70E7\u5199\u56FA\u4EF6 \u8F6F\u4EF6\u914D\u7F6E VE \u9A71\u52A8 \u8BF7\u89C1 VE \u53C2\u6570\u914D\u7F6E \u5185\u6838\u914D\u7F6E \u3002 MPP \u4E2D\u95F4\u4EF6 \u8BF7\u89C1 MPP \u53C2\u6570\u914D\u7F6E ../mpp/mpp_config.html#mpp_configuration__section_mpf_hpf_fdc \u3002...","topics/sdk/mac/mac-key-procedure.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B |-->aicmac_platform_get_resources |-->kzalloc aicma_resources |-->platform_get_irq_byname |-->devm_platform_ioremap_resource |-->aicmac_platform_get_config |-->aicmac_platform_init_data...","topics/sdk/mac/mac_config.html@@@\u53C2\u6570\u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u914D\u7F6E\u7F51\u7EDC\u529F\u80FD \u5982\u9700\u5728\u5185\u6838\u4E2D\u4F7F\u7528\u4EE5\u592A\u7F51\u529F\u80FD\uFF0C\u5219\u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\u6253\u5F00\u548C\u914D\u7F6E\u7F51\u7EDC\u76F8\u5173\u529F\u80FD\uFF0C\u5982\u4E0B\u6240\u793A\uFF1A [*] Networking support Networking options <*> Packet...","topics/sdk/mac/mac_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u4EE5\u592A\u7F51\u914D\u7F6E \u5185\u6838\u914D\u7F6E\u4E3B\u8981\u662F\u901A\u8FC7 scons --menuconfig \u547D\u4EE4\u8FDB\u884C \u4EE5\u592A\u7F51\u7684\u529F\u80FD\u914D\u7F6E\uFF0C \u914D\u7F6E\u5B8C\u6210\u540E\u7684\u9879\u76EE\u5B58\u50A8\u5728 target/configs/xxx_defconfig \u6587\u4EF6\u4E2D\u3002 MAC \u53C2\u6570\u914D\u7F6E \u5185\u6838\u4E2D\u8981\u4F7F\u7528\u4EE5\u592A\u7F51\u529F\u80FD\uFF0C\u9996\u5148\u9700\u8981\u914D\u7F6E MAC \u7684\u5C5E\u6027\u53C2\u6570\u3002MAC \u7684\u53C2\u6570\u968F\u7740\u677F\u5361\u7684\u4E0D\u540C\u800C\u4E0D\u540C \u4EE5\u4E0B\u662F\u5C55\u5F00\u540E MAC \u7684\u6240\u6709\u7684\u914D\u7F6E\u9009\u9879\u53CA\u5176\u4ECB\u7ECD \u6CE8\uFF1A \u4E3A\u9632\u6B62\u914D\u7F6E\u9519\u8BEF\uFF0C\u5B9E\u9645\u7684 MAC...","topics/sdk/mac/mac_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u4EE5\u592A\u7F51\u8C03\u8BD5\u5F00\u5173 \u901A\u8FC7 scons --menuconfig \u547D\u4EE4\u6253\u5F00 Luban-Lite \u7684\u914D\u7F6E\u9009\u9879\u5982\u4E0B\u8DEF\u5F84\uFF0C\u9009\u4E2D Luban-Lite \u7684\u6253\u5370\u7B49\u7EA7\u5F00\u5173\uFF0C\u53EF\u4EE5\u5C06 Luban-Lite \u7684\u6253\u5370\u7B49\u7EA7\u8C03\u5230\u6700\u9AD8\u7B49\u7EA7(debug)\uFF0C\u53EF\u4EE5\u5B9E\u65F6\u89C2\u6D4B\u4EE5\u592A\u7F51\u9A71\u52A8\u5185\u90E8\u7684\u6253\u5370\u6D88\u606F\u3002 Rt-Thread options ---> RT-Thread Components ---> Utilities --->...","topics/sdk/mac/mac_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u4EE5\u592A\u7F51\u8C03\u8BD5\u5F00\u5173 \u901A\u8FC7 scons --menuconfig \u547D\u4EE4\u6253\u5F00 Luban-Lite \u7684\u914D\u7F6E\u9009\u9879\u5982\u4E0B\u8DEF\u5F84 \u9009\u4E2D Luban-Lite \u7684\u6253\u5370\u7B49\u7EA7\u5F00\u5173\uFF0C\u53EF\u4EE5\u5C06 Luban-Lite \u7684\u6253\u5370\u7B49\u7EA7\u8C03\u5230\u6700\u9AD8\u7B49\u7EA7(debug)\uFF0C\u7136\u540E \u5C31\u53EF\u4EE5\u5B9E\u65F6\u89C2\u6D4B\u4EE5\u592A\u7F51\u9A71\u52A8\u5185\u90E8\u7684\u6253\u5370\u6D88\u606F Rt-Thread options ---> RT-Thread Components ---> Utilities...","topics/sdk/mac/mac_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@Ethernet \u7684\u6E90\u7801\u6D89\u53CA\u4EE5\u4E0B\u76EE\u5F55\uFF1A MAC \u9A71\u52A8\uFF1A MAC \u7684\u4E3B\u9A71\u52A8\u4EE3\u7801 drivers/net/ethernet/artinchip PHY \u9A71\u52A8\uFF1A\u4F7F\u7528\u5230\u7684 mdio\uFF0Cphy \u7B49\u6A21\u5757\u7684\u9A71\u52A8 drivers/net/phy SysConfig\uFF1A\u7CFB\u7EDF\u65F6\u949F\u9009\u62E9\uFF0Cdelay \u8BBE\u7F6E\u7B49 drivers/misc/artinchip-syscfg.c \u6587\u4EF6\u547D\u540D\u8BF4\u660E...","topics/sdk/mac/mac_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u4EE3\u7801\u7ED3\u6784 Ethernet \u7684\u6E90\u7801\u7275\u6D89\u4E09\u4E2A\u76EE\u5F55 \u786C\u4EF6\u9A71\u52A8\u76F8\u5173 packages/third-party/lwip/contrib/ports/drv/aic/ \u64CD\u4F5C\u7CFB\u7EDF\u76F8\u5173 LwIP \u8FD0\u884C\u9700\u8981\u5B9E\u73B0\u7684\u64CD\u4F5C\u7CFB\u7EDF\u76F8\u5173\u63A5\u53E3\u53CA\u67B6\u6784\u76F8\u5173\u7684\u5B9A\u4E49 packages/third-party/lwip/contrib/ports/rt-thread/ LwIP \u5185\u6838\u76F8\u5173 LwIP \u5185\u6838\u534F\u8BAE\u6808\u6E90\u7801...","topics/sdk/mac/mac_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@MAC \u65E0\u6CD5\u53D1\u73B0 PHY MAC \u65E0\u6CD5\u53D1\u73B0 PHY \u4E00\u822C\u662F MAC \u548C PHY \u7684\u901A\u4FE1\u5F02\u5E38\u5BFC\u81F4\uFF0CPHY \u7684\u9A71\u52A8\u4E00\u822C\u662F\u6B21\u8981\u7684\uFF0C\u56E0\u4E3A\u901A\u7528 PHY \u9A71\u52A8\u57FA\u672C\u4E0A\u53EF\u4EE5\u9A71\u52A8\u5927\u90E8\u5206 PHY reset \u662F\u5426\u914D\u7F6E\u6B63\u5E38 PHY \u7684\u5730\u5740\u662F\u5426\u914D\u7F6E\u6B63\u786E\uFF0C\u4E00\u822C\u4F1A\u6709\u626B\u63CF\u673A\u5236\uFF0C\u914D\u7F6E\u9519\u8BEF\u53EA\u4F1A\u5F71\u54CD\u542F\u52A8\u901F\u5EA6 MAC \u548C PHY \u7684 MDC \u65F6\u949F\u662F\u5426\u5DE5\u4F5C\u6B63\u5E38 \u7F51\u7EDC\u4E0D\u901A \u5728 MAC \u548C PHY \u8054\u901A\u540E\u800C\u7F51\u7EDC\u4E0D\u901A\uFF0C\u8B6C\u5982 ping...","topics/sdk/mac/mac_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@MAC \u65E0\u6CD5\u53D1\u73B0 PHY MAC \u65E0\u6CD5\u53D1\u73B0 PHY \u4E00\u822C\u662F MAC \u548C PHY \u7684\u901A\u4FE1\u5F02\u5E38\u5BFC\u81F4\uFF0CPHY \u7684\u9A71\u52A8\u4E00\u822C\u662F\u6B21\u8981\u7684\uFF0C\u56E0\u4E3A\u901A\u7528 PHY \u9A71\u52A8\u57FA\u672C\u4E0A\u53EF\u4EE5\u9A71\u52A8\u5927\u90E8\u5206 PHY reset \u662F\u5426\u914D\u7F6E\u6B63\u5E38 PHY \u7684\u5730\u5740\u662F\u5426\u914D\u7F6E\u6B63\u786E\uFF0C\u4E00\u822C\u4F1A\u6709\u626B\u63CF\u673A\u5236\uFF0C\u914D\u7F6E\u9519\u8BEF\u53EA\u4F1A\u5F71\u54CD\u542F\u52A8\u901F\u5EA6 MAC \u548C PHY \u7684 MDC \u65F6\u949F\u662F\u5426\u5DE5\u4F5C\u6B63\u5E38 \u7F51\u7EDC\u4E0D\u901A \u5728 MAC \u548C PHY \u8054\u901A\u540E\u800C\u7F51\u7EDC\u4E0D\u901A\uFF0C\u8B6C\u5982 ping...","topics/sdk/mac/mac_func_param.html@@@\u529F\u80FD\u53C2\u6570\u63CF\u8FF0@@@\u529F\u80FD\u53C2\u6570\u4E3B\u8981\u9488\u5BF9\u67D0\u4E00\u4E2A\u4F7F\u7528\u65B9\u6848\u800C\u5B9A\uFF0C\u56E0\u6B64\u968F\u7740\u65B9\u6848\u7684\u4E0D\u540C\uFF0C\u53C2\u6570\u5F88\u53EF\u80FD\u4E0D\u540C\uFF0C\u8FD9\u4E9B\u53C2\u6570\u4E3B\u8981\u5728\u6587\u4EF6 target/d211/xxx/board.dts \u4E2D\uFF0C\u529F\u80FD\u53C2\u6570\u7684\u8BBE\u7F6E\u5FC5\u987B\u548C\u786C\u4EF6\u539F\u7406\u56FE\u76F8\u5339\u914D\u3002 GMAC \u529F\u80FD\u53C2\u6570\u63CF\u8FF0 &gmac0 { pinctrl-names = "default" ; pinctrl- 0 = <&gmac0_ 1000 m_pins>; phy-handle =...","topics/sdk/mac/mac_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u5DE5\u4F5C \u7269\u6599 \u4EA4\u6362\u673A\uFF1A\u6700\u597D\u662F\u5343\u5146\u4EA4\u6362\u673A\uFF0C\u56E0\u4E3A\u5343\u5146\u4EA4\u6362\u673A\u517C\u5BB9\u767E\u5146\uFF0C\u4F46\u767E\u5146\u4E0D\u517C\u5BB9\u5343\u5146 \u6D4B\u8BD5\u677F\uFF1A\u9700\u8981\u786E\u5B9A\u6D4B\u8BD5\u677F\u7684 PHY \u7AEF\u53E3\u7684\u901F\u5EA6\uFF0C\u5343\u5146\u8FD8\u662F\u767E\u5146 \u7F51\u7EBF\uFF1A\u53EF\u4EE5\u8FDB\u884C\u8DEF\u7531\u5668\u8FDE\u63A5\u7684\u7F51\u7EBF \u8F6F\u4EF6\uFF1A\u786E\u4FDD SDK \u5305\u542B\u5982\u4E0B\u6D4B\u8BD5\u9700\u8981\u7684\u7F51\u7EDC\u8F6F\u4EF6 \u7F51\u901F\u6D4B\u8BD5\u8F6F\u4EF6 \u4E3B\u8981\u662F iperf1.7.0 \uFF0C\u63A8\u8350 jperf2.0.2(\u56FE\u5F62\u5316 iperf \u5DE5\u5177) \uFF0C\u53EF\u76F4\u89C2\u89C2\u5BDF\u7F51\u901F\u53D8\u5316 \u7EC4\u7F51\u62D3\u6251 \u63A8\u8350\u4E24\u79CD\u7EC4\u7F51\u62D3\u6251\uFF0C\u53EF\u4F9D\u73B0\u5B9E\u6761\u4EF6\u9009\u62E9\u4F7F\u7528...","topics/sdk/mac/mac_test_2.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u5DE5\u4F5C \u7269\u6599 \u4EA4\u6362\u673A\uFF1A\u6700\u597D\u662F\u5343\u5146\u4EA4\u6362\u673A\uFF0C\u56E0\u4E3A\u5343\u5146\u4EA4\u6362\u673A\u517C\u5BB9\u767E\u5146\uFF0C\u4F46\u767E\u5146\u4E0D\u517C\u5BB9\u5343\u5146 \u6D4B\u8BD5\u677F\uFF1A\u9700\u8981\u786E\u5B9A\u6D4B\u8BD5\u677F\u7684 PHY \u7AEF\u53E3\u7684\u901F\u5EA6\uFF0C\u5343\u5146\u8FD8\u662F\u767E\u5146 \u7F51\u7EBF\uFF1A\u53EF\u4EE5\u8FDB\u884C\u8DEF\u7531\u5668\u8FDE\u63A5\u7684\u7F51\u7EBF \u8F6F\u4EF6\uFF1A\u786E\u4FDD SDK \u5305\u542B\u5982\u4E0B\u6D4B\u8BD5\u9700\u8981\u7684\u7F51\u7EDC\u8F6F\u4EF6 \u7F51\u901F\u6D4B\u8BD5\u8F6F\u4EF6 \u4E3B\u8981\u662F iperf1.7.0 \uFF0C\u63A8\u8350 jperf2.0.2(\u56FE\u5F62\u5316 iperf \u5DE5\u5177) \uFF0C\u53EF\u76F4\u89C2\u89C2\u5BDF\u7F51\u901F\u53D8\u5316 \u7EC4\u7F51\u62D3\u6251 \u63A8\u8350\u4E24\u79CD\u7EC4\u7F51\u62D3\u6251\uFF0C\u53EF\u4F9D\u73B0\u5B9E\u6761\u4EF6\u9009\u62E9\u4F7F\u7528...","topics/sdk/mac/mac_user_guide.html@@@MAC \u4F7F\u7528\u6307\u5357@@@\u4EE5\u592A\u7F51\uFF08Ethernet\uFF09\u662F\u4E00\u79CD\u8BA1\u7B97\u673A\u5C40\u57DF\u7F51\u7EC4\u7F51\u6280\u672F\uFF0C\u57FA\u4E8E IEEE802.3 \u6807\u51C6\uFF0C\u5B83\u89C4\u5B9A\u4E86\u5305\u62EC\u7269\u7406\u5C42\u7684\u8FDE\u7EBF\uFF08RJ45\uFF09\uFF0C\u7535\u6C14\u4FE1\u53F7\uFF08PHY\uFF09\u548C\u5A92\u4F53\u8BBF\u95EE\u5C42\uFF08MAC\uFF09\u534F\u8BAE\u7B49\uFF0C \u4EE5\u592A\u7F51\u7684\u7279\u5F81\u662F\u6709\u7EBF\u7F51\u7EDC\uFF0C\u7F51\u7EDC\u4E2D\u7684\u5404\u7EC8\u7AEF\u5FC5\u987B\u901A\u8FC7\u7F51\u7EBF\u8FDB\u884C\u8FDE\u63A5\uFF0C\u4EE5\u592A\u7F51\u6A21\u5757\u53EF\u4EE5\u7B80\u5355\u7684\u7406\u89E3\u4E3A MAC \u901A\u8FC7 MII \u603B\u7EBF\u63A7\u5236 PHY \u5171\u540C\u5B8C\u6210\u7EC8\u7AEF\u4E4B\u95F4\u6570\u636E\u4EA4\u6362\u7684\u4E00\u79CD\u8BBE\u5907\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E MAC...","topics/sdk/mac/mac_user_guide_2.html@@@MAC \u4F7F\u7528\u6307\u5357@@@\u4EE5\u592A\u7F51\uFF08Ethernet\uFF09\u662F\u4E00\u79CD\u8BA1\u7B97\u673A\u5C40\u57DF\u7F51\u7EC4\u7F51\u6280\u672F\uFF0C\u57FA\u4E8E IEEE802.3 \u6807\u51C6\uFF0C\u5B83\u89C4\u5B9A\u4E86\u5305\u62EC\u7269\u7406\u5C42\u7684\u8FDE\u7EBF\uFF08RJ45\uFF09\uFF0C\u7535\u6C14\u4FE1\u53F7\uFF08PHY\uFF09\u548C\u5A92\u4F53\u8BBF\u95EE\u5C42\uFF08MAC\uFF09\u534F\u8BAE\u7B49\uFF0C \u4EE5\u592A\u7F51\u7684\u7279\u5F81\u662F\u6709\u7EBF\u7F51\u7EDC\uFF0C\u7F51\u7EDC\u4E2D\u7684\u5404\u7EC8\u7AEF\u5FC5\u987B\u901A\u8FC7\u7F51\u7EBF\u8FDB\u884C\u8FDE\u63A5\uFF0C\u4EE5\u592A\u7F51\u6A21\u5757\u53EF\u4EE5\u7B80\u5355\u7684\u7406\u89E3\u4E3A MAC \u901A\u8FC7 MII \u603B\u7EBF\u63A7\u5236 PHY \u5171\u540C\u5B8C\u6210\u7EC8\u7AEF\u4E4B\u95F4\u6570\u636E\u4EA4\u6362\u7684\u4E00\u79CD\u8BBE\u5907\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E MAC...","topics/sdk/mdi/mdi_config.html@@@\u53C2\u6570\u914D\u7F6E@@@\u6309\u7167\u4EE5\u4E0B\u6D41\u7A0B\uFF0C\u914D\u7F6E MDI \u9A71\u52A8\u6A21\u5757\u53CA\u76F8\u5173\u53C2\u6570\uFF1A \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00 MPP VIN DevMode\uFF1A \u6CE8\uFF1A MDI \u9A71\u52A8\u4F9D\u8D56 MPP \u4E2D\u7684 VIN \u5B50\u6A21\u5757\uFF0C\u800C\u4E14\u7528\u5230\u7684\u662F\u5176\u4E2D\u7684 DevMode\uFF0C\u9700\u8981\u63D0\u524D\u6253\u5F00\u3002 Local packages options --->...","topics/sdk/mdi/mdi_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D\uFF0CMDI \u9A71\u52A8\u7684 Log \u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 ulog \u63A5\u53E3\u3002 ulog \u6253\u5370\u7EA7\u522B\u7684\u63A7\u5236\u65B9\u6CD5\uFF0C\u53EF\u4EE5\u53C2\u8003\u8C03\u8BD5 Log \u7684\u7EA7\u522B\u3002 \u5728 mpp_vin_dev.c \u4E2D\uFF0C\u9884\u7559\u4E86\u4E24\u4E2A\u8C03\u8BD5\u7528\u7684\u5B8F\uFF1A # define VIN_DEBUG_SHOW_FRAMERATE # define VIN_DEBUG_DISP_ENABLE # define...","topics/sdk/mdi/mdi_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/mdi/drv_mdi.c \uFF0CMDI Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/mdi/hal_mdi.c \uFF0CMDI HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_mdi.h \uFF0CMDI HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 \u6574\u4E2A\u8F6F\u4EF6\u7CFB\u7EDF\u7684\u67B6\u6784\u56FE\u5982\u4E0B\uFF1A MDI...","topics/sdk/mdi/mdi_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5C4F\u5E55\u663E\u793A\u753B\u9762\u5361\u987F \u73B0\u8C61 \u5C4F\u5E55\u663E\u793A\u7684\u753B\u9762\u6709\u660E\u663E\u5361\u987F\u60C5\u51B5\u3002 \u539F\u56E0\u5206\u6790 \u53EF\u80FD\u662F OS \u7684\u8C03\u5EA6\u4E0D\u591F\u53CA\u65F6\u5BFC\u81F4\uFF0C\u5BFC\u81F4 MDI \u7684\u5E27\u91C7\u96C6\u4E0D\u8FDE\u8D2F\u3002 \u89E3\u51B3\u65B9\u6CD5 \u68C0\u67E5\u64CD\u4F5C\u7CFB\u7EDF\u8C03\u5EA6\u3002 \u786E\u4FDD\u64CD\u4F5C\u7CFB\u7EDF\uFF08OS\uFF09\u80FD\u591F\u53CA\u65F6\u8C03\u5EA6\u4EFB\u52A1\u3002\u5982\u679C OS \u7684\u8C03\u5EA6\u4E0D\u591F\u53CA\u65F6\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4 MDI\uFF08\u591A\u5A92\u4F53\u63A5\u53E3\uFF09\u7684\u5E27\u91C7\u96C6\u4E0D\u8FDE\u8D2F\uFF0C\u4ECE\u800C\u51FA\u73B0\u5361\u987F\u73B0\u8C61\u3002 \u8C03\u6574 MDI \u9A71\u52A8\u4E2D\u7684\u8C03\u8BD5\u4FE1\u606F\u8F93\u51FA\u3002\u5982\u679C MDI...","topics/sdk/mdi/mdi_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 D12x \u5F00\u53D1\u677F Host \u7AEF\u7684\u677F\u5B50\uFF08D21x \u5F00\u53D1\u677F\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u6D4B\u8BD5\u7684\u683C\u5F0F\u9700\u6C42\uFF09 \u8DE8\u63A5\u4E24\u4E2A\u677F\u5B50\u7684\u5B50\u677F\u3001\u6216\u8005\u6570\u636E\u6392\u7EBF \u8F6F\u4EF6 MDI \u6A21\u5757\u7684\u6D4B\u8BD5 demo\uFF1Atest_mdi PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 \u914D\u7F6E\u548C\u6D4B\u8BD5 test_mdi \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig...","topics/sdk/mdi/mdi_user_guide.html@@@MDI \u4F7F\u7528\u6307\u5357@@@Multi-Display Interface (MDI) \u6A21\u5757\u8D1F\u8D23\u4ECE\u5916\u90E8 MCU \u7B49\u7CFB\u7EDF\u4E2D\u83B7\u53D6\u5230\u6570\u636E\uFF0C\u91C7\u96C6\u56FE\u50CF\u4FE1\u53F7\u5E76\u8F93\u51FA\u5230 RAM\uFF0C\u7136\u540E\u8F6C\u4EA4\u7ED9 Display Engine (DE) \u53BB\u663E\u793A\u3002\u5728\u8FD9\u79CD\u5E94\u7528\u573A\u666F\u4E2D\uFF0C\u201C\u5916\u90E8 MCU\u201D \u5C5E\u4E8E Host \u89D2\u8272\uFF0C\u4F7F\u7528 MDI \u63A5\u53E3\u7684 SoC \u662F Device \u89D2\u8272 \uFF0C\u4F8B\u5982 D12x\uFF0C\u529F\u80FD\u4E0A\u76F8\u5F53\u4E8E\u4E00\u9897 \u201C\u5C4F\u9A71\u82AF\u7247\u201D\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E...","topics/sdk/mem/d12x_mem_guide.html@@@\u5185\u5B58\u4F7F\u7528\u6307\u5357@@@\u786C\u4EF6\u4E0A\u4F7F\u7528 PSRAM \u4F5C\u4E3A Memory \u4E3B\u8981\u5B58\u50A8\u5355\u5143\uFF0C\u5176\u5178\u578B\u5927\u5C0F\u4E3A 8M/ 16M\u3002 \u5185\u5B58\u5E03\u5C40\u548C\u4F7F\u7528\u7B56\u7565 \u5982\u56FE\u6240\u793A\uFF0C\u8F6F\u4EF6\u4F1A\u4F7F\u7528\u4EE5\u4E0B\u7B56\u7565\u6765\u5206\u914D PSRAM \u5185\u5B58\u8D44\u6E90\uFF0C\u786E\u4FDD\u5173\u952E\u6A21\u5757\u5982 MPP \u80FD\u591F\u9AD8\u6548\u5730\u83B7\u53D6\u6240\u9700\u5185\u5B58\uFF0C\u540C\u65F6\u4E5F\u4E3A\u7CFB\u7EDF\u7684\u5176\u4ED6\u90E8\u5206\u63D0\u4F9B\u8DB3\u591F\u7684\u8D44\u6E90\uFF1A \u5C06 PSRAM \u5206\u6210\u4EE5\u4E0B\u4E24\u4E2A\u4E3B\u8981\u533A\u57DF\uFF1A PSRAM CMA Region \uFF1A\u4E13\u4F9B\u591A\u5A92\u4F53\u6A21\u5757 MPP \u4F7F\u7528\u3002 PSRAM Software...","topics/sdk/mem/d13x-mem-1-sram-psram.html@@@SRAM + PSRAM@@@\u4F5C\u4E3A\u4E00\u79CD\u5178\u578B\u7684\u5185\u5B58\u914D\u7F6E\u4F7F\u7528\u573A\u666F\uFF0CSRAM + PSRAM \u914D\u7F6E\u6709\u5982\u4E0B\u7279\u70B9\uFF1A SRAM_S0 \u901F\u5EA6\u8F83\u5FEB\u4F46\u662F\u5BB9\u91CF\u8F83\u5C0F\uFF0C\u63D0\u4F9B\u7ED9\u8F6F\u4EF6\u7CFB\u7EDF\u4F7F\u7528\u3002 PSRAM \u901F\u5EA6\u7565\u6162\u4F46\u662F\u5BB9\u91CF\u8F83\u5927\uFF0C\u63D0\u4F9B\u7ED9\u591A\u5A92\u4F53\u5916\u8BBE\u6A21\u5757 DE/GE/VE \u4F5C\u4E3A\u7F13\u5B58\u4F7F\u7528\u3002 \u5916\u8BBE\u6A21\u5757\u7684 DMA \u76F4\u63A5\u5B58\u53D6\u5185\u5B58\u3002 \u5185\u5B58\u5E03\u5C40\u548C\u4F7F\u7528\u7B56\u7565 \u6CE8\uFF1A \u4E3A\u4E86\u51CF\u5C11\u603B\u7EBF\u51B2\u7A81\uFF0CDE/ GE/ VE \u786C\u4EF6\u4E0A\u5DF2\u88AB\u9650\u5236\u4E0D\u80FD\u8BBF\u95EE SRAM_S0 \u533A\u57DF\u7684\u5185\u5B58\u3002...","topics/sdk/mem/d13x-mem-2-tcm-sram-psram.html@@@TCM + SRAM + PSRAM@@@\u652F\u6301\u628A\u90E8\u5206 SRAM \u6302\u8F7D\u6210 Tightly Coupled Memory (TCM)\u3002TCM \u7684\u4E3B\u8981\u4F18\u52BF\u5728\u4E8E\u5176\u5185\u5B58\u533A\u57DF\u7531 CPU \u72EC\u5360\u8BBF\u95EE\uFF0C\u4E0D\u4F1A\u4E0E\u5176\u4ED6\u5916\u8BBE\u53D1\u751F\u603B\u7EBF\u7ADE\u4E89\uFF0C\u8FD9\u5BF9\u67D0\u4E9B\u9700\u8981\u9AD8\u5B9E\u65F6\u6027\u7684\u4EE3\u7801\u6765\u8BF4\u81F3\u5173\u91CD\u8981\u3002TCM + SRAM + PSRAM \u914D\u7F6E\u548C SRAM + PSRAM \u914D\u7F6E\u7684\u533A\u522B\u5728\u4E8E\u662F\u5426\u5F00\u542F TCM \u4E0A\uFF0C\u672C\u8282\u4EC5\u63CF\u8FF0\u4E24\u79CD\u914D\u7F6E\u7684\u5DEE\u5F02\u3002 \u63D0\u4F9B\u4E86 128K \u7684\u6307\u4EE4 TCM (ITCM) \u548C...","topics/sdk/mem/d13x-mem-3-sram.html@@@SRAM@@@\u5BF9\u4E8E\u6CA1\u6709 SiP PSRAM \u9897\u7C92\u548C PSRAM Memory \u7A7A\u95F4\u7684\u90E8\u5206 \u578B\u53F7\uFF0C\u5982\u9700\u4F7F\u7528\u591A\u5A92\u4F53\u6A21\u5757 DE/ GE/ VE \uFF0C\u5FC5\u987B\u4F7F\u80FD SRAM_S1 \u533A\u57DF\u3002SRAM_S1 \u533A\u57DF\u53EF\u4EE5\u88AB DE/GE/VE \u786C\u4EF6\u8BBF\u95EE\uFF0C\u4F46\u5176\u7A7A\u95F4\u9700\u8981\u4ECE SRAM_S0 \u4E2D\u5212\u5206\u3002 SRAM \u914D\u7F6E\u548C SRAM + PSRAM \u914D\u7F6E\u533A\u522B\u662F\u7528 SRAM_S1 \u53D6\u4EE3 PSRAM \u6765\u5145\u5F53 CMA \u533A\u57DF\uFF0C\u672C\u8282\u4EC5\u63CF\u8FF0\u4E24\u8005\u7684\u5DEE\u5F02\u90E8\u5206\u3002...","topics/sdk/mem/d13x_mem_guide.html@@@\u5185\u5B58\u4F7F\u7528\u6307\u5357@@@\u53EF\u4F7F\u7528\u7684\u5185\u5B58\u8D44\u6E90\u7684\u79CD\u7C7B\u6BD4\u8F83\u591A\uFF0C\u5305\u62EC SRAM\u3001PSRAM \u548C TCM \u7B49\u3002\u672C\u8282\u5217\u4E3E\u4E86\u4EE5\u4E0B\u5178\u578B\u573A\u666F\u6765\u9610\u8FF0\u53C2\u6570\u914D\u7F6E\u548C\u4F7F\u7528\u65B9\u6CD5\uFF1A SRAM + PSRAM TCM + SRAM + PSRAM SRAM \u5173\u4E8E\u5176\u4ED6\u7EC4\u5408\u573A\u666F\uFF0C\u7528\u6237\u53EF\u4EE5\u53C2\u8003\u672C\u8282\u5185\u5BB9\u7075\u6D3B\u914D\u7F6E\u3002...","topics/sdk/mem/d21x_mem_guide.html@@@\u5185\u5B58\u4F7F\u7528\u6307\u5357@@@\u786C\u4EF6\u4E0A\u4F7F\u7528 DRAM \u4F5C\u4E3A Memory \u4E3B\u8981\u5B58\u50A8\u5355\u5143\uFF0C\u5176\u5178\u578B\u5927\u5C0F\u4E3A 64M/128M\u3002 \u5185\u5B58\u5E03\u5C40 \u9488\u5BF9 DRAM Memory \u8D44\u6E90\uFF0C\u8F6F\u4EF6\u4F1A\u4F7F\u7528\u4EE5\u4E0B\u7B56\u7565\u6765\u8FDB\u884C\u5206\u914D\uFF1A \u9996\u5148\u628A DRAM \u5206\u6210\u4E24\u4E2A\u533A\u57DF\uFF1A DRAM Software Region \u548C DRAM CMA Region \u3002CMA Region \u63D0\u4F9B\u7ED9\u591A\u5A92\u4F53\u6A21\u5757 MPP \u4E13\u7528\uFF0CSoftware Region...","topics/sdk/mem/memory-config-stack-size.html@@@\u6808\u5927\u5C0F\u914D\u7F6E@@@\u4E2D\u65AD\u6808 Luban-Lite \u4E2D\u65AD\u670D\u52A1\u7A0B\u5E8F\u8FD0\u884C\u5728\u72EC\u7ACB\u7684\u6808\u4E2D\uFF0C\u5927\u5C0F\u53EF\u4EE5\u5728 menuconfig \u914D\u7F6E\u754C\u9762\u4E2D\u4FEE\u6539\uFF1A Board options ---> Mem Options ---> ( 4096 ) Interrupt stack siz // \u5927\u5C0F\u4E3A 4k RT-Thread \u7EBF\u7A0B\u6808 Kernel \u4E3A RT-Thread \u65F6\uFF0C\u51E0\u4E2A\u5178\u578B\u7EBF\u7A0B\u7684\u6808\u7A7A\u95F4\u5927\u5C0F\u7684\u914D\u7F6E\uFF1A main \u7EBF\u7A0B\u6808\u5927\u5C0F...","topics/sdk/mem/memory-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5185\u5B58\u6CC4\u6F0F\u95EE\u9898 \u5185\u5B58\u6CC4\u6F0F\u95EE\u9898\u7684\u5B9A\u4F4D\u5206\u4E3A\u4EE5\u4E0B\u4E24\u6B65\uFF1A \u67E5\u770B\u603B\u5185\u5B58\u5927\u5C0F\uFF0C\u786E\u8BA4 Free \u5185\u5B58\u662F\u5426\u4E00\u76F4\u5728\u51CF\u5C0F\uFF1A free memheap pool size max used size available size ---------------- ---------- ------------- -------------- heap_cma 8322232 6005296 3898528 //...","topics/sdk/mem/memory-user-guide.html@@@Memory \u4F7F\u7528\u6307\u5357@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E DRAM Dynamic Random Access Memory \u52A8\u6001\u968F\u673A\u5B58\u53D6\u5B58\u50A8\u5668 SRAM Static Random Access Memory \u9759\u6001\u968F\u673A\u5B58\u53D6\u5B58\u50A8\u5668 PSRAM Pseudo Static Random Access Memory \u4F2A\u9759\u6001\u968F\u673A\u5B58\u53D6\u5B58\u50A8\u5668 CMA Contiguous Memory Allocator...","topics/sdk/mpp/mini_audio_player_config_guide.html@@@\u53C2\u6570\u914D\u7F6E@@@\u97F3\u9891\u64AD\u653E\u5668\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u6309\u5982\u4E0B\u65B9\u5F0F\u914D\u7F6E\uFF1A local packages options---> ArtInChip packages options---> aic-mpp---> [*] Enable player interface and demo...","topics/sdk/mpp/mini_audio_player_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@Recorder \u8C03\u8BD5 \u6A21\u5757\u6BD4\u8F83\u7B80\u5355\uFF0C\u76F4\u63A5\u6253\u5F00\u5B8F _MINI_AUDIO_PLAYER_DEBUG_ \u5373\u53EF\u3002_MINI_AUDIO_PLAYER_DEBUG_ \u4F4D\u4E8E packages/artinchip/mpp/middle_media/mini_audio_player/mini_audio_player.c...","topics/sdk/mpp/mini_audio_player_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u672C\u6A21\u5757\u6E90\u7801\u4F4D\u4E8E packages/artinchip/mpp/middle_media/mini_audio_player \u4E0B,\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B packages |-artinchip |-mpp |-middle-media |-mini_audio_player |-mini_audio_player.h //\u63A5\u53E3 |-mini_audio_player.c //\u63A5\u53E3\u5177\u4F53\u5B9E\u73B0...","topics/sdk/mpp/mini_audio_player_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/mpp/mini_audio_player_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u7528\u4F8B audio_player_demo \u4E3B\u8981\u529F\u80FD\u662F\u64AD\u653E MP3 \u548C WAV \u6587\u4EF6\u3002\u4EE5 audio_player_demo \u4E3A\u4F8B\uFF0C\u8BE6\u7EC6\u6D4B\u8BD5\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u51C6\u5907\u6D4B\u8BD5\u6587\u4EF6\uFF0C\u786E\u4FDD\u6D4B\u8BD5\u6587\u4EF6\u6EE1\u8DB3\u64AD\u653E\u5668\u652F\u6301\u7684\u6587\u4EF6\u683C\u5F0F\u8981\u6C42\u3002 \u5F55\u50CF\u652F\u6301\u7684 mp4 \u5C01\u88C5\uFF0C\u652F\u6301 DVP \u8F93\u5165\u6E90 \u548C \u6587\u4EF6\u8F93\u5165\u6E90\u3002 \u51C6\u5907\u4E00\u5F20 SD \u5361\uFF0C\u5C06\u6D4B\u8BD5\u6587\u4EF6\u590D\u5236\u5230 SD \u5361\u4E0A\u3002 \u6302\u8F7D SD \u5361\u3002 \u63D2\u5165 SD \u5361\u542F\u52A8\uFF0C\u82E5\u542F\u52A8\u540E\u7CFB\u7EDF\u6CA1\u6709\u81EA\u52A8\u6302\u8F7D...","topics/sdk/mpp/mini_audio_player_user_guide.html@@@MPP \u97F3\u9891\u64AD\u653E\u5668\u4F7F\u7528\u6307\u5357@@@Media Processing Platform (MPP) \u97F3\u9891\u64AD\u653E\u5668\u662F\u4E00\u4E2A\u96C6\u6210\u5728\u591A\u5A92\u4F53\u5904\u7406\u5E73\u53F0\u4E2D\u7684\u97F3\u9891\u64AD\u653E\u7CFB\u7EDF\uFF0C\u65E8\u5728\u63D0\u4F9B\u7B80\u5355\u6613\u7528\u7684 API\uFF0C\u5E2E\u52A9\u5F00\u53D1\u8005\u5FEB\u901F\u5B9E\u73B0\u7B80\u6613\u97F3\u9891\u64AD\u653E\u5668\u529F\u80FD\u3002 \u6A21\u5757\u7279\u6027 \u63A7\u5236\u529F\u80FD \u76EE\u524D\u652F\u6301 \uFF1A\u6682\u505C\uFF0C\u64AD\u653E\uFF0C\u97F3\u91CF\u8BBE\u7F6E \u517C\u5BB9\u6027 \u5C01\u88C5\u683C\u5F0F \uFF1A \u652F\u6301 MP3 \u548C WAV...","topics/sdk/mpp/mpp-decode.html@@@MPP Decoder \u8BBE\u8BA1\u53CA\u63A5\u53E3\u8BF4\u660E@@@MPP Decoder \u7531\u4E09\u4E2A\u4E3B\u8981\u6A21\u5757\u7EC4\u6210\uFF1A \u89E3\u7801\u6A21\u5757\uFF08H264\u3001JPEG\u3001PNG \u7B49\uFF09\uFF1A\u8D1F\u8D23\u5C06\u7801\u6D41\u6570\u636E\u89E3\u7801\u6210\u89C6\u9891\u56FE\u50CF \u8F93\u5165\u7801\u6D41\u6570\u636E\u7BA1\u7406\u6A21\u5757\uFF08 Packet manager \uFF09\uFF1A\u8D1F\u8D23\u89C6\u9891\u3001\u56FE\u7247\u7801\u6D41\u6570\u636E\u548C buffer \u7684\u7BA1\u7406 \u663E\u793A\u5E27\u7BA1\u7406\u6A21\u5757\uFF08 Frame manager \uFF09\uFF1A\u8D1F\u8D23\u89E3\u7801\u56FE\u50CF buffer \u7684\u7BA1\u7406 Packet \u7BA1\u7406\u673A\u5236 Packet manager \u8D1F\u8D23\u7BA1\u7406\u7801\u6D41\u6570\u636E\u548C...","topics/sdk/mpp/mpp-decode_2.html@@@MPP Decoder \u8BBE\u8BA1\u53CA\u63A5\u53E3\u8BF4\u660E@@@MPP Decoder \u7531\u4E09\u4E2A\u4E3B\u8981\u6A21\u5757\u7EC4\u6210\uFF1A \u89E3\u7801\u6A21\u5757\uFF08H264\u3001JPEG\u3001PNG \u7B49\uFF09\uFF1A\u8D1F\u8D23\u5C06\u7801\u6D41\u6570\u636E\u89E3\u7801\u6210\u89C6\u9891\u56FE\u50CF \u8F93\u5165\u7801\u6D41\u6570\u636E\u7BA1\u7406\u6A21\u5757\uFF08 Packet manager \uFF09\uFF1A\u8D1F\u8D23\u89C6\u9891\u3001\u56FE\u7247\u7801\u6D41\u6570\u636E\u548C buffer \u7684\u7BA1\u7406 \u663E\u793A\u5E27\u7BA1\u7406\u6A21\u5757\uFF08 Frame manager \uFF09\uFF1A\u8D1F\u8D23\u89E3\u7801\u56FE\u50CF buffer \u7684\u7BA1\u7406 Packet \u7BA1\u7406\u673A\u5236 Packet manager \u8D1F\u8D23\u7BA1\u7406\u7801\u6D41\u6570\u636E\u548C...","topics/sdk/mpp/mpp-heap_interface_intro.html@@@MPP Heap \u63A5\u53E3\u8BF4\u660E@@@Mpp Heap \u8D1F\u8D23\u7BA1\u7406 mpp \u4E2D\u95F4\u4EF6\u72EC\u5360\u7684 CMA \u5185\u5B58\uFF0C\u5E76\u5728 mpp \u4E2D\u95F4\u4EF6\u9700\u8981\u7269\u7406\u5185\u5B58\u65F6\uFF0C\u5C06\u5185\u5B58\u9875\u9762\u5BFC\u51FA\u4E3A DMA-BUF\u3002 mpp heap \u7279\u70B9 \u89E3\u51B3\u5185\u5B58\u788E\u7247\u5316 CMA \u5185\u5B58\u5141\u8BB8\u591A\u5A92\u4F53\u6A21\u5757\u548C\u7CFB\u7EDF\u590D\u7528\uFF0C\u5728\u8FD9\u79CD\u60C5\u51B5\u4E0B\uFF0C\u5185\u5B58\u788E\u7247\u5316\u7684\u60C5\u51B5\u4E0D\u53EF\u907F\u514D\uFF08\u90E8\u5206\u5185\u5B58\u9875\u9762\u53EF\u80FD\u4F1A\u88AB\u7CFB\u7EDF pin \u4F4F\uFF0C\u65E0\u6CD5\u8FC1\u79FB\uFF09\u3002\u800C mpp heap \u7BA1\u7406\u7684\u5185\u5B58\u80FD\u786E\u4FDD\u53EA\u88AB mpp \u4E2D\u95F4\u4EF6\u4F7F\u7528\uFF0C\u907F\u514D\u4E86\u5185\u5B58\u9875\u9762\u88AB pin...","topics/sdk/mpp/mpp-vin-design-interface.html@@@MPP VIN \u8BBE\u8BA1\u53CA\u63A5\u53E3\u8BF4\u660E@@@MPP VIN \u6A21\u5757\u4E3B\u8981\u5B9E\u73B0\u4E24\u4E2A\u529F\u80FD\uFF1A \u5BF9\u4E0A\u5C01\u88C5\u4E86 DVP\u3001Camera \u9A71\u52A8\u7684 ioctl \u63A5\u53E3\uFF08\u5C3D\u91CF\u505A\u5230\u548C Linux MPP VIN \u4FDD\u6301\u4E00\u81F4\uFF09 \u5BF9\u89C6\u9891 Buf \u961F\u5217\u7684\u7BA1\u7406\uFF0C\u5B9E\u73B0\u4E86 DVP \u5E94\u7528\u3001DVP \u9A71\u52A8\u4E4B\u95F4\u7684 Buf \u8F6E\u8F6C\u7BA1\u7406 \u56FE 1 . MPP VIN \u6A21\u5757\u7684\u8F6F\u4EF6\u6846\u67B6 Buf \u961F\u5217\u7BA1\u7406 VIN \u6A21\u5757\u4E2D\u7684\u961F\u5217\u7BA1\u7406\uFF0C\u53C2\u8003\u4E86 Linux \u7684 V4L2 \u6846\u67B6\uFF0C\u901A\u8FC7 struct...","topics/sdk/mpp/mpp-zlib_design_and_interface_intro.html@@@MPP Zlib \u8BBE\u8BA1\u53CA\u63A5\u53E3\u8BF4\u660E@@@MPP zlib \u7684\u529F\u80FD\uFF1A\u5229\u7528\u786C\u4EF6\u52A0\u901F\u89E3\u538B zlib \u6587\u4EF6\u3002 \u63A5\u53E3\u8BBE\u8BA1 mpp_zlib_uncompressed \u8868 1 . \u51FD\u6570\u539F\u578B int mpp_zlib_uncompressed(unsigned char *compressed_data,unsigned int compressed_len\uFF0C unsigned char *uncompressed_data,unsigned int...","topics/sdk/mpp/mpp_config.html@@@MPP \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E MPP \u4F9D\u8D56 VE \u9A71\u52A8\uFF0CMPP Heap \u5185\u5B58\u7BA1\u7406\u6846\u67B6\uFF0C\u8BF7\u5728 MPP \u7F16\u8BD1\u524D\u8FDB\u884C\u914D\u7F6E\u3002 MPP Heap ArtInChip \u5E73\u53F0\u4F7F\u7528 DMA-BUF \u6765\u5B9E\u73B0\u591A\u5A92\u4F53\u6A21\u5757\u95F4\u7684 buffer \u5171\u4EAB\u3002\u5BF9\u4E8E DMA-BUF\uFF0CKernel \u63D0\u4F9B System Heap \u548C CMA Heap \u4E24\u4E2A exporter\u3002 \u524D\u8005\u76F4\u63A5\u7533\u8BF7\u533F\u540D\u9875\u9762\uFF0C\u540E\u8005\u5219\u5728 CMA \u5185\u5B58\u4E2D\u7533\u8BF7\u9875\u9762\u3002 \u867D\u7136\u901A\u8FC7\u8FD9\u4E24\u4E2A...","topics/sdk/mpp/mpp_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E MPP \u4F9D\u8D56 VE \u548C GE \u9A71\u52A8\uFF0C\u8BF7\u5728 MPP \u7F16\u8BD1\u524D\u8FDB\u884C\u914D\u7F6E\u3002 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options---> [*] Using Graphics Engine (GE) [*] Using Video Engine (VE) MPP \u4F7F\u80FD \u5728...","topics/sdk/mpp/mpp_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@MPP \u8C03\u8BD5 MPP \u8C03\u8BD5 log \u7B49\u7EA7\u5206\u4E3A ERROR, WARNING, INFO, DEBUG, VERBOSE\u3002\u901A\u8FC7 LOGL_DEFAULT \u5B9A\u4E49 MPP \u5168\u5C40\u7684 log \u7B49\u7EA7\u3002 \u9ED8\u8BA4 log \u7B49\u7EA7\u4E3A INFO\u3002 \u6E90\u6587\u4EF6\u8DEF\u5F84\uFF1A aic-mpp/base/log.h enum log_level { LOGL_ERROR = 0 , LOGL_WARNING, LOGL_INFO...","topics/sdk/mpp/mpp_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 MPP \u8C03\u8BD5 MPP \u8C03\u8BD5 log \u7B49\u7EA7\u5206\u4E3A ERROR, WARNING, INFO, DEBUG, VERBOSE\u3002\u901A\u8FC7 LOGL_DEFAULT \u5B9A\u4E49 MPP \u5168\u5C40\u7684 log \u7B49\u7EA7\u3002 \u9ED8\u8BA4 log \u7B49\u7EA7\u4E3A ERROR\u3002 \u6E90\u6587\u4EF6\u8DEF\u5F84\uFF1A aic-mpp/mpp/base/include/mpp_log.h enum log_level { MPP_LOG_ERROR = 3...","topics/sdk/mpp/mpp_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u6587\u4EF6\u76EE\u5F55\uFF1A tree . \u251C\u2500\u2500 base // \u516C\u5171\u6A21\u5757\uFF1A\u5305\u62EC\u5185\u5B58\u5206\u914D\u548C\u94FE\u8868\u7B49\u57FA\u7840\u529F\u80FD \u2502 \u251C\u2500\u2500 memory \u251C\u2500\u2500 ge // 2D \u56FE\u5F62\u52A0\u901F\u6A21\u5757 \u251C\u2500\u2500 ve // \u7F16\u89E3\u7801\u5668\u6A21\u5757 | \u251C\u2500\u2500 include // ve \u6A21\u5757\u5934\u6587\u4EF6 \u2502 \u251C\u2500\u2500 common // \u7F16\u89E3\u7801\u5668\u516C\u5171\u7EC4\u4EF6 | \u251C\u2500\u2500 decoder \u2502 \u251C\u2500\u2500 h264 // h.264 \u89E3\u7801\u6A21\u5757 \u2502 \u251C\u2500\u2500 jpeg //...","topics/sdk/mpp/mpp_design_2.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u6587\u4EF6\u76EE\u5F55\uFF1A tree . \u251C\u2500\u2500 base // \u516C\u5171\u6A21\u5757\uFF1A\u5305\u62EC\u5185\u5B58\u5206\u914D\u548C\u94FE\u8868\u7B49\u57FA\u7840\u529F\u80FD \u2502 \u251C\u2500\u2500 memory \u251C\u2500\u2500 ge // 2D \u56FE\u5F62\u52A0\u901F\u6A21\u5757 \u251C\u2500\u2500 ve // \u7F16\u89E3\u7801\u5668\u6A21\u5757 | \u251C\u2500\u2500 include // ve \u6A21\u5757\u5934\u6587\u4EF6 \u2502 \u251C\u2500\u2500 common // \u7F16\u89E3\u7801\u5668\u516C\u5171\u7EC4\u4EF6 | \u251C\u2500\u2500 decoder \u2502 \u251C\u2500\u2500 h264 // h.264 \u89E3\u7801\u6A21\u5757 \u2502 \u251C\u2500\u2500 jpeg //...","topics/sdk/mpp/mpp_encoder_design.html@@@MPP Encoder \u8BBE\u8BA1\u53CA\u63A5\u53E3\u8BF4\u660E@@@MPP Encoder \u76EE\u524D\u53EA\u652F\u6301 JPEG \u56FE\u7247\u7F16\u7801\u3002\u63A5\u53E3\u8BBE\u8BA1\u5982\u4E0B\uFF1A \u8868 1 . mpp_encode_jpeg \u51FD\u6570\u539F\u578B int mpp_encode_jpeg(struct mpp_frame* frame, int quality, int dma_buf_fd, int buf_len, int* len) \u529F\u80FD\u8BF4\u660E \u7F16\u7801\u4E00\u5E27 JPEG \u56FE\u7247 \u53C2\u6570\u5B9A\u4E49 frame: \u5F85\u7F16\u7801\u7684\u539F\u59CB YUV...","topics/sdk/mpp/mpp_encoder_design_2.html@@@MPP Encoder \u8BBE\u8BA1\u53CA\u63A5\u53E3\u8BF4\u660E@@@MPP Encoder \u76EE\u524D\u53EA\u652F\u6301 JPEG \u56FE\u7247\u7F16\u7801\u3002\u63A5\u53E3\u8BBE\u8BA1\u5982\u4E0B\uFF1A \u8868 1 . mpp_encode_jpeg \u51FD\u6570\u539F\u578B int mpp_encode_jpeg(struct mpp_frame* frame, int quality, int dma_buf_fd, int buf_len, int* len) \u529F\u80FD\u8BF4\u660E \u7F16\u7801\u4E00\u5E27 JPEG \u56FE\u7247 \u53C2\u6570\u5B9A\u4E49 frame: \u5F85\u7F16\u7801\u7684\u539F\u59CB YUV...","topics/sdk/mpp/mpp_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u89E3\u7801\u540E\u56FE\u50CF\u82B1\u5C4F \u73B0\u8C61 \u89E3\u7801\u540E\u7684\u56FE\u50CF\u51FA\u73B0\u82B1\u5C4F\u73B0\u8C61\u3002 \u539F\u56E0\u5206\u6790 \u9010\u6B65\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A \u662F\u5426\u6E90\u6587\u4EF6\u672C\u8EAB\u6709\u6570\u636E\u9519\u8BEF\uFF0C\u53EF\u4F7F\u7528 PC \u7AEF\u89C6\u9891\u64AD\u653E\u8F6F\u4EF6\u6216\u56FE\u50CF\u6D4F\u89C8\u5668\u67E5\u770B\uFF0C\u662F\u5426\u6709\u82B1\u5C4F\u73B0\u8C61; \u901A\u8FC7\u4FDD\u5B58\u89E3\u7801\u5E27\u6570\u636E\uFF0C\u5728 PC \u7AEF\u67E5\u770B\u56FE\u50CF\u662F\u5426\u6709\u82B1\u5C4F\u73B0\u8C61\uFF0C\u5982\u679C PC \u7AEF\u67E5\u770B\u56FE\u50CF\u6B63\u5E38\uFF0C\u5219\u9700\u8981\u6392\u67E5\u662F\u5426\u8BBE\u7F6E\u56FE\u50CF\u683C\u5F0F\u9519\u8BEF\uFF0C\u6216\u6392\u67E5 Display \u6A21\u5757\u76F8\u5173\u539F\u56E0\u3002 \u7801\u6D41\u89E3\u6790\u662F\u5426\u6B63\u786E\uFF0C\u76F8\u5173 VE \u5BC4\u5B58\u5668\u4FE1\u606F\u662F\u5426\u914D\u7F6E\u6B63\u786E\uFF0C\u5177\u4F53\u8BF7\u67E5\u770B VE...","topics/sdk/mpp/mpp_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u89E3\u7801\u540E\u56FE\u50CF\u82B1\u5C4F \u73B0\u8C61 \u89E3\u7801\u540E\u7684\u56FE\u50CF\u51FA\u73B0\u82B1\u5C4F\u73B0\u8C61\u3002 \u539F\u56E0\u5206\u6790 \u9010\u6B65\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A \u662F\u5426\u6E90\u6587\u4EF6\u672C\u8EAB\u6709\u6570\u636E\u9519\u8BEF\uFF0C\u53EF\u4F7F\u7528 PC \u7AEF\u89C6\u9891\u64AD\u653E\u8F6F\u4EF6\u6216\u56FE\u50CF\u6D4F\u89C8\u5668\u67E5\u770B\uFF0C\u662F\u5426\u6709\u82B1\u5C4F\u73B0\u8C61; \u901A\u8FC7\u4FDD\u5B58\u89E3\u7801\u5E27\u6570\u636E\uFF0C\u5728 PC \u7AEF\u67E5\u770B\u56FE\u50CF\u662F\u5426\u6709\u82B1\u5C4F\u73B0\u8C61\uFF0C\u5982\u679C PC \u7AEF\u67E5\u770B\u56FE\u50CF\u6B63\u5E38\uFF0C\u5219\u9700\u8981\u6392\u67E5\u662F\u5426\u8BBE\u7F6E\u56FE\u50CF\u683C\u5F0F\u9519\u8BEF\uFF0C\u6216\u6392\u67E5 Display \u6A21\u5757\u76F8\u5173\u539F\u56E0\u3002 \u7801\u6D41\u89E3\u6790\u662F\u5426\u6B63\u786E\uFF0C\u76F8\u5173 VE \u5BC4\u5B58\u5668\u4FE1\u606F\u662F\u5426\u914D\u7F6E\u6B63\u786E\uFF0C\u5177\u4F53\u8BF7\u67E5\u770B VE...","topics/sdk/mpp/mpp_ge_design.html@@@MPP GE \u8BBE\u8BA1\u53CA\u63A5\u53E3\u8BF4\u660E@@@MPP GE \u63A5\u53E3\u8BF4\u660E\u8BF7\u53C2\u8003 MPP \u5BF9 GE \u63A5\u53E3\u7684\u5C01\u88C5 \u3002...","topics/sdk/mpp/mpp_ge_design_lite.html@@@MPP GE \u8BBE\u8BA1\u53CA\u63A5\u53E3\u8BF4\u660E@@@\u7531\u4E8E\u9A71\u52A8\u652F\u6301\u975E\u547D\u4EE4\u961F\u5217\u548C\u547D\u4EE4\u961F\u5217\u4E24\u79CD\u6A21\u5F0F\uFF0C\u5728\u63D0\u4F9B\u7684\u7528\u6237 MPP \u63A5\u53E3\u4E2D\uFF0C\u5BF9\u8C03\u7528\u9A71\u52A8\u7684\u63A5\u53E3\u8FDB\u884C\u4E86\u5C01\u88C5\uFF0C\u4FDD\u6301\u4E86\u7EDF\u4E00\u7684\u8C03\u7528 API\uFF0C \u5EFA\u8BAE\u7528\u6237\u7EDF\u4E00\u4F7F\u7528 MPP \u4E2D\u95F4\u5C42 API\u3002\u5728\u547D\u4EE4\u961F\u5217\u6A21\u5F0F\u4E0B\uFF0Ctask \u4F1A\u5148\u7F13\u5B58\u5728\u7528\u6237\u7684 cmd buffer \u4E2D\uFF0C\u5F53\u8C03\u7528 mpp_ge_emit \u540E\uFF0C \u4F1A\u901A\u8FC7 write \u63A5\u53E3\u628A\u547D\u4EE4\u5199\u5165\u5185\u6838\u7684 ring buffer\u3002 \u56FE 1 . \u5E94\u7528\u8C03\u7528 MPP \u6846\u67B6...","topics/sdk/mpp/mpp_player_config.html@@@MPP \u64AD\u653E\u5668\u914D\u7F6E@@@\u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C \uFF0C\u6309\u5982\u4E0B\u65B9\u5F0F\u914D\u7F6E\uFF1A local packages options---> ArtInChip packages options---> aic-mpp---> [*] Enable player interface and demo...","topics/sdk/mpp/mpp_player_config_2.html@@@MPP \u64AD\u653E\u5668\u914D\u7F6E@@@\u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C \uFF0C\u6309\u5982\u4E0B\u65B9\u5F0F\u914D\u7F6E\uFF1A local packages options---> ArtInChip packages options---> aic-mpp---> [*] Enable player interface and demo...","topics/sdk/mpp/mpp_player_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@Player \u8C03\u8BD5 Player \u548C MPP \u4F7F\u7528\u76F8\u540C\u7684 log \u51FD\u6570\uFF0C\u6253\u5F00 Player \u8C03\u8BD5\uFF0C\u540C\u65F6\u4E5F\u4F1A\u6253\u5F00 MPP \u7684\u8C03\u8BD5\u3002MPP \u8C03\u8BD5 log \u7B49\u7EA7\u5206\u4E3A ERROR, WARNING, INFO, DEBUG, VERBOSE\u3002\u901A\u8FC7 LOGL_DEFAULT \u5B9A\u4E49 MPP \u5168\u5C40\u7684 log \u7B49\u7EA7\u3002 \u9ED8\u8BA4 log \u7B49\u7EA7\u4E3A ERROR\u3002 \u6E90\u6587\u4EF6\u8DEF\u5F84\uFF1A...","topics/sdk/mpp/mpp_player_debug_2.html@@@\u8C03\u8BD5\u6307\u5357@@@Player \u8C03\u8BD5 Player \u548C MPP \u4F7F\u7528\u76F8\u540C\u7684 log \u51FD\u6570\uFF0C\u6253\u5F00 Player \u8C03\u8BD5\uFF0C\u540C\u65F6\u4E5F\u4F1A\u6253\u5F00 MPP \u7684\u8C03\u8BD5\u3002MPP \u8C03\u8BD5 log \u7B49\u7EA7\u5206\u4E3A ERROR, WARNING, INFO, DEBUG, VERBOSE\u3002\u901A\u8FC7 LOGL_DEFAULT \u5B9A\u4E49 MPP \u5168\u5C40\u7684 log \u7B49\u7EA7\u3002 \u9ED8\u8BA4 log \u7B49\u7EA7\u4E3A ERROR\u3002 \u6E90\u6587\u4EF6\u8DEF\u5F84\uFF1A...","topics/sdk/mpp/mpp_player_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u672C\u6A21\u5757\u6E90\u7801\u4F4D\u4E8E source/artinchip/aic-mpp/middle_media \uFF0C\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B aic-mpp |--middle-media |-base | |-inlcude | | |-aic_message.h //\u5B9A\u4E49\u516C\u5171\u6D88\u606F\u63A5\u53E3 | | |-aic_parser.h //\u5B9A\u4E49 parser \u63A5\u53E3 | | |-aic_stream.h //\u5B9A\u4E49 stream \u63A5\u53E3 | |...","topics/sdk/mpp/mpp_player_design_2.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u672C\u6A21\u5757\u6E90\u7801\u4F4D\u4E8E source/artinchip/aic-mpp/middle_media \uFF0C\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B aic-mpp |--middle-media |-base | |-inlcude | | |-aic_message.h //\u5B9A\u4E49\u516C\u5171\u6D88\u606F\u63A5\u53E3 | | |-aic_parser.h //\u5B9A\u4E49 parser \u63A5\u53E3 | | |-aic_stream.h //\u5B9A\u4E49 stream \u63A5\u53E3 | |...","topics/sdk/mpp/mpp_player_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u89C6\u9891\u6587\u4EF6\u64AD\u653E\u5931\u8D25 \u73B0\u8C61 \u547D\u4EE4\u914D\u7F6E\u5B8C\u6210\u540E\uFF0C\u6587\u4EF6\u7CFB\u7EDF\u4E2D\u53EF\u67E5\u770B\u5230\u89C6\u9891\u6587\u4EF6\uFF0C\u4F46\u64AD\u653E\u5931\u8D25\uFF0C\u5982\u4E0B\u56FE\u6240\u793A\uFF1A \u539F\u56E0\u5206\u6790 MSH \u6808\u5927\u5C0F\u4E0D\u8DB3\uFF0C\u5BFC\u81F4\u89C6\u9891\u65E0\u6CD5\u64AD\u653E\u3002 \u89E3\u51B3\u65B9\u6CD5 \u8FDB\u5165 menuconfig \u83DC\u5355\uFF0C\u66F4\u6539\u5982\u4E0B\u914D\u7F6E\uFF1A Rt-Thread options ---> RT-Thread Components ---> [*] MSH: command shell ---> ( 8192 ) The stack...","topics/sdk/mpp/mpp_player_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u89C6\u9891\u6587\u4EF6\u64AD\u653E\u5931\u8D25 \u73B0\u8C61 \u547D\u4EE4\u914D\u7F6E\u5B8C\u6210\u540E\uFF0C\u6587\u4EF6\u7CFB\u7EDF\u4E2D\u53EF\u67E5\u770B\u5230\u89C6\u9891\u6587\u4EF6\uFF0C\u4F46\u64AD\u653E\u5931\u8D25\uFF0C\u5982\u4E0B\u56FE\u6240\u793A\uFF1A \u539F\u56E0\u5206\u6790 MSH \u6808\u5927\u5C0F\u4E0D\u8DB3\uFF0C\u5BFC\u81F4\u89C6\u9891\u65E0\u6CD5\u64AD\u653E\u3002 \u89E3\u51B3\u65B9\u6CD5 \u8FDB\u5165 menuconfig \u83DC\u5355\uFF0C\u66F4\u6539\u5982\u4E0B\u914D\u7F6E\uFF1A Rt-Thread options ---> RT-Thread Components ---> [*] MSH: command shell ---> ( 8192 ) The stack...","topics/sdk/mpp/mpp_player_interface.html@@@MPP Player \u63A5\u53E3\u8BBE\u8BA1@@@\u63A5\u53E3\u8BBE\u8BA1 \u8FD9\u4E00\u5C42\u662F\u5BF9\u5916\u63D0\u4F9B\u7684\u63A5\u53E3\uFF0C\u7528\u6237\u53EA\u4E0E\u8FD9\u4E00\u5C42\u4EA4\u4E92\u5373\u53EF\u3002 \u72B6\u6001\u673A\u8BBE\u8BA1 \u72B6\u6001\u673A\u8BF4\u660E: IDLE \u95F2\u7F6E\u72B6\u6001,\u521A\u521B\u5EFA\u5B8C player \u5904\u4E8E\u6B64\u72B6\u6001,\u6B64\u72B6\u6001\u53EA\u80FD\u901A\u8FC7 aic_player_set_uri \u8F6C\u6362\u4E3A INITIALIZED INITIALIZED \u521D\u59CB\u5316\u5B8C\u6210\u72B6\u6001,\u548C IDLE \u72B6\u6001\u76F8\u6BD4,\u4EC5\u4EC5\u662F\u591A\u4E86\u5A92\u4F53\u6570\u636E\u6E90\u7684\u4FE1\u606F PREPARING \u5728 INITIALIZED \u72B6\u6001\u8C03\u7528\u5F02\u6B65...","topics/sdk/mpp/mpp_player_interface_2.html@@@MPP Player \u63A5\u53E3\u8BBE\u8BA1@@@\u63A5\u53E3\u8BBE\u8BA1 \u8FD9\u4E00\u5C42\u662F\u5BF9\u5916\u63D0\u4F9B\u7684\u63A5\u53E3\uFF0C\u7528\u6237\u53EA\u4E0E\u8FD9\u4E00\u5C42\u4EA4\u4E92\u5373\u53EF\u3002 \u72B6\u6001\u673A\u8BBE\u8BA1 \u72B6\u6001\u673A\u8BF4\u660E: IDLE \u95F2\u7F6E\u72B6\u6001,\u521A\u521B\u5EFA\u5B8C player \u5904\u4E8E\u6B64\u72B6\u6001,\u6B64\u72B6\u6001\u53EA\u80FD\u901A\u8FC7 aic_player_set_uri \u8F6C\u6362\u4E3A INITIALIZED INITIALIZED \u521D\u59CB\u5316\u5B8C\u6210\u72B6\u6001,\u548C IDLE \u72B6\u6001\u76F8\u6BD4,\u4EC5\u4EC5\u662F\u591A\u4E86\u5A92\u4F53\u6570\u636E\u6E90\u7684\u4FE1\u606F PREPARING \u5728 INITIALIZED \u72B6\u6001\u8C03\u7528\u5F02\u6B65...","topics/sdk/mpp/mpp_player_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u7528\u4F8B player_demo \u4E3B\u8981\u529F\u80FD\u662F\u64AD\u653E MP4 \u548C MP3 \u6587\u4EF6\u3002\u4EE5 player_demo \u4E3A\u4F8B\uFF0C\u8BE6\u7EC6\u6D4B\u8BD5\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u51C6\u5907\u6D4B\u8BD5\u6587\u4EF6\uFF0C\u786E\u4FDD\u6D4B\u8BD5\u6587\u4EF6\u6EE1\u8DB3\u64AD\u653E\u5668\u652F\u6301\u7684\u6587\u4EF6\u683C\u5F0F\u8981\u6C42\uFF0C\u5373 MP4 \u5C01\u88C5\uFF0C\u89C6\u9891 H264 \u7F16\u7801\uFF0C\u97F3\u9891 MP3/AAC \u7F16\u7801\u3002 \u5982\u679C\u89C6\u9891\u683C\u5F0F\u4E0D\u7B26\u5408\u8981\u6C42\uFF0C\u9700\u8981\u4F7F\u7528 ffmpeg \uFF08\u5B98\u7F51\u5730\u5740\uFF1A http://ffmpeg.org/ \uFF09\u8FDB\u884C\u8F6C\u7801\u3002 \u8F6C\u7801\u547D\u4EE4\uFF1A \u89C6\u9891\u662F...","topics/sdk/mpp/mpp_player_test_2.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u7528\u4F8B player_demo \u4E3B\u8981\u529F\u80FD\u662F\u64AD\u653E MP4 \u548C MP3 \u6587\u4EF6\u3002\u4EE5 player_demo \u4E3A\u4F8B\uFF0C\u8BE6\u7EC6\u6D4B\u8BD5\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u51C6\u5907\u6D4B\u8BD5\u6587\u4EF6\uFF0C\u786E\u4FDD\u6D4B\u8BD5\u6587\u4EF6\u6EE1\u8DB3\u64AD\u653E\u5668\u652F\u6301\u7684\u6587\u4EF6\u683C\u5F0F\u8981\u6C42\uFF0C\u5373 MP4 \u5C01\u88C5\uFF0C\u89C6\u9891 H264 \u7F16\u7801\uFF0C\u97F3\u9891 MP3/AAC \u7F16\u7801\u3002 \u5982\u679C\u89C6\u9891\u683C\u5F0F\u4E0D\u7B26\u5408\u8981\u6C42\uFF0C\u9700\u8981\u4F7F\u7528 ffmpeg \uFF08\u5B98\u7F51\u5730\u5740\uFF1A http://ffmpeg.org/ \uFF09\u8FDB\u884C\u8F6C\u7801\u3002 \u8F6C\u7801\u547D\u4EE4\uFF1A \u89C6\u9891\u662F...","topics/sdk/mpp/mpp_player_user_guide.html@@@MPP \u64AD\u653E\u5668\u4F7F\u7528\u6307\u5357@@@MPP \u64AD\u653E\u5668\u65E8\u5728\u5411\u7528\u6237\u63D0\u4F9B\u7B80\u5355\u6613\u7528\u7684 API\uFF0C\u5E2E\u52A9\u7528\u6237\u5FEB\u901F\u5B9E\u73B0\u7B80\u6613\u64AD\u653E\u5668\u7684\u529F\u80FD\u3002 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E demuxer_component Demuxer Component \u89E3\u5C01\u88C5\u7EC4\u4EF6 vdec_component VIdeo Decoder Component \u89C6\u9891\u89E3\u7801\u7EC4\u4EF6 video_render_component VIdeo Render Component \u89C6\u9891\u6E32\u67D3\u7EC4\u4EF6...","topics/sdk/mpp/mpp_player_user_guide_2.html@@@MPP \u64AD\u653E\u5668\u4F7F\u7528\u6307\u5357@@@MPP \u64AD\u653E\u5668\u65E8\u5728\u5411\u7528\u6237\u63D0\u4F9B\u7B80\u5355\u6613\u7528\u7684 API\uFF0C\u5E2E\u52A9\u7528\u6237\u5FEB\u901F\u5B9E\u73B0\u7B80\u6613\u64AD\u653E\u5668\u7684\u529F\u80FD\u3002 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E demuxer_component Demuxer Component \u89E3\u5C01\u88C5\u7EC4\u4EF6 vdec_component VIdeo Decoder Component \u89C6\u9891\u89E3\u7801\u7EC4\u4EF6 video_render_component VIdeo Render Component \u89C6\u9891\u6E32\u67D3\u7EC4\u4EF6...","topics/sdk/mpp/mpp_recorder_config.html@@@\u53C2\u6570\u914D\u7F6E@@@MPP \u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u6309\u5982\u4E0B\u65B9\u5F0F\u914D\u7F6E\uFF1A local packages options---> ArtInChip packages options---> aic-mpp---> [*] Enable recorder interface and demo [*] Enable Video Input interface (...","topics/sdk/mpp/mpp_recorder_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@Recorder \u8C03\u8BD5 Recorder \u548C MPP \u4F7F\u7528\u76F8\u540C\u7684 log \u51FD\u6570\uFF0C\u6253\u5F00 Recorder \u8C03\u8BD5\uFF0C\u540C\u65F6\u4E5F\u4F1A\u6253\u5F00 MPP \u7684\u8C03\u8BD5\u3002MPP \u8C03\u8BD5 log \u7B49\u7EA7\u5206\u4E3A ERROR, WARNING, INFO, DEBUG, VERBOSE\u3002\u901A\u8FC7 LOGL_DEFAULT \u5B9A\u4E49 MPP \u5168\u5C40\u7684 log \u7B49\u7EA7\u3002 \u9ED8\u8BA4 log \u7B49\u7EA7\u4E3A ERROR\u3002...","topics/sdk/mpp/mpp_recorder_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u672C\u6A21\u5757\u6E90\u7801\u4F4D\u4E8E source/artinchip/aic-mpp/middle_media \u4E0B\uFF0C\u76EE\u5F55\u7ED3\u6784\u5982\u4E0B aic-mpp |--middle-media |-base | |-inlcude | | |-aic_message.h //\u5B9A\u4E49\u516C\u5171\u6D88\u606F\u63A5\u53E3 | | |-aic_muxer.h //\u5B9A\u4E49 muxer \u63A5\u53E3 | | |-aic_stream.h //\u5B9A\u4E49 stream \u63A5\u53E3...","topics/sdk/mpp/mpp_recorder_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/mpp/mpp_recorder_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u7528\u4F8B recorder_demo \u4E3B\u8981\u529F\u80FD\u662F\u5F55\u5236 MP4 \u6587\u4EF6\u3002\u4EE5 recorder_demo \u4E3A\u4F8B\uFF0C\u8BE6\u7EC6\u6D4B\u8BD5\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u51C6\u5907\u6D4B\u8BD5\u6587\u4EF6\uFF0C\u786E\u4FDD\u6D4B\u8BD5\u6587\u4EF6\u6EE1\u8DB3\u64AD\u653E\u5668\u652F\u6301\u7684\u6587\u4EF6\u683C\u5F0F\u8981\u6C42\u3002 \u5F55\u50CF\u652F\u6301\u7684 mp4 \u5C01\u88C5\uFF0C\u652F\u6301 DVP \u8F93\u5165\u6E90 \u548C \u6587\u4EF6\u8F93\u5165\u6E90\u3002 \u51C6\u5907\u4E00\u5F20 SD \u5361\uFF0C\u5E76\u683C\u5F0F\u5316\u6210 FAT32 \u683C\u5F0F\uFF0C\u5C06\u6D4B\u8BD5\u89C6\u9891\u590D\u5236\u5230 SD \u5361\u4E0A\u3002 \u6D4B\u8BD5\u89C6\u9891\u4E00\u822C\u6BD4\u8F83\u5927\uFF0C\u6240\u4EE5\u9700\u8981\u51C6\u5907\u4E00\u5F20 SD \u5361\u3002 \u6302\u8F7D SD...","topics/sdk/mpp/mpp_recorder_user_guide.html@@@MPP \u5F55\u50CF\u4F7F\u7528\u6307\u5357@@@Media Process Platform (MPP) \u5F55\u50CF\u6A21\u5757\u662F\u4E00\u4E2A\u5A92\u4F53\u5904\u7406\u8F6F\u4EF6\u5E73\u53F0\uFF0C\u901A\u8FC7\u63D0\u4F9B\u7B80\u5355\u6613\u7528\u7684 API\uFF0C\u53EF\u5E2E\u52A9\u5F00\u53D1\u8005\u5FEB\u901F\u5B9E\u73B0\u7B80\u6613\u5F55\u50CF\u529F\u80FD\u3002MPP \u5F55\u50CF\u6A21\u5757\u5E7F\u6CDB\u5E94\u7528\u4E8E\u9700\u8981\u89C6\u9891\u5F55\u5236\u529F\u80FD\u7684\u8BBE\u5907\u6216\u5E94\u7528\u4E2D\uFF0C\u5982\u5B89\u9632\u76D1\u63A7\u3001\u667A\u80FD\u5BB6\u5C45\u3001\u8F66\u8F7D\u7CFB\u7EDF\u7B49\u3002\u5B83\u53EF\u4EE5\u4E0E\u5404\u79CD\u6444\u50CF\u5934\u548C\u5B58\u50A8\u8BBE\u5907\u914D\u5408\u4F7F\u7528\uFF0C\u6EE1\u8DB3\u4E0D\u540C\u573A\u666F\u4E0B\u7684\u5F55\u50CF\u9700\u6C42\u3002 MPP \u5F55\u50CF\u6A21\u5757\u63D0\u4F9B\u7684 API...","topics/sdk/mpp/mpp_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u8F6F\u4EF6\u914D\u7F6E VE \u9A71\u52A8 \uFF1A\u8BE6\u89C1 VE \u914D\u7F6E \u3002 GE \u9A71\u52A8 \uFF1A\u8BE6\u89C1 GE \u914D\u7F6E \u3002 DE \u9A71\u52A8 \uFF1A\u8BE6\u89C1 Display \u914D\u7F6E \u3002 \u8FD0\u884C\u6D4B\u8BD5\u7528\u4F8B mpp_test \uFF1A\u6D4B\u8BD5 mpp_decoder \u63A5\u53E3\uFF0C\u89E3\u7801\u89C6\u9891\u6216\u56FE\u7247\u6587\u4EF6\u5E76\u901A\u8FC7 display \u63A5\u53E3\u663E\u793A\u5728\u5C4F\u5E55\u4E0A\u3002 \u76EE\u524D\u652F\u6301 h264, jpg\uFF0Cpng \u7684\u89E3\u7801\u548C\u663E\u793A\uFF0C\u4F7F\u7528\u65B9\u5F0F\u5982\u4E0B\uFF1A mpp_test -h Usage: mpp_test...","topics/sdk/mpp/mpp_test_2.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u8F6F\u4EF6\u914D\u7F6E VE \u9A71\u52A8 \uFF1A\u8BE6\u89C1 VE \u914D\u7F6E \u3002 GE \u9A71\u52A8 \uFF1A\u8BE6\u89C1 GE \u914D\u7F6E \u3002 DE \u9A71\u52A8 \uFF1A\u8BE6\u89C1 Display \u914D\u7F6E \u3002 \u8FD0\u884C\u6D4B\u8BD5\u7528\u4F8B mpp_test \uFF1A\u6D4B\u8BD5 mpp_decoder \u63A5\u53E3\uFF0C\u89E3\u7801\u89C6\u9891\u6216\u56FE\u7247\u6587\u4EF6\u5E76\u901A\u8FC7 display \u63A5\u53E3\u663E\u793A\u5728\u5C4F\u5E55\u4E0A\u3002 \u76EE\u524D\u652F\u6301 h264, jpg\uFF0Cpng \u7684\u89E3\u7801\u548C\u663E\u793A\uFF0C\u4F7F\u7528\u65B9\u5F0F\u5982\u4E0B\uFF1A mpp_test -h Usage: mpp_test...","topics/sdk/mpp/mpp_user_guide.html@@@MPP \u4F7F\u7528\u6307\u5357@@@Media Process Platform (MPP) \u662F ArtInChip \u81EA\u4E3B\u7814\u53D1\u7684\u901A\u7528\u591A\u5A92\u4F53\u5904\u7406\u8F6F\u4EF6\u5E73\u53F0\uFF0C\u9002\u7528\u4E8E ArtInChip \u82AF\u7247\u7CFB\u5217\u3002\u652F\u6301\u5728 RTOS \u5E73\u53F0\u4E0A\u8FD0\u884C\uFF0C \u5C4F\u853D\u4E86 ArtInChip \u4E0D\u540C\u82AF\u7247\u5E73\u53F0\u591A\u79CD\u591A\u5A92\u4F53\u786C\u4EF6\u6A21\u5757\uFF08VE\u3001GE \u7B49\uFF09\u7248\u672C\u7684\u5DEE\u5F02\uFF0C\u4E3A\u4F7F\u7528\u8005\u63D0\u4F9B\u7B80\u5355\u6613\u7528\u7684\u591A\u5A92\u4F53\u5904\u7406 API\uFF0C\u652F\u6301\u591A\u79CD\u591A\u5A92\u4F53\u89E3\u51B3\u65B9\u6848\u3002 \u76EE\u524D\u652F\u6301\u786C\u4EF6\u6A21\u5757\u5305\u62EC\uFF1A VE\uFF1A\u89C6\u9891\u3001\u56FE\u7247\u7F16\u89E3\u7801\u529F\u80FD...","topics/sdk/mpp/mpp_user_guide_2.html@@@MPP \u4F7F\u7528\u6307\u5357@@@Media Process Platform (MPP) \u662F ArtInChip \u81EA\u4E3B\u7814\u53D1\u7684\u901A\u7528\u591A\u5A92\u4F53\u5904\u7406\u8F6F\u4EF6\u5E73\u53F0\uFF0C\u9002\u7528\u4E8E ArtInChip \u82AF\u7247\u7CFB\u5217\u3002\u652F\u6301\u5728 RTOS \u5E73\u53F0\u4E0A\u8FD0\u884C\uFF0C \u5C4F\u853D\u4E86 ArtInChip \u4E0D\u540C\u82AF\u7247\u5E73\u53F0\u591A\u79CD\u591A\u5A92\u4F53\u786C\u4EF6\u6A21\u5757\uFF08VE\u3001GE \u7B49\uFF09\u7248\u672C\u7684\u5DEE\u5F02\uFF0C\u4E3A\u4F7F\u7528\u8005\u63D0\u4F9B\u7B80\u5355\u6613\u7528\u7684\u591A\u5A92\u4F53\u5904\u7406 API\uFF0C\u652F\u6301\u591A\u79CD\u591A\u5A92\u4F53\u89E3\u51B3\u65B9\u6848\u3002 \u76EE\u524D\u652F\u6301\u786C\u4EF6\u6A21\u5757\u5305\u62EC\uFF1A VE\uFF1A\u89C6\u9891\u3001\u56FE\u7247\u7F16\u89E3\u7801\u529F\u80FD...","topics/sdk/mtop/mtop_config.html@@@MTOP \u914D\u7F6E@@@\u4F7F\u80FD MTOP \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u4F7F\u80FD MTOP\uFF1A Board options ---> [*] Using MTOP...","topics/sdk/mtop/mtop_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/mtop/drv_mtop.c \uFF0CMTOP Driver \u5C42\u5B9E\u73B0 bsp/artinchip/include/drv/drv_mtop.h \uFF0CMTOP Drive \u5C42\u5934\u6587\u4EF6 bsp/artinchip/hal/mtop/hal_mtop.c \uFF0CMTOP HAL \u5C42\u5B9E\u73B0...","topics/sdk/mtop/mtop_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/mtop/mtop_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u6D4B\u8BD5\u677F PC\uFF1A\u7528\u4E8E\u548C\u6D4B\u8BD5\u677F\u4EA4\u4E92 \u4E32\u53E3\u7EBF\uFF1A\u8FDE\u63A5\u6D4B\u8BD5\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u8F6F\u4EF6 PC \u7AEF\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6 MTOP \u6D4B\u8BD5\u5DE5\u5177 \u914D\u7F6E\u6D4B\u8BD5\u5DE5\u5177 \u8FDB\u5165\u9A71\u52A8\u9009\u9879\uFF0C\u5728\u5185\u6838\u914D\u7F6E\u83DC\u5355\u4E2D\uFF0C\u627E\u5230 Drivers options \u3002MTOP \u6D4B\u8BD5\u5DE5\u5177\u53EF\u4EE5\u6309\u4EE5\u4E0B\u914D\u7F6E\u6253\u5F00\uFF1A Drivers options ---> Drivers examples ---> [*] Enable mtop driver test...","topics/sdk/mtop/mtop_user_guide.html@@@MTOP \u4F7F\u7528\u6307\u5357@@@Memory top (MTOP) \u662F\u4E00\u4E2A\u7528\u4E8E\u7CFB\u7EDF\u603B\u7EBF\u7AEF\u53E3\u5E26\u5BBD\u76D1\u63A7\u7684\u5DE5\u5177\uFF0C\u53EF\u4EE5\u5E2E\u52A9\u7528\u6237\u5B9E\u65F6\u76D1\u6D4B\u548C\u5206\u6790\u7CFB\u7EDF\u603B\u7EBF\u4E0A\u7684\u6570\u636E\u4F20\u8F93\u60C5\u51B5\uFF0C\u4EE5\u4FBF\u66F4\u597D\u5730\u7BA1\u7406\u548C\u4F18\u5316\u7CFB\u7EDF\u6027\u80FD\u3002 \u8868 1 . \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E MTOP Memory top \u5E26\u5BBD\u68C0\u6D4B\u5668 \u56FE 1 . MTOP \u539F\u7406\u6846\u56FE \u8BE5\u6A21\u5757\u7684\u57FA\u672C\u7279\u6027\uFF1A \u652F\u6301\u81EA\u52A8\u5FAA\u73AF\u6A21\u5F0F\u548C\u624B\u52A8\u89E6\u53D1\u6A21\u5F0F \u5FAA\u73AF\u7D2F\u8BA1\u5E26\u5BBD\u6570\u636E\uFF0C\u5FAA\u73AF\u5468\u671F\u6700\u5927\u4E3A 2 32 \u4E2A APB \u65F6\u949F\u5468\u671F 4 \u7EC4 AXI...","topics/sdk/ota/ota__sys_intro.html@@@OTA \u7CFB\u7EDF\u7ED3\u6784@@@Luban-Lite OTA \u4F7F\u7528 A/B \u7CFB\u7EDF\u5206\u533A\u65B9\u5F0F\uFF0C\u5728 Flash \u4E0A\u4FDD\u5B58\u524D\u540E\u4E24\u4E2A\u7248\u672C\u7684\u7CFB\u7EDF\u7A0B\u5E8F\uFF0C\u5E76\u5C06\u6BCF\u4E2A\u7248\u672C\u4FDD\u5B58\u5728\u6307\u5B9A\u7684\u5206\u533A\u4E2D\uFF0C\u901A\u8FC7\u73AF\u5883\u53D8\u91CF\u6307\u5BFC\u5347\u7EA7\u548C\u542F\u52A8\u3002 Luban-Lite OTA \u7CFB\u7EDF\u65B9\u6848\u7EC4\u6210\u7ED3\u6784\u5982\u4E0B\u6240\u793A\uFF1A \u7F51\u7EDC OTA APP \u7A0B\u5E8F\u5347\u7EA7 \u4ECE\u670D\u52A1\u5668\u4E0A\u4E0B\u8F7D OTA \u5347\u7EA7\u5305\uFF0C\u57FA\u4E8E\u7B2C\u4E09\u65B9\u5E93 ota-downloader \u5B9E\u73B0\uFF0C\u91C7\u7528\u5206\u7247\u4E0B\u8F7D\u673A\u5236\uFF0C\u4E0B\u8F7D\u4E00\u90E8\u5206\u7A0B\u5E8F\uFF0C\u7ED9\u76EE\u6807\u5206\u533A\u5347\u7EA7\u4E00\u90E8\u5206\u7A0B\u5E8F\u3002...","topics/sdk/ota/ota_configure.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9075\u7167\u4EE5\u4E0B\u6D41\u7A0B\uFF0C\u914D\u7F6E Luban-Lite OTA \u65B9\u6848\uFF1A \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \u547D\u4EE4\uFF0C\u8FDB\u5165 menuconfig \u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u4F7F\u80FD aic-ota \u914D\u7F6E\uFF0C\u81EA\u52A8\u4F7F\u80FD aic-env \u76F8\u5173\u914D\u7F6E\u3002 Local packages options ---> ArtInChip packages options ---> [*] aic-env...","topics/sdk/ota/ota_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/ota/ota_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\u4F7F\u80FD OTA \u8C03\u8BD5\uFF1A Local packages options ---> ArtInChip packages options ---> [*] aic-ota ---> [*] Enable OTA downloader debug...","topics/sdk/ota/ota_design.html@@@Luban OTA \u5347\u7EA7\u5305\u5236\u4F5C\u8FC7\u7A0B@@@OTA \u5347\u7EA7\u5305\u5305\u542B\u4E0B\u5217\u6587\u4EF6\uFF1A OTA \u5347\u7EA7\u5305\u914D\u7F6E\u6587\u4EF6\uFF1Asw-images.cfg OTA \u7B56\u7565\u63CF\u8FF0\u6587\u4EF6: sw-description OTA \u5347\u7EA7\u5305\u751F\u6210\u5DE5\u5177 swupdate_pack_swu OTA \u5347\u7EA7\u5305\u914D\u7F6E\u6587\u4EF6\uFF1A sw-images.cfg Luban \u63D0\u4F9B sw-images.cfg \u6587\u4EF6 \uFF0C\u7528\u4E8E\u6307\u793A\u4F1A\u88AB\u6253\u5305\u8FDB OTA \u5347\u7EA7\u5305\u7684\u6587\u4EF6\u3002 sw-images.cfg \u6587\u4EF6\u8DEF\u5F84\u4E3A...","topics/sdk/ota/ota_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@OTA \u6587\u4EF6\u7ED3\u6784 OTA \u6E90\u7801\u4F4D\u4E8E Luban-Lite \u6839\u76EE\u5F55\u4E2D\u7684 packages/artinchip/ota/ \u6587\u4EF6\u5939 \uFF0C\u6587\u4EF6\u7ED3\u6784\u5982\u4E0B: \u251C\u2500\u2500 absystem.c # \u6587\u4EF6\u7CFB\u7EDF\u6302\u8F7D\u6E90\u6587\u4EF6 \u251C\u2500\u2500 absystem.h \u251C\u2500\u2500 burn.c # FLASH \u56FA\u5316\u63A5\u53E3\u6E90\u6587\u4EF6 \u251C\u2500\u2500 burn.h \u251C\u2500\u2500 ota.c # OTA \u63A5\u53E3\u6E90\u6587\u4EF6 \u251C\u2500\u2500 ota.h \u2514\u2500\u2500 test_ota.c #...","topics/sdk/ota/ota_emmc_config_guide.html@@@eMMC OTA \u53C2\u6570\u914D\u7F6E@@@eMMC OTA \u4E3B\u8981\u6D89\u53CA\u4EE5\u4E0B\u53C2\u6570\u914D\u7F6E\uFF0C\u4EE5 d211_demo \u7684\u914D\u7F6E\u6D41\u7A0B\u4E3A\u4F8B\uFF1A \u4E3B\u7CFB\u7EDF \uFF1A\u914D\u7F6E\u6587\u4EF6 d211_demo_defconfig \u3002 1. target/d211/demo/image_cfg.json //\u5206\u533A\u914D\u7F6E\u548C\u70E7\u5F55 2. target/d211/common/env.txt //U-Boot \u73AF\u5883\u53D8\u91CF 3...","topics/sdk/ota/ota_emmc_test_guide.html@@@eMMC \u5E73\u53F0\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 HTTP \u6216 FTP \u670D\u52A1\u5668\uFF0C\u7F51\u7EDC\u5347\u7EA7\u65B9\u5F0F\u9700\u8981\u4F7F\u7528 FTP \u670D\u52A1\u5668\u7A97\u53E3\u5982\u4E0B\u6240\u793A\uFF1A \u6CE8\uFF1A \u7F16\u8BD1\u4E24\u4EFD\u4EFD OTA \u5347\u7EA7\u5305\uFF08Kernel \u548C RootFS \u4E0D\u540C\uFF09\uFF0C\u6D4B\u8BD5\u5347\u7EA7\u662F\u5426\u6210\u529F\u3002 \u7F16\u8BD1 OTA \u5347\u7EA7\u5305 \u6267\u884C lunch d211_demo \u547D\u4EE4\u8FDB\u5165\u4E3B\u7CFB\u7EDF\uFF0C\u6267\u884C m \u547D\u4EE4\u7F16\u8BD1\u6574\u4E2A\u4E3B\u7CFB\u7EDF\uFF0C\u83B7\u5F97 Luban \u955C\u50CF OTA...","topics/sdk/ota/ota_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5347\u7EA7\u8FC7\u7A0B\u4E2D\u65AD\u7535\uFF0C\u5982\u4F55\u7EE7\u7EED\u5347\u7EA7 \u73B0\u8C61 \u4E3B\u7CFB\u7EDF\u5347\u7EA7\u7A0B\u5E8F\u8FC7\u7A0B\u4E2D\u65AD\u7535\uFF0C\u8BBE\u5907\u91CD\u542F\u540E\u672A\u7EE7\u7EED\u8FDB\u884C\u5347\u7EA7\u3002Recovery \u7CFB\u7EDF\u5347\u7EA7\u7A0B\u5E8F\u8FC7\u7A0B\u4E2D\u65AD\u7535\uFF0C\u8BBE\u5907\u91CD\u542F\u540E\u80FD\u7EE7\u7EED\u8FDB\u884C\u5347\u7EA7\u3002 \u539F\u56E0\u5206\u6790 Recovery \u7CFB\u7EDF\u5347\u7EA7\u7A0B\u5E8F\u8FC7\u7A0B\u4E2D\u65AD\u7535\uFF0C\u8BBE\u5907\u91CD\u542F\u540E\u80FD\u7EE7\u7EED\u8FDB\u884C\u5347\u7EA7\uFF0C\u8FD9\u662F\u56E0\u4E3A\u5F53\u7528\u6237\u6267\u884C\u5347\u7EA7\u811A\u672C\u547D\u4EE4\u540E\uFF0C\u5347\u7EA7\u8FC7\u7A0B\u4FE1\u606F\u4F1A\u88AB\u66F4\u65B0\u4FDD\u5B58\u5728\u73AF\u5883\u53D8\u91CF\u91CC\u3002 Recovery \u7CFB\u7EDF\u5347\u7EA7\u4E3B\u7CFB\u7EDF\u7A0B\u5E8F\u8FC7\u7A0B\u4E2D\u65AD\u7535\uFF0C\u7A0B\u5E8F\u9ED8\u8BA4\u6267\u884C...","topics/sdk/ota/ota_faq_lite.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5982\u4F55\u5236\u4F5C OTA \u5347\u7EA7\u5305\uFF1F \u5982\u4F55\u88C1\u526A\u5206\u533A\uFF1F \u526A\u88C1\u5206\u533A \u662F\u6307\u901A\u8FC7\u4FEE\u6539 image_cfg.json \u6587\u4EF6\u8FDB\u884C\u5206\u533A\u8C03\u6574\u3002 \u6839\u636E\u5B9E\u9645 OTA \u9700\u6C42\u88C1\u526A\u5206\u533A\uFF0C\u4F8B\u5982\u53EA\u9700\u5347\u7EA7 OS\uFF0C\u5219\u53EF\u4EE5\u5220\u9664 RODATA \u4E0E DATA \u7684\u5907\u4EFD\u5206\u533A\u3002 "spi-nand" : { // Device, The name should be the same with string in...","topics/sdk/ota/ota_guide.html@@@OTA \u65B9\u6848@@@OTA \u65B9\u6848\u6709\u52A9\u4E8E\u4E3A\u7528\u6237\u53CA\u65F6\u66F4\u65B0\u7CFB\u7EDF\u548C\u5E94\u7528\u7A0B\u5E8F\u3002...","topics/sdk/ota/ota_introduction_lb.html@@@\u6A21\u5757\u4ECB\u7ECD@@@OTA \u662F\u4E00\u79CD\u901A\u8FC7\u7F51\u7EDC\u4ECE\u670D\u52A1\u5668\u4E0A\u4E0B\u8F7D\u66F4\u65B0\u6587\u4EF6\uFF0C\u5BF9\u672C\u5730\u7CFB\u7EDF\u6216\u8005\u6587\u4EF6\u8FDB\u884C\u5347\u7EA7\u7684\u5347\u7EA7\u65B9\u5F0F\uFF0C\u4FBF\u4E8E\u4E3A\u7528\u6237\u53CA\u65F6\u66F4\u65B0\u7CFB\u7EDF\u548C\u5E94\u7528\u7A0B\u5E8F\u3002 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E OTA Over The Air \u8FDC\u7A0B\u5347\u7EA7 Luban OTA \u65B9\u6848\u4ECB\u7ECD Luban OTA \u7CFB\u7EDF\u65B9\u6848\u5177\u6709\u5982\u4E0B\u7279\u70B9\uFF1A \u57FA\u4E8E SWUpdate \u5E73\u53F0\u5B9E\u73B0\uFF0C\u4F7F\u7528 Recovery \u7CFB\u7EDF\u65B9\u6848\u3002 \u7A0B\u5E8F kernel \u548C Rootfs \u79F0\u4E3A\u4E3B\u7CFB\u7EDF\u3002...","topics/sdk/ota/ota_programming.html@@@\u7F16\u7A0B\u6307\u5357@@@\u56FE 1 . OTA \u7F16\u7A0B\u6D41\u7A0B\u56FE OTA \u7F16\u7A0B\u53C2\u8003\u4EE3\u7801 //\u90E8\u5206\u6E90\u7801 int test_ota() { FILE *file; int size; int ret; //update file ota.cpio is placed in the sdcard file = fopen( "/sdcard/ota.cpio" , "rb" ); if (file == NULL) { printf(...","topics/sdk/ota/ota_spinand_config_guide.html@@@SPINAND OTA \u53C2\u6570\u914D\u7F6E@@@SPINAND OTA \u4E3B\u8981\u6D89\u53CA\u4EE5\u4E0B\u53C2\u6570\u914D\u7F6E\uFF0C\u4EE5 d211_demo128_nand \u7684\u914D\u7F6E\u6D41\u7A0B\u4E3A\u4F8B\uFF1A \u4E3B\u7CFB\u7EDF \uFF1A\u914D\u7F6E\u6587\u4EF6 d211_demo128_nand_defconfig \u3002 1. target //demo128_nand/image_cfg.json //\u5206\u533A\u914D\u7F6E\u548C\u70E7\u5F55 2. target //common/env.txt //U-Boot \u73AF\u5883\u53D8\u91CF 3. target...","topics/sdk/ota/ota_spinand_test_guide.html@@@SPI NAND \u5E73\u53F0\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F\uFF08\u672C\u6587\u4EE5 d211_demo128_nand \u4E3A\u4F8B\uFF09 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6, \u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 HTTP \u6216 FTP \u670D\u52A1\u5668, \u7F51\u7EDC\u5347\u7EA7\u65B9\u5F0F\u9700\u8981\u4F7F\u7528 FTP \u670D\u52A1\u5668\u7A97\u53E3\u5982\u4E0B\u6240\u793A\uFF1A \u6CE8\uFF1A \u7F16\u8BD1\u4E24\u4EFD OTA \u5347\u7EA7\u5305\uFF08Kernel \u548C RootFS \u4E0D\u540C\uFF09\uFF0C\u6D4B\u8BD5\u5347\u7EA7\u662F\u5426\u6210\u529F\u3002 \u7F16\u8BD1 OTA \u5347\u7EA7\u5305 \u6267\u884C lunch d211_demo128_nand...","topics/sdk/ota/ota_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F TF \u5361 \u7F51\u7EBF\uFF08\u5982\u9700\u6D4B\u8BD5\u7F51\u7EDC OTA \uFF09 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1\u3002 HTTP \u670D\u52A1\u5668\u5DE5\u5177\uFF0C\u7528\u4E8E\u7F51\u7EDC OTA \u6D4B\u8BD5\u3002\u5982\u4E0D\u9700\u6D4B\u8BD5\uFF0C\u53EF\u7565\u8FC7\u3002 \u6D4B\u8BD5\u6D41\u7A0B \u8BE6\u7EC6\u6D41\u7A0B\u5982\u4E0B \u6253\u5F00 OTA \u76F8\u5173\u914D\u7F6E\u540E\uFF0C\u4FDD\u5B58\u9000\u51FA\u3002 \u6CE8\uFF1A \u6309\u7167 \u53C2\u6570\u914D\u7F6E \u6D41\u7A0B\u53EF\u6253\u5F00 OTA \u76F8\u5173\u914D\u7F6E\u3002 \u91CD\u65B0\u7F16\u8BD1\u548C\u70E7\u5F55\u955C\u50CF\u3002 \u4EE5\u4E0B\u4E3A\u4E00\u4E2A\u5236\u4F5C CPIO...","topics/sdk/peripheral/ctp-drive-migrate-demo.html@@@\u9A71\u52A8\u6587\u4EF6\u79FB\u690D\u89E3\u6790@@@\u672C\u8282\u63CF\u8FF0\u4E86 GT911 \u89E6\u6478\u5C4F\u9A71\u52A8\u7684\u521D\u59CB\u5316\u548C\u914D\u7F6E\u793A\u4F8B\uFF0C\u5305\u62EC I2C \u901A\u4FE1\u3001GPIO \u5F15\u811A\u914D\u7F6E\u4EE5\u53CA\u89E6\u6478\u4E8B\u4EF6\u7684\u5904\u7406\u3002 \u4E3B\u8981\u529F\u80FD\u6A21\u5757\u7B80\u4ECB I2C \u901A\u4FE1\u521D\u59CB\u5316\uFF1A gt911_client.bus \u83B7\u53D6 I2C \u603B\u7EBF\u8BBE\u5907\u3002 \u6253\u5F00 I2C \u603B\u7EBF\u8BBE\u5907\uFF0C\u5E76\u8BBE\u7F6E\u4ECE\u673A\u5730\u5740\u3002 GPIO \u5F15\u811A\u914D\u7F6E\uFF1A \u4F7F\u7528 drv_pin_get \u51FD\u6570\u83B7\u53D6\u590D\u4F4D\u5F15\u811A\u548C\u4E2D\u65AD\u5F15\u811A\u3002 \u914D\u7F6E\u590D\u4F4D\u5F15\u811A\u548C\u4E2D\u65AD\u5F15\u811A\u4E3A\u8F93\u5165\u6A21\u5F0F\uFF0C\u5E76\u8BBE\u7F6E\u4E2D\u65AD\u6A21\u5F0F\uFF1A...","topics/sdk/peripheral/keyadc.html@@@\u6309\u952E\u77E9\u9635@@@Luban-Lite \u53EF\u4EE5\u5B9E\u73B0\u6309\u952E\u77E9\u9635\u529F\u80FD\u3002\u77E9\u9635\u952E\u76D8\u662F\u4E00\u79CD\u901A\u8FC7\u884C\u5217\u626B\u63CF\u6280\u672F\u6765\u68C0\u6D4B\u591A\u4E2A\u6309\u952E\u72B6\u6001\u7684\u8F93\u5165\u8BBE\u5907\uFF0C\u5E7F\u6CDB\u5E94\u7528\u4E8E\u9700\u8981\u5927\u91CF\u6309\u952E\u8F93\u5165\u7684\u573A\u666F\uFF0C\u5982\u8BA1\u7B97\u5668\u3001\u9065\u63A7\u5668\u3001\u6E38\u620F\u63A7\u5236\u5668\u7B49\u3002\u5B83\u80FD\u6709\u6548\u8282\u7701 I/O \u8D44\u6E90\uFF0C\u540C\u65F6\u63D0\u4F9B\u7075\u6D3B\u7684\u6309\u952E\u5E03\u5C40\u65B9\u5F0F\u3002 \u5982\u9700\u5B9E\u73B0\u6309\u952E\u77E9\u9635\u529F\u80FD\uFF0C\u53EF\u6267\u884C\u4EE5\u4E0B\u64CD\u4F5C\u6D41\u7A0B\u3002 \u914D\u7F6E GPAI \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig...","topics/sdk/peripheral/peripheral-intro.html@@@\u5916\u8BBE\u79FB\u690D@@@CTP\u3001U \u76D8\u3001SD \u5361\u3001\u6709\u7EBF\u548C\u65E0\u7EBF\u7F51\u7EDC\u7B49\u5916\u8BBE\u7684\u4ECB\u7ECD\u548C\u4F7F\u7528\u8BF4\u660E\u3002...","topics/sdk/peripheral/touch-configure.html@@@\u6D4B\u8BD5\u6307\u5357@@@Luban-Lite \u53EF\u4EE5\u652F\u6301 CTP \u548C RTP \u4E24\u79CD\u89E6\u6478\u5C4F\u3002\u672C\u8282\u8BE6\u7EC6\u4ECB\u7ECD\u4E86 CTP \u5C4F\u5E55\u7684\u8BE6\u7EC6\u914D\u7F6E\u6D41\u7A0B\u3002 \u4F7F\u7528 scons --menuconfig \u547D\u4EE4\uFF0C\u8FDB\u5165\u914D\u7F6E\u9875\u9762\uFF0C\u5B8C\u6210\u4E0B\u5217\u6240\u6709\u914D\u7F6E\uFF1A Board options ---> [*] Using I2c3 I2c3 Parameter ---> [ ] Using I2C3 10 -bit Addr( default 7 -bit addr)...","topics/sdk/peripheral/touch-drive-examples.html@@@\u6838\u5FC3\u51FD\u6570\u53C2\u8003\u793A\u4F8B@@@\u5199\u5BC4\u5B58\u5668\u51FD\u6570\uFF1A\u7528\u4E8E\u5411 gt911 \u53D1\u9001\u63A7\u5236\u547D\u4EE4\u6216\u6570\u636E static rt_err_t gt911_write_reg( struct rt_i2c_client *dev, rt_uint8_t *data, rt_uint8_t len) { struct rt_i2c_msg msgs; msgs.addr = dev->client_addr; //CTP \u4ECE\u673A\u5730\u5740 msgs.flags =...","topics/sdk/peripheral/touch-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u4F7F\u7528 i2c-tools \u626B\u63CF\u4E0D\u5230\u4EFB\u4F55\u4ECE\u673A\u5730\u5740 \u901A\u8FC7\u4E0B\u5217\u65B9\u5F0F\uFF0C\u68C0\u67E5\u786C\u4EF6\uFF1A \u68C0\u67E5 I2C \u7684 SDA SCL \u662F\u5426\u4E0A\u62C9\u5230 3.3 V\uFF0CI2C \u7A7A\u95F2\u65F6\u662F\u5426\u4E3A\u9AD8\u7535\u5E73\uFF08\u63A8\u8350\u4E0A\u62C9\u7535\u963B 4.7 K\u03A9\uFF09\u3002 \u68C0\u67E5 I2C \u7684\u5F15\u811A\u590D\u7528\uFF0C\u67E5\u770B\u662F\u5426\u6709\u5F15\u811A\u51B2\u7A81\u3002 \u68C0\u67E5\u786C\u4EF6\u8FDE\u63A5\u662F\u5426\u6B63\u5E38\uFF0CSDA SCL \u662F\u5426\u5BF9\u5E94\u8FDE\u63A5\u3002 \u89E6\u6478\u4E0D\u6B63\u5E38 \u89E6\u6478\u4E0D\u6B63\u5E38\u4E00\u822C\u4F1A\u6709\u4EE5\u4E0B\u4E24\u79CD\u60C5\u51B5\uFF1A UI \u54CD\u5E94\u4F4D\u7F6E\u548C\u89E6\u6478\u70B9\u4F4D\u7F6E\u4E0D\u5BF9\u5E94 \u89E6\u6478\u6CA1\u6709\u4EFB\u4F55\u53CD\u5E94...","topics/sdk/peripheral/touch-integrate-gt911-with-lvgl.html@@@CTP \u4E0E LVGL \u96C6\u6210@@@\u5173\u4E8E\u6B64\u4EFB\u52A1 \u672C\u8282\u8BE6\u7EC6\u4ECB\u7ECD\u5982\u4F55\u5C06\u89E6\u63A7\u5C4F\u4E0E ArtInChip \u7684 LVGL \u56FE\u5F62\u5E93\u5BF9\u63A5\uFF0C\u786E\u4FDD\u5728 Luban-Lite \u5E73\u53F0\u4E0A\u987A\u5229\u8FD0\u884C\u5E76\u9A8C\u8BC1\u89E6\u63A7\u529F\u80FD\u3002 \u4EE5 gt911 \u7535\u5BB9\u5F0F\u89E6\u63A7\u5C4F\u4E3A\u4F8B\uFF0C\u8BE6\u7EC6\u64CD\u4F5C\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u8FC7\u7A0B \u66FF\u6362\u89E6\u63A7\u5C4F\u9A71\u52A8\uFF0C\u4FEE\u6539\u9A71\u52A8\u8C03\u7528\uFF0C\u5728 packages/artinchip/lvgl-ui/lv_port_disp.c \u7684 lv_port_disp_init()...","topics/sdk/peripheral/touch-migrate-ctp-process.html@@@\u65B0\u5EFA CTP \u9A71\u52A8@@@\u6DFB\u52A0\u7F16\u8BD1\u8DEF\u5F84 \u3002 \u5728 bsp/peripheral/touch/SConscript \u6587\u4EF6\u4E2D\u6DFB\u52A0\u7F16\u8BD1\u8DEF\u5F84\uFF1A if GetDepend( 'AIC_TOUCH_PANEL_GT911' ): CPPPATH.append(cwd + '/gt911/inc' ) src += Glob( 'gt911/src/*.c' ) \u6DFB\u52A0 menuconfig \u8BBE\u5907\u914D\u7F6E \u3002 \u5728...","topics/sdk/peripheral/touch-obtain-key-info.html@@@\u83B7\u53D6\u548C\u914D\u7F6E IC \u5173\u952E\u4FE1\u606F@@@\u6267\u884C CTP \u79FB\u690D\u6D41\u7A0B\u4E4B\u524D\uFF0C\u987B\u83B7\u53D6\u89E6\u6478 IC \u7684\u5173\u952E\u4FE1\u606F\uFF0C\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\uFF1A \u4ECE\u673A\u8BBE\u5907\u5730\u5740 \u89E6\u6478\u5750\u6807\u4FE1\u606F\uFF0C\u987B\u81F3\u5C11\u5305\u542B\u4E0B\u5217\u4FE1\u606F\uFF1A \u89E6\u6478\u70B9 ID \u53F7 X \u8F74\u5750\u6807\u503C Y \u8F74\u5750\u6807\u503C \u89E6\u6478\u70B9\u4E2A\u6570 \u786C\u4EF6\u4E0A\u7535\u65F6\u5E8F \u4ECE\u673A\u8BBE\u5907\u5730\u5740 \u83B7\u53D6\u89E6\u6478\u82AF\u7247\u7684\u4ECE\u673A\u5730\u5740\u662F\u4E3B\u63A7\u548C\u5916\u8BBE\u901A\u4FE1\u7684\u5173\u952E\u6B65\u9AA4\uFF0C\u5E38\u89C1\u7684\u83B7\u53D6\u4ECE\u673A\u8BBE\u5907\u5730\u5740\u7684\u65B9\u6CD5\u5982\u4E0B\u6240\u793A\uFF1A \u6267\u884C\u786C\u4EF6\u626B\u63CF\uFF1A \u901A\u8FC7 i2c-tools...","topics/sdk/peripheral/touch-revise-existing-gt911-drive.html@@@\u4FEE\u6539\u5DF2\u6709 CTP \u9A71\u52A8@@@\u672C\u8282\u4EE5\u5C06 GT911 \u9A71\u52A8\u4FEE\u6539\u4E3A CST826 \u9A71\u52A8\u4E3A\u4F8B\uFF0C\u63CF\u8FF0\u901A\u8FC7\u4FEE\u6539\u5DF2\u6709 CTP \u9A71\u52A8\u8FDB\u884C CTP \u79FB\u690D\u7684\u8BE6\u7EC6\u6D41\u7A0B\u3002 \u4FEE\u6539\u7F16\u8BD1\u8DEF\u5F84 \u6253\u5F00 bsp/peripheral/touch/SConscript \u6587\u4EF6\uFF0C\u5E76\u5C06 GT911 \u6587\u4EF6\u7F16\u8BD1\u8DEF\u5F84\u63CF\u8FF0\u4FEE\u6539\u4E3A CST826 \u6587\u4EF6\u7F16\u8BD1\u8DEF\u5F84\u3002 \u793A\u4F8B\u5982\u4E0B\uFF1A \u4FEE\u6539\u524D\uFF0CGT911 \u6587\u4EF6\u7F16\u8BD1\u8DEF\u5F84\uFF1A if GetDepend(...","topics/sdk/peripheral/touch.html@@@CTP \u79FB\u690D\u6307\u5357@@@CTP \u79FB\u690D\u662F\u6307\u5C06\u7535\u5BB9\u5F0F\u89E6\u63A7\u5C4F (CTP) \u7684\u9A71\u52A8\u7A0B\u5E8F\u548C\u5E94\u7528\u7A0B\u5E8F\u4ECE\u4E00\u4E2A\u64CD\u4F5C\u7CFB\u7EDF\u79FB\u690D\u5230\u53E6\u4E00\u4E2A\u64CD\u4F5C\u7CFB\u7EDF\u3002\u672C\u8282\u5C06\u901A\u8FC7\u5B9E\u4F8B gt911\uFF0C\u4ECB\u7ECD\u5982\u4F55\u8FDB\u884C CTP \u7684\u79FB\u690D\u3002 \u6CE8\uFF1A \u5173\u4E8E\u5F00\u53D1\u6D4B\u8BD5\u4EE3\u7801\uFF0C\u53EF\u53C2\u8003 bsp/examples/test-ctp/test_gt911.c \u3002 CTP \u79FB\u690D\u53EF\u9009\u4EE5\u4E0B\u4EFB\u610F\u65B9\u5F0F\u4E4B\u4E00\uFF1A \u65B0\u5EFA CTP \u9A71\u52A8 \uFF1A\u4ECE\u96F6\u5F00\u59CB\u914D\u7F6E CTP \u9A71\u52A8\u8FDB\u884C\u79FB\u690D\u3002 \u4FEE\u6539\u5DF2\u6709 CTP \u9A71\u52A8 \uFF1A\u901A\u8FC7\u4FEE\u6539\u5DF2\u6709...","topics/sdk/peripheral/wifi.html@@@\u65E0\u7EBF\u7F51\u7EDC@@@\u672C\u7AE0\u8282\u8BB2\u89E3\u5982\u4F55\u5728 Luban-Lite \u7CFB\u7EDF\u4E2D\u914D\u7F6E SDIO \u63A5\u53E3\u7684\u65E0\u7EBF\u7F51\u7EDC\u3002 \u914D\u7F6E SDMC \u63A5\u53E3\u548C WiFi \u6A21\u7EC4 \u4F7F\u7528 SDMC \u63A5\u53E3\u524D\uFF0C\u9009\u4E2D\u5BF9\u5E94\u7684 SDMC \u63A5\u53E3\uFF0C\u4EE5 D133CBV-QFN88 \u5F00\u53D1\u677F\u4E3A\u4F8B\uFF0C\u4F7F\u7528 scons--meunconfig \u547D\u4EE4\uFF0C\u914D\u7F6E\u4E0B\u5217\u5185\u5BB9\uFF1A Board options [ * ] Using SDMC0 # \u786C\u4EF6\u8FDE\u63A5\u54EA\u4E2A SDMC \u63A5\u53E3\uFF0C\u9009\u62E9\u54EA\u4E2A SDMC[...","topics/sdk/pm/pm_config_guide.html@@@PM \u914D\u7F6E@@@\u4F7F\u80FD PM \u9A71\u52A8 \u5728 RT-Thread \u4E2D\uFF0C\u4F7F\u80FD PM \u9A71\u52A8\u662F\u5B9E\u73B0\u7535\u6E90\u7BA1\u7406\u7684\u7B2C\u4E00\u6B65\u3002 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u4F7F\u80FD PM \u9A71\u52A8\uFF1A Board options ---> [*] Using Power Management \u91CD\u65B0\u7F16\u8BD1...","topics/sdk/pm/pm_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@\u4F7F\u7528 pm_dump \u547D\u4EE4\u53EF\u4EE5\u67E5\u770B PM \u7684\u7535\u6E90\u7BA1\u7406\u6A21\u5F0F\u72B6\u6001\uFF0C\u6BD4\u5982 None Mode \uFF0C Idle Mode \u7B49\uFF1A pm_dump \u7CFB\u7EDF\u8F93\u51FA\u7ED3\u679C\u793A\u4F8B\u5982\u4E0B\uFF1A | Power Management Mode | Counter | Timer | +-----------------------+---------+-------+ | None Mode | 2 | 0 | | Idle Mode...","topics/sdk/pm/pm_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@PM \u9A71\u52A8\u6E90\u7801\u4F4D\u4E8E bsp/artinchip/drv/pm/ \u3002 PM \u6846\u67B6\u548C\u529F\u8017\u6A21\u5F0F Luban-Lite \u7684 PM \u9A71\u52A8\u5B8C\u5168\u9075\u5FAA RT-Thread \u7684 PM \u6846\u67B6\u3002PM \u6846\u67B6\u5C06\u7CFB\u7EDF\u7684\u529F\u8017\u5206\u4E3A\u591A\u4E2A\u7B49\u7EA7\uFF0C\u6BCF\u4E2A\u7B49\u7EA7\u5BF9\u5E94\u4E00\u4E2A\u529F\u8017\u6A21\u5F0F\uFF0C\u5B9E\u73B0\u5BF9\u4E0D\u540C\u529F\u8017\u6A21\u5F0F\u7684\u7BA1\u7406\u3002 \u4EE5\u4E0B\u662F Luban-Lite \u4E2D\u5404\u529F\u8017\u6A21\u5F0F\u7684\u8BE6\u7EC6\u63CF\u8FF0\u53CA\u5176\u5728 Luban-Lite \u4E2D\u7684\u5B9E\u73B0\u529F\u80FD\uFF1A \u8868 1 . \u529F\u80FD\u6A21\u5F0F\u53CA\u4F18\u5148\u7EA7\u63CF\u8FF0...","topics/sdk/pm/pm_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u65E0\u6CD5\u8FDB\u5165\u4F11\u7720 \u65E0\u6CD5\u8FDB\u5165\u4F11\u7720\u7684\u539F\u56E0\u53CA\u53EF\u80FD\u7684\u89E3\u51B3\u65B9\u6CD5\u5982\u4E0B\uFF1A \u68C0\u67E5\u4F11\u7720\u6A21\u5F0F\u7684\u7533\u8BF7\u548C\u91CA\u653E\u662F\u5426\u6709\u6210\u5BF9\u4F7F\u7528\uFF0C\u4E00\u822C\u65E0\u6CD5\u8FDB\u5165\u4F11\u7720\u662F\u56E0\u4E3A\u7533\u8BF7\u7684\u6B21\u6570\u5927\u4E8E\u91CA\u653E\u7684\u6B21\u6570\u3002\u53EF\u4EE5\u901A\u8FC7 pm_dump \u6765\u8F85\u52A9\u8C03\u8BD5\uFF0C\u8BE6\u60C5\u53EF\u67E5\u770B \u8C03\u8BD5\u6307\u5357 \u3002 PM \u6846\u67B6\u5728\u521D\u59CB\u5316\u65F6\uFF0C\u4F1A\u9ED8\u8BA4\u7533\u8BF7 NONE \u6A21\u5F0F\uFF0C\u56E0\u6B64\u5728\u5E94\u7528\u4EE3\u7801\u4E2D\u9700\u8981\u6CE8\u610F\u91CA\u653E NONE \u6A21\u5F0F\u3002\u4F8B\u5982\uFF0C\u5728\u8FDB\u5165\u4F11\u7720\u524D\uFF0C\u786E\u4FDD\u5DF2\u7ECF\u91CA\u653E\u4E86\u9ED8\u8BA4\u7533\u8BF7\u7684 NONE \u6A21\u5F0F\u3002 \u4F11\u7720\u540E\u65E0\u6CD5\u5524\u9192...","topics/sdk/pm/pm_introduction.html@@@Power Management \u4F7F\u7528\u6307\u5357@@@\u4E0D\u540C\u4E8E\u5176\u5B83\u7684\u786C\u4EF6\u6A21\u5757\uFF0C\u7535\u6E90\u7BA1\u7406 (Power Management, PM) \u4EFB\u52A1\u5E76\u4E0D\u76F4\u63A5\u5BF9\u5E94\u67D0\u4E2A\u7279\u5B9A\u7684\u786C\u4EF6\u8BBE\u5907\uFF0C\u800C\u662F\u901A\u8FC7\u7EFC\u5408\u7BA1\u7406\u548C\u4F18\u5316\u5404\u4E2A\u5916\u8BBE\u6A21\u5757\u3001\u7CFB\u7EDF\u603B\u7EBF\u4EE5\u53CA CPU \u7B49\u8D44\u6E90\u7684\u8FD0\u884C\u72B6\u6001\uFF0C\u4EE5\u8FBE\u5230\u964D\u4F4E\u7CFB\u7EDF\u529F\u8017\u7684\u76EE\u7684\u3002PM \u901A\u5E38\u5229\u7528\u8C03\u9891\uFF08\u6539\u53D8\u65F6\u949F\u9891\u7387\uFF09\u548C\u8C03\u538B\uFF08\u6539\u53D8\u4F9B\u7535\u7535\u538B\uFF09\u7B49\u6280\u672F\u7B56\u7565\u5B9E\u73B0\u964D\u4F4E\u529F\u8017\u7684\u76EE\u7684\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E PM Power Management \u529F\u8017\u7BA1\u7406...","topics/sdk/pm/pm_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 ArtInChip demo \u677F \u8F6F\u4EF6 Luban-Lite SDK \u6D4B\u8BD5\u4F11\u7720\u5524\u9192\u529F\u80FD Luban-Lite SDK \u63D0\u4F9B\u4E86\u4E00\u4E2A\u4F11\u7720\u5524\u9192\u7684\u6D4B\u8BD5 demo\uFF0C\u6E90\u7801\u4F4D\u4E8E bsp/examples/test-pm/pm_demo.c \uFF0C\u53EF\u4EE5\u4F5C\u4E3A\u7528\u6237\u7684\u8BBE\u8BA1\u53C2\u8003\u3002 \u8BE5 demo \u4E3B\u8981\u5B9E\u73B0\u4EE5\u4E0B\u529F\u80FD\uFF1A \u6309\u4E0B\u6309\u952E\u8FDB\u5165\u4F11\u7720\uFF0C\u518D\u6309\u4E00\u6B21\u5524\u9192\u7CFB\u7EDF\uFF0C\u4F9D\u6B21\u5FAA\u73AF\u3002\u9ED8\u8BA4\u914D\u7F6E\u4E3A PD6\u3002...","topics/sdk/psadc/psadc-architecture.html@@@\u6A21\u5757\u67B6\u6784@@@IIO \u5DE5\u4E1A I/O\uFF0C\u662F Linux \u5185\u6838\u4E2D\u4E13\u7528\u4E8E\u5904\u7406\u6A21\u6570\u8F6C\u6362\u5668\uFF08ADC\uFF09\u548C\u6570\u6A21\u8F6C\u6362\u5668\uFF08DAC\uFF09\u7684\u5B50\u7CFB\u7EDF\uFF0C\u6700\u521D\u521B\u5EFA\u4E8E 2009 \u5E74\uFF0C\u63D0\u4F9B\u4E86\u7EDF\u4E00\u7684\u6846\u67B6\u6765\u8BBF\u95EE\u548C\u63A7\u5236\u5404\u79CD\u7C7B\u578B\u7684\u4F20\u611F\u5668\uFF0C\u5E76\u4E14\u4E3A\u7528\u6237\u6001\u63D0\u4F9B\u4E86\u6807\u51C6\u7684\u63A5\u53E3\u3002 \u76EE\u524D IIO \u652F\u6301\u7684\u8BBE\u5907\u7C7B\u578B\u5305\u62EC\uFF1AADC/DAC\u3001\u52A0\u901F\u5EA6\u8BA1\u3001\u78C1\u529B\u8BA1\u3001\u9640\u87BA\u4EEA\u3001\u7535\u6D41/\u7535\u538B\u6D4B\u91CF\u82AF\u7247\u3001\u538B\u529B\u4F20\u611F\u5668\u3001\u6E29\u5EA6\u4F20\u611F\u5668\u3001\u6E7F\u5EA6\u4F20\u611F\u5668\u3001\u5149\u4F20\u611F\u5668\u3001\u538B\u529B\u4F20\u611F\u5668\u7B49\u3002 \u6574\u4E2A IIO...","topics/sdk/psadc/psadc-common_issues.html@@@\u5E38\u89C1\u95EE\u9898@@@\u7535\u538B\u8BFB\u53D6\u6CA1\u53D8\u5316 \u73B0\u8C61 \u5F53\u6539\u53D8\u8F93\u5165\u7535\u538B\u65F6\uFF0C\u7535\u538B\u8BFB\u53D6\u6CA1\u53D8\u5316 \u539F\u56E0\u5206\u6790 \u68C0\u67E5\u662F\u5426\u53D1\u751F\u5F15\u811A\u51B2\u7A81 \u68C0\u67E5 menuconfig \u4E2D\uFF0C\u76EE\u6807 PSADCx \u662F\u5426\u6253\u5F00\u914D\u7F6E\u3002\u5177\u4F53\u914D\u7F6E\u65B9\u6CD5\u53EF\u89C1 PSADC \u914D\u7F6E \u3002 \u7535\u538B\u8BFB\u53D6\u503C\u4E0E\u5B9E\u9645\u8F93\u5165\u7535\u538B\u5DEE\u8DDD\u5927\u73B0\u8C61 \u73B0\u8C61 \u5F53\u524D\u6D4B\u8BD5\u4F8B\u7A0B\u4E2D\uFF0C\u7535\u538B\u8BFB\u53D6\u503C\u4E0D\u7B49\u4E8E\u7535\u538B\u8BFB\u53D6\u7535\u538B\u7406\u8BBA\u503C\u3002 \u7535\u538B\u8BFB\u53D6\u7535\u538B\u7406\u8BBA\u503C = \uFF08adc \u503C/4095\uFF09* adc \u57FA\u51C6\u53C2\u8003\u7535\u538B \u539F\u56E0\u5206\u6790 \u68C0\u67E5\u662F\u5426\u6709\u6267\u884C\u6D4B\u8BD5\u4F8B\u7A0B...","topics/sdk/psadc/psadc-data_structure_design.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@struct aic_psadc_dev \u5C5E\u4E8E Driver \u5C42\u5185\u90E8\u4F7F\u7528\u7684\u6570\u636E\u7ED3\u6784\uFF0C \u7BA1\u7406 PSADC \u63A7\u5236\u5668\u7684\u8BBE\u5907\u8D44\u6E90\uFF1A struct aic_psadc_dev { struct rt_adc_device *dev; struct aic_psadc_ch *chan; }; struct aic_psadc_ch \u5C5E\u4E8E HAL \u5C42\u63A5\u53E3\uFF0C \u8BB0\u5F55\u5404\u4E2A\u901A\u9053\u7684\u914D\u7F6E\u4FE1\u606F\uFF1A struct...","topics/sdk/psadc/psadc-design_intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ bsp/artinchip/drv/psadc/drv_psadc.c\uFF0CPSADC Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/psadc/hal_psadc.c\uFF0CPSADC HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_psadc.h\uFF0CPSADC HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6...","topics/sdk/psadc/psadc-interface_design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . aic_psadc_read_raw \u51FD\u6570\u539F\u578B static int aic_psadc_read_raw(struct iio_dev *iodev, struct iio_chan_spec const *chan, int *val, int *val2, long mask) \u529F\u80FD\u8BF4\u660E \u8BFB\u53D6\u4E00\u4E2A ADC \u901A\u9053\u7684\u5F53\u524D\u6570\u636E \u53C2\u6570\u5B9A\u4E49 iodev - \u6307\u5411\u4E00\u4E2A iio \u8BBE\u5907 chan...","topics/sdk/psadc/psadc-key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B PSADC \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u901A\u8FC7 INIT_DEVICE_EXPORT(drv_psadc_init) \u5B8C\u6210\uFF0C\u4F1A\u901A\u8FC7\u8C03\u7528 ADC \u5B50\u7CFB\u7EDF\u7684\u63A5\u53E3 rt_hw_adc_register() \u6CE8\u518C\u4E00\u4E2A ADC \u8BBE\u5907\u3002 PSADC \u63A7\u5236\u5668\u7684\u521D\u59CB\u5316\u8FC7\u7A0B\uFF0C\u4E3B\u8981\u6B65\u9AA4\u6709\uFF1A \u521D\u59CB\u5316\u6A21\u5757\u7684 clk \u6CE8\u518C\u4E2D\u65AD \u521D\u59CB\u5316\u9ED8\u8BA4\u53C2\u6570 \u5411\u8BBE\u5907\u6846\u67B6\u4E2D\u6CE8\u518C ADC \u8BBE\u5907 \u4E2D\u65AD\u5904\u7406\u6D41\u7A0B PSADC...","topics/sdk/psadc/psadc-test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \uFF1A \u786C\u4EF6\uFF1A\u5F00\u53D1\u677F \u8F6F\u4EF6\uFF1A PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 test_psadc \u6D4B\u8BD5\u7A0B\u5E8F test_psadc \u6D4B\u8BD5 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options ---> Drivers examples ---> [*] Enable...","topics/sdk/psadc/psadc_config.html@@@PSADC \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u914D\u7F6E IIO \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C make menuconfig \uFF0C\u8FDB\u5165 menuconfig \u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A ArtInChip Luban SDK Configuration Linux kernel Advance setting Linux Kernel Tools <*>iio \u914D\u7F6E PSADC \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel...","topics/sdk/psadc/psadc_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF08\u914D\u7F6E\u4E2D\u53EA\u6253\u5F00\u4E86 PSADC5\u3001PSADC6 \u548C PSADC7\uFF0C\u4F5C\u4E3A\u793A\u4F8B\uFF09\uFF1A Board options ---> [*] Using PSADC PSADC options ---> obtaning data mode (Polling read...","topics/sdk/psadc/psadc_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00 PSADC \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A Linux Kernel hacking Artinchip Debug [*] PSADC driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5 -O0...","topics/sdk/psadc/psadc_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D PSADC \u9A71\u52A8\u7684 Log \u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 ulog \u63A5\u53E3\u3002 \u67E5\u770B\u901A\u9053\u7684\u914D\u7F6E\u72B6\u6001 \u5728 psadc \u9A71\u52A8\u521D\u59CB\u5316\u6210\u529F\u540E\uFF0C\u4F1A\u5728 shell \u547D\u4EE4\u884C\u4E2D\u6CE8\u518C\u751F\u6210\u4E00\u4E2A psadc \u547D\u4EE4\uFF0C\u7528 -s \u53C2\u6570\u53EF\u4EE5\u6253\u5370\u5404\u901A\u9053\u7684\u914D\u7F6E\u53CA\u72B6\u6001\u4FE1\u606F\uFF1A psadc -s -c 7 In PSADC V1. 00 : Ch Mode Enable 7 S 1...","topics/sdk/psadc/psadc_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/psadc/drv_psadc.c \uFF0CPSADC Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/psadc/hal_psadc.c \uFF0CPSADC HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_psadc.h \uFF0CPSADC HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 PSADC...","topics/sdk/psadc/psadc_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u7535\u538B\u8BFB\u53D6\u6CA1\u53D8\u5316 \u73B0\u8C61 \u5F53\u6539\u53D8\u8F93\u5165\u7535\u538B\u65F6\uFF0C\u7535\u538B\u8BFB\u53D6\u6CA1\u53D8\u5316 \u539F\u56E0\u5206\u6790 \u68C0\u67E5\u662F\u5426\u53D1\u751F\u5F15\u811A\u51B2\u7A81 \u68C0\u67E5 menuconfig \u4E2D\uFF0C\u76EE\u6807 PSADCx \u662F\u5426\u6253\u5F00\u914D\u7F6E\u3002\u5177\u4F53\u914D\u7F6E\u65B9\u6CD5\u53EF\u89C1 \u53C2\u6570\u914D\u7F6E \u3002 \u7535\u538B\u8BFB\u53D6\u503C\u4E0E\u5B9E\u9645\u8F93\u5165\u7535\u538B\u5DEE\u8DDD\u5927 \u73B0\u8C61 \u5F53\u524D\u6D4B\u8BD5\u4F8B\u7A0B\u4E2D\uFF0C\u7535\u538B\u8BFB\u53D6\u503C\u4E0D\u7B49\u4E8E\u7535\u538B\u8BFB\u53D6\u7535\u538B\u7406\u8BBA\u503C\u3002 \u7535\u538B\u8BFB\u53D6\u7535\u538B\u7406\u8BBA\u503C = \uFF08adc \u503C/4095\uFF09* adc \u57FA\u51C6\u53C2\u8003\u7535\u538B \u539F\u56E0\u5206\u6790 \u68C0\u67E5\u662F\u5426\u6709\u6267\u884C\u6D4B\u8BD5\u4F8B\u7A0B...","topics/sdk/psadc/psadc_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 test_psadc \u6D4B\u8BD5\u7A0B\u5E8F \u8F6F\u4EF6\u914D\u7F6E test_psadc \u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options ---> Drivers examples ---> [*]...","topics/sdk/psadc/psadc_user_guide.html@@@PSADC \u4F7F\u7528\u6307\u5357@@@PSADC \u4E3B\u8981\u529F\u80FD\u662F\u5C06\u5916\u90E8\u7684\u6A21\u62DF\u4FE1\u53F7\u8F6C\u6210\u6570\u5B57\u4FE1\u53F7\uFF0C\u7136\u540E\u4E0A\u62A5\u7ED9 CPU\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E ADC Analog Digital Converter \u6A21\u62DF\u6570\u5B57\u8F6C\u6362\u5668 ADCIM ADC Interface Management \u6A21\u6570\u8F6C\u6362\u7BA1\u7406\u6A21\u5757 PSADC PWM System ADC PWM \u63A7\u5236\u5B50\u7CFB\u7EDF\u54CD\u5E94\u6A21\u5757 \u6A21\u5757\u7279\u6027 PSADC \u786C\u4EF6\u6846\u56FE\u5982\u4E0B\uFF1A \u56FE 1...","topics/sdk/psadc/psadc_user_guide_2.html@@@PSADC \u4F7F\u7528\u6307\u5357@@@PSADC \u4E3B\u8981\u529F\u80FD\u662F\u5C06\u5916\u90E8\u7684\u6A21\u62DF\u4FE1\u53F7\u8F6C\u6210\u6570\u5B57\u4FE1\u53F7\uFF0C\u7136\u540E\u4E0A\u62A5\u7ED9 CPU\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E ADC Analog Digital Converter \u6A21\u62DF\u6570\u5B57\u8F6C\u6362\u5668 ADCIM ADC Interface Management \u6A21\u6570\u8F6C\u6362\u7BA1\u7406\u6A21\u5757 PSADC PWM System ADC PWM \u63A7\u5236\u5B50\u7CFB\u7EDF\u54CD\u5E94\u6A21\u5757 \u6A21\u5757\u7279\u6027 PSADC \u786C\u4EF6\u6846\u56FE\u5982\u4E0B\uFF1A \u56FE 1...","topics/sdk/psram/psram-config-guide.html@@@PSRAM \u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u4F7F\u80FD XSPI \u76F8\u5173\u7684\u9A71\u52A8\uFF0C\u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C sourceonestep.sh \u5E76 lunch \u76F8\u5173 bootloader \u914D\u7F6E\u6587\u4EF6\uFF0C \u518D\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\uFF0C\u5728 SDK \u7684\u914D\u7F6E\u754C\u9762\u4E2D\uFF0C\u8FDB\u884C\u4E0B\u5217\u7684\u9009\u62E9\uFF1A Bootloader options ---> Drivers ---> [*] PSRAM...","topics/sdk/psram/psram-design-guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u8868 1 . \u76F8\u5173\u6A21\u5757 \u6E90\u7801\u8DEF\u5F84 PSRAM Driver bsp/artinchip/drv_bare/psram HAL bsp/artinchip/hal/xspi \u6A21\u5757\u67B6\u6784 \u56FE 1 . Luban-Lite XSPI PSRAM \u6846\u56FE ArtInChip \u63D0\u4F9B\u4E86 XSPI HAL \u5C42\uFF0C\u5E76\u4E14\u5B9E\u73B0\u4E86\u5BF9\u63A5 DRV_BARE \u7684\u9A71\u52A8\u5C42\u3002 \u7531\u4E8E XSPI \u4F20\u8F93\u9700\u8981\u4F7F\u7528 SYSCFG \u548C...","topics/sdk/psram/psram-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@LDO \u7535\u538B\u914D\u7F6E\u5931\u6548 \u73B0\u8C61 \u4EE5 D13x PSRAM \u5408\u5C01\u5728\u82AF\u7247\u7684\u65B9\u6848\u4E3A\u4F8B\uFF0C\u914D\u7F6E\u4E14\u5173\u95ED LDO18\uFF0C\u63A2\u6D4B LDO18 \u7535\u538B\uFF0C\u53D1\u73B0 LDO18 \u4ECD\u6709\u7535\u538B\u8F93\u51FA\u3002 \u89E3\u51B3\u65B9\u6CD5 \u786E\u8BA4\u63A2\u6D4B\u70B9\u662F\u5426\u6B63\u786E\u3002 \u786E\u8BA4 bootloader \u548C rtos \u7684 defconfig \u914D\u7F6E\u662F\u5426\u90FD\u7EDF\u4E00\u9009\u62E9\u5173\u95ED LDO18\u3002...","topics/sdk/psram/psram-test-guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u76F8\u5173\u6570\u636E \u8868 1 . \u5E26\u5BBD \u8BF4\u660E 800 MB/s CLK 200 MHz, DDR\uFF0C parallel \u6A21\u5F0F\u4E0B XSPI \u603B\u7EBF\u5E26\u5BBD\u7406\u8BBA\u503C 320 MB/s CLK 200 MHz, DDR\uFF0C parallel \u6A21\u5F0F\u4E0B XSPI \u7684\u534F\u8BAE\u635F\u8017\u6570\u636E\u5E26\u5BBD\u7406\u8BBA\u503C 290 MB/s CLK 200 MHz, DDR\uFF0C parallel \u6A21\u5F0F\u4E0B XSPI \u6709\u6548\u4F20\u8F93\u6570\u636E\u5B9E\u6D4B\u5E26\u5BBD\u503C\uFF0C\u5176\u4E2D\u6709\u534F\u8BAE\u635F\u8017 \u6CE8\uFF1A 290...","topics/sdk/psram/psram-user-guide.html@@@PSRAM \u4F7F\u7528\u6307\u5357@@@\u672C\u6587\u6863\u5B9A\u4E49\u4E86 XSPI \u6A21\u5757\uFF0C\u672C\u6A21\u5757\u7684\u529F\u80FD\u4E3B\u8981\u5B9E\u73B0\u4E86\u5916\u90E8\u5E76\u884C\u603B\u7EBF Xccela\u3001HyperBus\u3001OPI\u30011/2/4/8 \u7EBF SPI\u3002 \u672C\u603B\u7EBF\u6A21\u5757\u53EF\u7528\u4E8E\u4E0E\u5916\u90E8 PSRAM\u3001FLASH \u7B49\u5143\u5668\u4EF6\u5B9E\u73B0\u8FDE\u63A5\u3002 \u672F\u8BED\u5B9A\u4E49 \u8868 1 . \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E XSPI Expanded Serial Peripheral Interface \u6269\u5C55\u7684\u4E32\u884C\u5916\u8BBE\u63A5\u53E3 SPI Serial Peripheral...","topics/sdk/pwm/pwm_config.html@@@PWM \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Linux Device Drivers ---> [*] Pulse-Width Modulation (PWM) Support ---> <*> ArtInChip PWM support <*>...","topics/sdk/pwm/pwm_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u9009\u62E9\u9700\u8981\u7684 pwm/epwm \u901A\u9053\u3002\u4EE5\u4E0B\u4EE5\u6253\u5F00 PWM3 \u4F5C\u4E3A\u793A\u4F8B\uFF1A Board options ---> [ ] Using PWM0 [ ] Using PWM1 [ ] Using PWM2 [*] Using PWM3 Using EPWM ---> [...","topics/sdk/pwm/pwm_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6253\u5F00 PWM \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A Linux Kernel hacking Artinchip Debug [*] PWM driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5 -O0 \u7F16\u8BD1\u3002...","topics/sdk/pwm/pwm_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D PWM \u9A71\u52A8\u7684 Log \u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 aic_log.h \u63A5\u53E3\u3002 \u67E5\u770B\u63A7\u5236\u5668\u72B6\u6001 \u5728 PWM \u9A71\u52A8\u521D\u59CB\u5316\u6210\u529F\u540E\uFF0C\u4F1A\u5728 shell \u547D\u4EE4\u884C\u4E2D\u6CE8\u518C\u751F\u6210\u4E00\u4E2A pwm_status \u547D\u4EE4\uFF08EPWM \u4E3A epwm_status \uFF09\uFF0C\u5176\u4E2D\u6253\u5370\u4E86\u5F53\u524D\u7684\u914D\u7F6E\u53CA\u72B6\u6001\u4FE1\u606F\uFF1A pwm_status In PWM V1. 00 : Module Enable: 1...","topics/sdk/pwm/pwm_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E\uFF1A drivers/pwm/pwm-artinchip.c drivers/pwm/epwm-artinchip.c EPWM \u9A71\u52A8\u8BBE\u8BA1\u4E0E PWM \u9A71\u52A8\u76F8\u540C\uFF0C\u672C\u8282\u4EC5\u4EE5 PWM \u9A71\u52A8\u4E3A\u4F8B\uFF0C\u8BE6\u7EC6\u63CF\u8FF0 PWM \u7684\u8BBE\u8BA1\u601D\u8DEF\u3002 \u6A21\u5757\u67B6\u6784 Linux \u63D0\u4F9B\u4E86\u4E00\u4E2A PWM \u5B50\u7CFB\u7EDF\uFF0C\u4F7F\u5F97\u5728\u7528\u6237\u7A7A\u95F4\u53EF\u4EE5\u901A\u8FC7 sysfs \u8282\u70B9\u6765\u63A7\u5236 Backlight \u80CC\u5149\u3002 \u6574\u4E2A\u8F6F\u4EF6\u6846\u67B6\u5982\u4E0B\u56FE\uFF1A \u56FE 1 . Linux...","topics/sdk/pwm/pwm_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/pwm/drv_pwm.c \uFF0CPWM Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/pwm/hal_pwm.c \uFF0CPWM HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_pwm.h \uFF0CPWM HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6...","topics/sdk/pwm/pwm_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6BCF\u4E2A PWM \u63A7\u5236\u5668\u7684\u4E24\u8DEF\u8F93\u51FA\u4FE1\u53F7\u6709\u4EC0\u4E48\u5173\u7CFB\uFF1F \u6BCF\u4E2A\u63A7\u5236\u5668\u53EF\u4EE5\u63A7\u5236\u4E24\u8DEF\u8F93\u51FA PWM \u4FE1\u53F7\uFF0C\u8FD9\u4E24\u8DEF\u4FE1\u53F7\u4ECE\u8BBE\u8BA1\u4E0A\u6709\u4E09\u4E2A\u7EA6\u675F\u6761\u4EF6\uFF1A \u5171\u7528\u540C\u4E00\u4E2A time-base \u4FE1\u53F7 \uFF0C \u5373\u5171\u7528\u4E00\u8DEF\u8F93\u5165\u65F6\u949F\u4FE1\u53F7\uFF0C\u4E5F\u5171\u7528\u4E86\u4E00\u4E2A\u8BA1\u6570\u5668 \u5171\u7528\u540C\u4E00\u4E2A PWM \u4FE1\u53F7\u9891\u7387 \u914D\u7F6E\u53C2\u6570\u3002 \u5171\u7528\u540C\u4E00\u4E2A \u5360\u7A7A\u6BD4 \u914D\u7F6E\u53C2\u6570\u3002 \u4E0A\u8FF0 \u201CPWM \u4FE1\u53F7\u9891\u7387\u201D \u548C \u201C\u5360\u7A7A\u6BD4\u201D \u7531 PWM \u7684 \u8C03\u7528\u8005\u8FD0\u884C\u65F6\u914D\u7F6E \u3002...","topics/sdk/pwm/pwm_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6BCF\u4E2A PWM \u63A7\u5236\u5668\u7684\u4E24\u8DEF\u8F93\u51FA\u4FE1\u53F7\u6709\u4EC0\u4E48\u5173\u7CFB\uFF1F \u6BCF\u4E2A\u63A7\u5236\u5668\u53EF\u4EE5\u63A7\u5236\u4E24\u8DEF\u8F93\u51FA PWM \u4FE1\u53F7\uFF0C\u8FD9\u4E24\u8DEF\u4FE1\u53F7\u4ECE\u8BBE\u8BA1\u4E0A\u6709\u4E09\u4E2A\u7EA6\u675F\u6761\u4EF6\uFF1A \u5171\u7528\u540C\u4E00\u4E2A time-base \u4FE1\u53F7 \uFF0C \u5373\u5171\u7528\u4E00\u8DEF\u8F93\u5165\u65F6\u949F\u4FE1\u53F7\uFF0C\u4E5F\u5171\u7528\u4E86\u4E00\u4E2A\u8BA1\u6570\u5668 \u5171\u7528\u540C\u4E00\u4E2A PWM \u4FE1\u53F7\u9891\u7387 \u914D\u7F6E\u53C2\u6570\u3002 \u5171\u7528\u540C\u4E00\u4E2A \u5360\u7A7A\u6BD4 \u914D\u7F6E\u53C2\u6570\u3002 \u4E0A\u8FF0 \u201CPWM \u4FE1\u53F7\u9891\u7387\u201D \u548C \u201C\u5360\u7A7A\u6BD4\u201D \u7531 PWM \u7684 \u8C03\u7528\u8005\u8FD0\u884C\u65F6\u914D\u7F6E \u3002...","topics/sdk/pwm/pwm_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883\uFF1A \u786C\u4EF6 \u5F00\u53D1\u677F\uFF0C\u6216 D211 \u7684 FPGA \u677F \u793A\u6CE2\u5668\uFF0C\u7528\u4E8E\u89C2\u5BDF\u8F93\u51FA PWM \u4FE1\u53F7\u7684\u6CE2\u5F62 \u8F6F\u4EF6\uFF1APC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 \u8F6F\u4EF6\u914D\u7F6E \u80CC\u5149\u6D4B\u8BD5\u4E2D\uFF0C\u9700\u8981\u4F9D\u8D56 Backlight \u7684\u529F\u80FD\uFF1A \u5728\u5185\u6838\u4E2D\u6253\u5F00 Backlight \u6A21\u5757\uFF0C\u8BE6\u89C1 \u5185\u6838\u914D\u7F6E \u3002 \u5728 DTS \u4E2D\u914D\u7F6E Backlight \u548C PWMx \u901A\u9053\u7684\u5173\u8054\uFF0C\u8BE6\u89C1 \u80CC\u5149\u63A7\u5236\u914D\u7F6E \u3002 \u80CC\u5149\u6D4B\u8BD5 \u5229\u7528...","topics/sdk/pwm/pwm_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u793A\u6CE2\u5668\uFF0C\u7528\u4E8E\u89C2\u5BDF\u8F93\u51FA PWM \u4FE1\u53F7\u7684\u6CE2\u5F62 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 RT-Thread \u7CFB\u7EDF\u81EA\u5E26\u7684 pwm \u547D\u4EE4\u884C\u5DE5\u5177 \u8F6F\u4EF6\u914D\u7F6E \u6253\u5F00 RT-Thread \u7CFB\u7EDF\u7684 PWM \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\uFF0C\u4F1A\u5728\u542F\u52A8\u65F6\u6CE8\u518C\u751F\u6210 pwm \u547D\u4EE4\u3002 \u52A8\u6001\u914D\u7F6E PWM \u4F7F\u7528 pwm \u547D\u4EE4\u6765\u914D\u7F6E\u67D0\u4E00\u901A\u9053\u7684\u6B65\u9AA4\u5982\u4E0B\u6240\u793A\uFF0C\u4EE5\u901A\u9053 3 \u4E3A\u4F8B\uFF1A \u5217\u793A\u6240\u6709 pwm \u76F8\u5173\u547D\uFF1A...","topics/sdk/pwm/pwm_user_guide.html@@@PWM \u4F7F\u7528\u6307\u5357@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED/\u7F29\u7565\u8BED \u5B9A\u4E49\u53CA\u8BF4\u660E PWM Pulse-Width Modulation\uFF0C\u8109\u51B2\u5BBD\u5EA6\u63A7\u5236\uFF0C\u7B80\u79F0\u8109\u5BBD\u8C03\u5236 EPWM Enhanced Pulse-Width Modulation, \u589E\u5F3A\u578B\u8109\u51B2\u5BBD\u5EA6\u63A7\u5236\uFF08 Luban-Lite \u4E2D EPWM \u529F\u80FD\u4E0E PWM \u76F8\u540C\uFF0C\u5982\u65E0\u7279\u6B8A\u8BF4\u660E\uFF0C\u4E24\u8005\u901A\u7528\uFF09 TBC Time Base Counter\uFF0C\u65F6\u57FA\u8BA1\u6570\u5668\uFF0C\u7528\u4E8E\u4EA7\u751F\u952F\u9F7F\u6CE2 \u5360\u7A7A\u6BD4 PWM...","topics/sdk/pwm/pwm_user_guide_2.html@@@PWM \u4F7F\u7528\u6307\u5357@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED/\u7F29\u7565\u8BED \u5B9A\u4E49\u53CA\u8BF4\u660E PWM Pulse-Width Modulation\uFF0C\u8109\u51B2\u5BBD\u5EA6\u63A7\u5236\uFF0C\u7B80\u79F0\u8109\u5BBD\u8C03\u5236 EPWM Enhanced Pulse-Width Modulation, \u589E\u5F3A\u578B\u8109\u51B2\u5BBD\u5EA6\u63A7\u5236\uFF08 Luban-Lite \u4E2D EPWM \u529F\u80FD\u4E0E PWM \u76F8\u540C\uFF0C\u5982\u65E0\u7279\u6B8A\u8BF4\u660E\uFF0C\u4E24\u8005\u901A\u7528\uFF09 TBC Time Base Counter\uFF0C\u65F6\u57FA\u8BA1\u6570\u5668\uFF0C\u7528\u4E8E\u4EA7\u751F\u952F\u9F7F\u6CE2 \u5360\u7A7A\u6BD4 PWM...","topics/sdk/qep/qep_config.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF08\u914D\u7F6E\u53EA\u6253\u5F00\u4E86 QEP0\uFF0C\u4F5C\u4E3A\u793A\u4F8B\uFF09\uFF1A Board options ---> Using QEP ---> [*] Using QEP0 [ ] Using QEP1 \u5F53\u4F7F\u7528 RT-Thread \u5185\u6838\u7684\u65F6\u5019\uFF0CQEP \u9A71\u52A8\u9700\u8981\u4F9D\u8D56 RT-Thread \u7684...","topics/sdk/qep/qep_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/qep/qep_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/qep/drv_qep.c \uFF0CQEP Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/pwmcs/hal_qep.c \uFF0CPWMCS QEP \u6A21\u5757\u7684 HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_qep.h \uFF0CPWMCS QEP \u6A21\u5757\u7684 HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784...","topics/sdk/qep/qep_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6D4B\u8BD5\u6CE2\u5F62\u4E2A\u6570\u4E0E\u8BBE\u7F6E\u503C\u4E0D\u540C \u73B0\u8C61 \u4F7F\u7528 test_qep \u8FDB\u884C\u6D4B\u8BD5\u65F6\uFF0C\u53D1\u73B0\u793A\u6CE2\u5668\u663E\u793A\u7684\u8109\u51B2\u6570\u4E0E\u914D\u7F6E\u7684\u8109\u51B2\u6570\u6709\u51FA\u5165\u3002 \u539F\u56E0\u5206\u6790 \u5F53\u8109\u51B2\u9891\u7387\u8FC7\u5FEB\u7684\u65F6\u5019\uFF0C\u4F7F\u7528 QEP \u6A21\u5757\u8FDB\u884C\u8BA1\u6570\uFF0C\u53EF\u80FD\u4F1A\u51FA\u73B0\u4E22\u8109\u51B2\u7684\u60C5\u51B5\uFF0C\u5BFC\u81F4\u8109\u51B2\u6570\u4E0D\u5BF9\u3002...","topics/sdk/qep/qep_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u793A\u6CE2\u5668 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Luban-Lite \u81EA\u5E26\u7684 test_qep \u547D\u4EE4\u884C\u5DE5\u5177 \u8F6F\u4EF6\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\u6253\u5F00 test_qep \u547D\u4EE4\u884C\u5DE5\u5177\uFF1A Drivers options ---> Drivers...","topics/sdk/qep/qep_user_guide.html@@@QEP \u4F7F\u7528\u6307\u5357@@@Luban-Lite \u4E2D\u4E3B\u8981\u4F7F\u7528\u4E86 QEP \u6A21\u5757\u7684\u9012\u589E/\u9012\u51CF\u8BA1\u6570\u529F\u80FD\u3002\u5185\u90E8\u4FE1\u53F7 QEP_DIR \u56FA\u5B9A\u9009\u5B9A\u4E3A\u9012\u589E/\u9012\u51CF\u7684\u65B9\u5411\uFF0CQEP_A \u63A5\u5165\u8F93\u5165\u4FE1\u53F7\u3002\u6B64\u5916 QEP_A \u7684\u4FE1\u53F7\u53EF\u4EE5\u914D\u7F6E\u4E3A\u4E0A\u5347\u6CBF\u89E6\u53D1\u4E00\u6B21 QEP_CLK \u6709\u6548\u8FB9\u6CBF\uFF0C\u6216\u4E0A\u4E0B\u6CBF\u5747\u53EF\u89E6\u53D1\u4E00\u6B21\u7684 QEP_CLK \u6709\u6548\u8FB9\u6CBF\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED/\u7F29\u7565\u8BED \u5B9A\u4E49\u53CA\u8BF4\u660E QEP Quadrature Encoder...","topics/sdk/rtc/rtc-common-issues.html@@@\u5E38\u89C1\u95EE\u9898@@@RTC \u65F6\u95F4\u4E22\u5931 \u73B0\u8C61 \u91CD\u542F\u540E\uFF0CRTC \u65F6\u95F4\u53D8\u6210 1970-01-01 00:00:00\u3002 \u539F\u56E0\u5206\u6790 RTC \u9700\u8981\u6301\u7EED\u7684\u4F9B\u7535\uFF0C\u624D\u80FD\u4FDD\u6301\u4F4F\u914D\u7F6E\u7684\u65F6\u95F4\u4FE1\u606F\u3002\u53EF\u4EE5\u6309\u7167\u4EE5\u4E0B\u6D41\u7A0B\u9010\u4E2A\u6392\u67E5\u539F\u56E0\uFF1A \u786E\u8BA4\u7535\u6E90\u7EBF\u662F\u5426\u6709\u65AD\u5F00\u8FC7\u3002 \u786E\u8BA4\u662F\u5426\u5B89\u88C5\u6709\u7535\u6C60\u3002 \u5982\u6709\u5B89\u88C5\u7535\u6C60\uFF0C\u786E\u8BA4\u7535\u6C60\u7684\u7535\u91CF\u662F\u5426\u5145\u8DB3\u3002 RTC \u65F6\u95F4\u6709\u8BEF\u5DEE \u73B0\u8C61 RTC \u6A21\u5757\u7684\u8BBE\u8BA1\u7CBE\u5EA6\u662F 2 \u79D2 / 3 \u5929\uFF0C\u5373\u5728\u957F\u65F6\u95F4\u8FD0\u884C\u540E\uFF0C\u5982\u679C\u8BEF\u5DEE\u8D85\u8FC7\u8FD9\u4E2A\u8303\u56F4\uFF0C\u8BF4\u660E RTC...","topics/sdk/rtc/rtc-common-issues_2.html@@@\u5E38\u89C1\u95EE\u9898@@@RTC \u65F6\u95F4\u4E22\u5931 \u73B0\u8C61 \u91CD\u542F\u540E\uFF0CRTC \u65F6\u95F4\u53D8\u6210 1970-01-01 00:00:00\u3002 \u539F\u56E0\u5206\u6790 RTC \u9700\u8981\u6301\u7EED\u7684\u4F9B\u7535\uFF0C\u624D\u80FD\u4FDD\u6301\u4F4F\u914D\u7F6E\u7684\u65F6\u95F4\u4FE1\u606F\u3002\u53EF\u4EE5\u6309\u7167\u4EE5\u4E0B\u6D41\u7A0B\u9010\u4E2A\u6392\u67E5\u539F\u56E0\uFF1A \u786E\u8BA4\u7535\u6E90\u7EBF\u662F\u5426\u6709\u65AD\u5F00\u8FC7\u3002 \u786E\u8BA4\u662F\u5426\u5B89\u88C5\u6709\u7535\u6C60\u3002 \u5982\u6709\u5B89\u88C5\u7535\u6C60\uFF0C\u786E\u8BA4\u7535\u6C60\u7684\u7535\u91CF\u662F\u5426\u5145\u8DB3\u3002 RTC \u65F6\u95F4\u6709\u8BEF\u5DEE \u73B0\u8C61 RTC \u6A21\u5757\u7684\u8BBE\u8BA1\u7CBE\u5EA6\u662F 2 \u79D2 / 3 \u5929\uFF0C\u5373\u5728\u957F\u65F6\u95F4\u8FD0\u884C\u540E\uFF0C\u5982\u679C\u8BEF\u5DEE\u8D85\u8FC7\u8FD9\u4E2A\u8303\u56F4\uFF0C\u8BF4\u660E RTC...","topics/sdk/rtc/rtc-config-guide-lite.html@@@RTC \u914D\u7F6E@@@\u6253\u5F00 RTC \u9A71\u52A8 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 scons --menuconfig \u5728\u83DC\u5355\u4E2D\u627E\u5230\u5E76\u9009\u62E9 Board options \u540E\uFF0C\u52FE\u9009 Using RTC \u9009\u9879\uFF0C\u5373\u53EF\u542F\u7528 RTC \u9A71\u52A8\u3002 Board options ---> [*] Using RTC \u6CE8\uFF1A \u4E3A\u4E86\u7B80\u5316\u4F7F\u7528\uFF0C Using RTC...","topics/sdk/rtc/rtc-config-guide.html@@@RTC \u914D\u7F6E@@@\u672C\u8282\u4ECB\u7ECD RTC \u7684\u53C2\u6570\u914D\u7F6E\u3002 \u5185\u6838\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\u6253\u5F00 RTC \u9A71\u52A8\uFF1A Linux Device Drivers [*] Real Time Clock [*] ArtInChip Soc RTC \u914D\u7F6E DTS \u53C2\u6570 RTC...","topics/sdk/rtc/rtc-data-structure.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@RTC \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u5982\u4E0B\uFF1A struct aic_rtc_dev\uFF1A \u5C5E\u4E8E HAL \u5C42\u63A5\u53E3\uFF0C \u8BB0\u5F55 RTC \u63A7\u5236\u5668\u7684\u914D\u7F6E\u4FE1\u606F\uFF1A struct aic_rtc_dev { rtc_callback_t callback; u32 clk_rate; u32 clk_drv; u32 alarm_io; u32 cal_fast; s32 cal_val; s32 inited; }...","topics/sdk/rtc/rtc-data-structure_2.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@RTC \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u5982\u4E0B\uFF1A struct aic_rtc_dev\uFF1A \u5C5E\u4E8E HAL \u5C42\u63A5\u53E3\uFF0C \u8BB0\u5F55 RTC \u63A7\u5236\u5668\u7684\u914D\u7F6E\u4FE1\u606F\uFF1A struct aic_rtc_dev { rtc_callback_t callback; u32 clk_rate; u32 clk_drv; u32 alarm_io; u32 cal_fast; s32 cal_val; s32 inited; }...","topics/sdk/rtc/rtc-debug-guide-lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u6253\u5F00\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D RTC \u9A71\u52A8\u7684\u65E5\u5FD7\u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 aic_log.h \u63A5\u53E3\u3002 \u4E3A\u4E86\u66F4\u65B9\u4FBF\u8C03\u8BD5\uFF0C\u53EF\u4EE5\u5355\u72EC\u6253\u5F00 RTC \u6A21\u5757\u7684 DEBUG \u7EA7\u522B\u65E5\u5FD7\uFF08\u5B9E\u9645\u4E0A\u662F\u63D0\u5347 DEBUG \u5230 INFO \u7EA7\u522B\uFF09\uFF0C\u8BE6\u7EC6\u6B65\u9AA4\u5982\u4E0B\uFF1A \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C\u4EE5\u4E0B\u547D\u4EE4\uFF1A scons --menuconfig \u5728\u83DC\u5355\u4E2D\u627E\u5230\u5E76\u9009\u62E9 Drivers options \u540E\uFF0C\u52FE\u9009...","topics/sdk/rtc/rtc-debug-guide.html@@@\u8C03\u8BD5\u6307\u5357@@@\u672C\u8282\u4ECB\u7ECD RTC \u8C03\u8BD5\u6D41\u7A0B\u3002 \u6253\u5F00\u8C03\u8BD5\u5F00\u5173 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00\u8C03\u8BD5\u5F00\u5173\uFF1A Linux Kernel hacking ArtInChip Debug [*] RTC driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5 -O0...","topics/sdk/rtc/rtc-demo.html@@@Demo@@@\u5982\u679C\u8981\u83B7\u53D6 RTC \u65F6\u95F4\uFF0C\u8C03\u7528 RT-Thread \u7684\u6807\u51C6\u65F6\u95F4\u63A5\u53E3\u5373\u53EF\uFF0C\u6BD4\u5982\uFF0C- time() - clock_gettime() - gettimeofday() \u672C Demo \u662F test_alarm \u7684\u6E90\u7801 bsp/examples/test-alarm/test_alarm.c \uFF0C\u5C55\u793A\u4E86\u5728 RT-Thread \u4E2D\uFF0C\u8BBE\u7F6E\u4E00\u4E2A oneshot \u7C7B\u578B\u7684 alarm...","topics/sdk/rtc/rtc-demo_2.html@@@Demo@@@\u5982\u679C\u8981\u83B7\u53D6 RTC \u65F6\u95F4\uFF0C\u8C03\u7528 RT-Thread \u7684\u6807\u51C6\u65F6\u95F4\u63A5\u53E3\u5373\u53EF\uFF0C\u6BD4\u5982\uFF0C- time() - clock_gettime() - gettimeofday() \u672C Demo \u662F test_alarm \u7684\u6E90\u7801 bsp/examples/test-alarm/test_alarm.c \uFF0C\u5C55\u793A\u4E86\u5728 RT-Thread \u4E2D\uFF0C\u8BBE\u7F6E\u4E00\u4E2A oneshot \u7C7B\u578B\u7684 alarm...","topics/sdk/rtc/rtc-design-intro-lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/rtc/drv_rtc.c \uFF0CRTC Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/rtc/hal_rtc.c \uFF0CRTC HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_rtc.h \uFF0CRTC HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 RTC \u9A71\u52A8 Driver \u5C42\u91C7\u7528...","topics/sdk/rtc/rtc-design-intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E\uFF1A RTC V1.0: drivers/rtc/artinchip-rtc.c RTC V0.1: drivers/rtc/artinchip-rtc-v0.1.c \u6A21\u5757\u67B6\u6784 Linux \u63D0\u4F9B\u4E86\u4E00\u4E2A RTC \u5B50\u7CFB\u7EDF\uFF0C\u7B80\u79F0 RTC Core\uFF0C\u4F7F\u5F97\u5728\u7528\u6237\u7A7A\u95F4\u53EF\u4EE5\u901A\u8FC7 /dev/watchdogX \u6765\u8BBF\u95EE RTC \u63A7\u5236\u5668\u3002\u4E3A\u4E86\u66F4\u65B9\u4FBF\u67E5\u770B\u786C\u4EF6\u72B6\u6001\u548C\u53C2\u6570\u8BBE\u7F6E\uFF0C\u672C\u9A71\u52A8\u53E6\u5916\u6269\u5C55\u4E86\u51E0\u4E2A...","topics/sdk/rtc/rtc-interface-design-luban-lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u4EE5\u4E0B\u63A5\u53E3\u662F RTC \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u7684\u6807\u51C6\u63A5\u53E3\u3002 struct rt_rtc_ops { rt_err_t (*init)( void ); rt_err_t (*get_secs)(time_t *sec); rt_err_t (*set_secs)(time_t *sec); rt_err_t (*get_alarm)( struct rt_rtc_wkalarm...","topics/sdk/rtc/rtc-interface-design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u4EE5\u4E0B\u63A5\u53E3\u662F Linux RTC \u5B50\u7CFB\u7EDF\u9700\u8981\u7684\u6807\u51C6\u63A5\u53E3\u3002 \u5916\u90E8\u63A5\u53E3 Linux \u5BF9\u7528\u6237\u6001\u63D0\u4F9B\u4E86\u4E00\u7EC4 RTC \u7684 ioctl \u63A5\u53E3\uFF0C\u7528\u6237\u6001\u53EF\u4EE5\u901A\u8FC7\u8BBE\u5907\u8282\u70B9/dev/rtc0 \u6765\u8BBF\u95EE\uFF1A\uFF08\u8BE6\u89C1 include/upai/linux/rtc.h\uFF09 # define RTC_AIE_ON _IO( 'p' , 0x01 ) /* Alarm int. enable on */ # define...","topics/sdk/rtc/rtc-key-procedure-lite.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41 RTC \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u901A\u8FC7 INIT_BOARD_EXPORT(drv_rtc_init) \u5B8C\u6210\uFF0C\u4E3B\u8981\u662F\u901A\u8FC7\u8C03\u7528 RTC \u5B50\u7CFB\u7EDF\u7684\u63A5\u53E3 rt_hw_rtc_register() \u6CE8\u518C\u4E00\u4E2A RTC \u8BBE\u5907\u3002 RTC \u63A7\u5236\u5668\u7684\u521D\u59CB\u5316\u6D41\u7A0B\u653E\u5728 rtc_ops_init() \u63A5\u53E3\u4E2D\u5B9E\u73B0\uFF0C\u5176\u4E2D\u4E3B\u8981\u6B65\u9AA4\u6709\uFF1A \u521D\u59CB\u5316\u6A21\u5757\u7684\u65F6\u949F (clk)\uFF0C\u786E\u4FDD RTC \u63A7\u5236\u5668\u6240\u9700\u7684\u65F6\u949F\u5DF2\u7ECF\u6B63\u786E\u914D\u7F6E\u548C\u542F\u7528\u3002 \u6CE8\u518C\u4E2D\u65AD\u3002...","topics/sdk/rtc/rtc-key-procedure.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u6821\u51C6\u7B97\u6CD5\u8BBE\u8BA1 \u6821\u51C6\u7684\u7B97\u6CD5\u539F\u7406\u662F\uFF0C\u5C06\u8F93\u5165\u7684 32 KHz \u6676\u632F\u65F6\u949F\u6821\u51C6\u5230\u7406\u60F3\u7684 32 KHz\uFF0C\u516C\u5F0F\u5982\u4E0B\uFF1A ( 100 * 1024 * 1024 + 100 * calibrate) / (clock-rate / 32 ) = 1024 => calibrate = (clock-rate * 32 - 100 * 1024 * 1024 ) / 100 ; \u5176\u4E2D\uFF1A clock-rate...","topics/sdk/rtc/rtc-test-guide-lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u786E\u4FDD\u5F00\u53D1\u677F\u4E0A\u5B89\u88C5\u6709\u7535\u6C60\uFF0C\u7528\u4E8E\u7ED9 RTC \u4F9B\u7535\u3002 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1\u3002 Luban-Lite \u81EA\u5E26\u7684 test-alram \u5DE5\u5177\u3002 \u6253\u5F00 test-alram \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options --->...","topics/sdk/rtc/rtc-test-guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@RTC \u6D4B\u8BD5\u6240\u9700\u7684\u6D4B\u8BD5\u73AF\u5883\u5982\u4E0B\uFF1A \u786C\u4EF6 \uFF1A\u5F00\u53D1\u677F\u4E0A\u5B89\u88C5\u6709\u7535\u6C60\uFF0C\u7528\u4E8E\u7ED9 RTC \u4F9B\u7535 \u8F6F\u4EF6 \uFF1A PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Linux \u5185\u6838\u539F\u751F\u7684 rtctest \u5DE5\u5177 \u914D\u7F6E\u8F6F\u4EF6 \u5728 Luban \u7684\u6839\u76EE\u5F55\u4E0B\u901A\u8FC7 make menuconfig \u6253\u5F00 rtctest \uFF1A Linux kernel Advance setting Linux Kernel Tools [*]...","topics/sdk/rtc/rtc-user-guide.html@@@RTC \u4F7F\u7528\u6307\u5357@@@Real Time Clock (RTC) \u6A21\u5757\u7528\u4E8E\u65E5\u671F\u65F6\u95F4\u7684\u4FDD\u5B58\u548C\u66F4\u65B0\uFF0C\u5728\u65E0\u7F51\u7EDC\u4E0B\u4E3A\u7CFB\u7EDF\u63D0\u4F9B\u4E00\u4EFD\u6709\u6548\u7684\u65E5\u671F\u548C\u65F6\u95F4\u3002\u901A\u8FC7\u5907\u7528\u7535\u6C60\u4F9B\u7535\uFF0C\u5728\u65AD\u7535\u573A\u666F\u4E0B\u4E5F\u53EF\u4EE5\u4E00\u76F4\u8BA1\u6570\u548C\u4FDD\u5B58\u65F6\u95F4\uFF0C\u540C\u65F6\u8FD8\u6709\u95F9\u949F\u5524\u9192\u7684\u529F\u80FD\u3002 \u4EE5\u79D2\u4E3A\u5355\u4F4D\uFF0C\u6700\u5927\u652F\u6301 100 \u5E74\u8DE8\u5EA6 \u7CBE\u5EA6\u53D6\u51B3\u4E8E\u6676\u632F\u7CBE\u5EA6\u3002RTC V1.0 \u652F\u6301\u6821\u51C6\uFF0C\u6821\u51C6\u8303\u56F4 \u00B1 975 ppm\uFF08\u6BCF\u767E\u4E07\u6B21\u8BA1\u6570\u7684\u8BEF\u5DEE\uFF09 \u652F\u6301\u4E00\u8DEF\u95F9\u949F\u8BBE\u7F6E\uFF08\u53EF\u901A\u8FC7\u8F6F\u4EF6\u6765\u6269\u5C55\u6210\u591A\u8DEF\u95F9\u949F\uFF09\uFF0C\u95F9\u949F\u7CBE\u786E\u5230\u79D2...","topics/sdk/rtc/rtc-user-guide_2.html@@@RTC \u4F7F\u7528\u6307\u5357@@@Real Time Clock (RTC) \u6A21\u5757\u7528\u4E8E\u65E5\u671F\u65F6\u95F4\u7684\u4FDD\u5B58\u548C\u66F4\u65B0\uFF0C\u5728\u65E0\u7F51\u7EDC\u4E0B\u4E3A\u7CFB\u7EDF\u63D0\u4F9B\u4E00\u4EFD\u6709\u6548\u7684\u65E5\u671F\u548C\u65F6\u95F4\u3002\u901A\u8FC7\u5907\u7528\u7535\u6C60\u4F9B\u7535\uFF0C\u5728\u65AD\u7535\u573A\u666F\u4E0B\u4E5F\u53EF\u4EE5\u4E00\u76F4\u8BA1\u6570\u548C\u4FDD\u5B58\u65F6\u95F4\uFF0C\u540C\u65F6\u8FD8\u6709\u95F9\u949F\u5524\u9192\u7684\u529F\u80FD\u3002 \u4EE5\u79D2\u4E3A\u5355\u4F4D\uFF0C\u6700\u5927\u652F\u6301 100 \u5E74\u8DE8\u5EA6 \u7CBE\u5EA6\u53D6\u51B3\u4E8E\u6676\u632F\u7CBE\u5EA6\u3002RTC V1.0 \u652F\u6301\u6821\u51C6\uFF0C\u6821\u51C6\u8303\u56F4 \u00B1 975 ppm\uFF08\u6BCF\u767E\u4E07\u6B21\u8BA1\u6570\u7684\u8BEF\u5DEE\uFF09 \u652F\u6301\u4E00\u8DEF\u95F9\u949F\u8BBE\u7F6E\uFF08\u53EF\u901A\u8FC7\u8F6F\u4EF6\u6765\u6269\u5C55\u6210\u591A\u8DEF\u95F9\u949F\uFF09\uFF0C\u95F9\u949F\u7CBE\u786E\u5230\u79D2...","topics/sdk/rtp/rtp-data_structure_design.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@struct aic_rtp_dev \u7BA1\u7406 RTP \u63A7\u5236\u5668\u7684\u8BBE\u5907\u8D44\u6E90\u3002 struct aic_rtp_dev { struct platform_device *pdev; struct attribute_group attrs; struct clk *clk; struct reset_control *rst; struct device *dev; struct input_dev...","topics/sdk/rtp/rtp-interface_design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u4EE5\u4E0B\u63A5\u53E3\u662F Input \u5B50\u7CFB\u7EDF\u9700\u8981\u7684\u6807\u51C6\u63A5\u53E3\u3002 \u8868 1 . aic_rtp_open \u51FD\u6570\u539F\u578B static int aic_rtp_open(struct input_dev *dev) \u529F\u80FD\u8BF4\u660E \u6253\u5F00 RTP \u8BBE\u5907\uFF0C\u9A71\u52A8\u4F1A\u4F7F\u80FD RTP \u63A7\u5236\u5668 \u53C2\u6570\u5B9A\u4E49 dev - \u6307\u5411\u5F53\u524D\u7684 input \u8BBE\u5907 \u8FD4\u56DE\u503C 0\uFF0C\u6210\u529F\u3002 < 0\uFF0C\u5931\u8D25 \u6CE8\u610F\u4E8B\u9879 - \u8868 2 . aic_rtp_close \u51FD\u6570\u539F\u578B...","topics/sdk/rtp/rtp-key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B RTP \u6A21\u5757\u5B8C\u5168\u9075\u5FAA driver \u7684\u901A\u7528\u521D\u59CB\u5316\u6D41\u7A0B\uFF0C\u7533\u8BF7 regs \u8D44\u6E90\u3001clk\u3001reset\uFF0C \u8FD8\u9700\u8981\u6CE8\u518C\u4E00\u4E2A input \u8BBE\u5907\uFF0C\u4F7F\u7528 input \u5B50\u7CFB\u7EDF\u63D0\u4F9B\u7684\u6CE8\u518C\u63A5\u53E3 input_register_device()\uFF1A int __must_check input_register_device( struct input_dev *); \u53C2\u6570 dev \u8BB0\u5F55\u4E86\u8BE5 input...","topics/sdk/rtp/rtp_config.html@@@RTP \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Linux Device Drivers Input device support [*] Touchscreens <*> ArtInChip resistive touchscreen...","topics/sdk/rtp/rtp_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E RTP \u6A21\u5757\u4F9D\u8D56 DE \u9A71\u52A8\u548C MPP \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [*] Using Graphics Engine (GE) [*] Using Video Engine (VE) Drivers options --->...","topics/sdk/rtp/rtp_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00 RTP \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A Linux Kernel hacking ArtInChip Debug [*] RTP driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5 -O0 \u7F16\u8BD1\u3002...","topics/sdk/rtp/rtp_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D RTP \u9A71\u52A8\u7684 Log \u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 ulog \u63A5\u53E3\u3002 \u67E5\u770B\u63A7\u5236\u5668\u72B6\u6001 \u5728 RTP \u9A71\u52A8\u521D\u59CB\u5316\u6210\u529F\u540E\uFF0C\u4F1A\u5728 Shell \u547D\u4EE4\u884C\u4E2D\u6CE8\u518C\u751F\u6210\u4E00\u4E2A rtp_status \u547D\u4EE4\uFF0C\u5176\u4E2D\u6253\u5370\u4E86\u5F53\u524D\u7684\u914D\u7F6E\u53CA\u72B6\u6001\u4FE1\u606F\uFF1A rtp_status In RTP controller V1. 00 : Mode hw 2 / sw 2 , RTP enale 1...","topics/sdk/rtp/rtp_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E linux-5.x/drivers/input/touchscreen/artinchip.c \u3002 RTP \u9A71\u52A8\u57FA\u4E8E Linux \u5185\u6838\u4E2D\u7684 input \u5B50\u7CFB\u7EDF\u5B9E\u73B0\uFF0C\u5176\u5173\u7CFB\u5982\u4E0B\u56FE\uFF1A \u56FE 1 . Linux Input \u5B50\u7CFB\u7EDF\u67B6\u6784\u56FE...","topics/sdk/rtp/rtp_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/rtp/drv_rtp.c \uFF0CRTP Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/rtp/hal_rtp.c \uFF0CRTP HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_rtp.h \uFF0CRTP HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 RTP \u9A71\u52A8 Driver \u5C42\u91C7\u7528...","topics/sdk/rtp/rtp_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5C4F\u5E55\u5212\u7EBF\u8D8B\u52BF\u6709\u8BEF \u73B0\u8C61 \u65E0\u8BBA\u5728\u5C4F\u5E55\u4F55\u5904\u70B9\u51FB\uFF0C\u753B\u7EBF\u5747\u5728\u4E00\u6761\u659C\u7EBF\u4E0A\u3002 \u539F\u56E0\u5206\u6790 \u9010\u4E2A\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A \u68C0\u67E5\u7535\u8DEF\uFF0CRTP \u56DB\u4E2A\u4FE1\u53F7\u5747\u4E0D\u80FD\u4E0A\u4E0B\u62C9\u7535\u963B \u6839\u636E\u89E6\u6478\u5C4F\u7684\u7535\u963B\u5B9E\u6D4B\u65B9\u6CD5\uFF0C\u68C0\u67E5 x_plate \u4E0E y_plate \u662F\u5426\u6D4B\u91CF\u51C6\u786E \u672A\u6709\u6548\u6821\u51C6\uFF0C\u8BF7\u91CD\u65B0\u6821\u51C6 \u8DF3\u70B9\u73B0\u8C61\u4E25\u91CD \u73B0\u8C61 \u5728\u5C4F\u5E55\u4E0A\u70B9\u51FB\u540E\uFF0C\u4F1A\u6709\u660E\u663E\u7684\u5750\u6807\u8DF3\u8DC3\uFF0C\u6216\u8005\u5750\u6807\u4E0D\u8DDF\u624B\u7684\u60C5\u51B5\u3002 \u539F\u56E0\u5206\u6790 \u9010\u4E2A\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A \u5C4F\u5E55\u7684 X_PLATE\u3001Y_PLATE...","topics/sdk/rtp/rtp_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u5C4F\u5E55\u5212\u7EBF\u8D8B\u52BF\u6709\u8BEF \u73B0\u8C61 \u65E0\u8BBA\u5728\u5C4F\u5E55\u4F55\u5904\u70B9\u51FB\uFF0C\u753B\u7EBF\u5747\u5728\u4E00\u6761\u659C\u7EBF\u4E0A\u3002 \u539F\u56E0\u5206\u6790 \u9010\u4E2A\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A \u68C0\u67E5\u7535\u8DEF\uFF0CRTP \u56DB\u4E2A\u4FE1\u53F7\u5747\u4E0D\u80FD\u4E0A\u4E0B\u62C9\u7535\u963B \u6839\u636E\u89E6\u6478\u5C4F\u7684\u7535\u963B\u5B9E\u6D4B\u65B9\u6CD5\uFF0C\u68C0\u67E5 x_plate \u4E0E y_plate \u662F\u5426\u6D4B\u91CF\u51C6\u786E \u672A\u6709\u6548\u6821\u51C6\uFF0C\u8BF7\u91CD\u65B0\u6821\u51C6 \u8DF3\u70B9\u73B0\u8C61\u4E25\u91CD \u73B0\u8C61 \u5728\u5C4F\u5E55\u4E0A\u70B9\u51FB\u540E\uFF0C\u4F1A\u6709\u660E\u663E\u7684\u5750\u6807\u8DF3\u8DC3\uFF0C\u6216\u8005\u5750\u6807\u4E0D\u8DDF\u624B\u7684\u60C5\u51B5\u3002 \u539F\u56E0\u5206\u6790 \u9010\u4E2A\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A \u5C4F\u5E55\u7684 X_PLATE\u3001Y_PLATE...","topics/sdk/rtp/rtp_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5E26\u89E6\u5C4F\u529F\u80FD\u7684\u5C4F\u5E55 \u5E26 RTP \u63A5\u53E3\u7684\u5F00\u53D1\u677F USB Type-C \u6570\u636E\u7EBF\uFF0C\u7528\u4E8E\u7ED9\u5F00\u53D1\u677F\u4F9B\u7535\u3001\u70E7\u5199 USB \u8F6C\u4E32\u53E3\u7684\u7EBF\uFF0C\u7528\u4E8E\u8FDE\u63A5\u5F00\u53D1\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u624B\u5199\u7B14\uFF0C\u53EF\u4EE5\u66F4\u65B9\u4FBF\u7CBE\u51C6\u7684\u70B9\u51FB RTP \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 AiBurn \u70E7\u5199\u5DE5\u5177 tslib \u5F00\u6E90\u5E93\uFF0C\u7528\u4E8E\u7BA1\u7406 input \u8BBE\u5907\u548C\u4E8B\u4EF6\u3001\u4EE5\u53CA\u5750\u6807\u6821\u51C6\uFF0Cluban \u4E2D\u5DF2\u96C6\u6210 ts_draw...","topics/sdk/rtp/rtp_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5E26\u89E6\u5C4F\u529F\u80FD\u7684\u5C4F\u5E55 \u5E26 RTP \u63A5\u53E3\u7684\u5F00\u53D1\u677F USB Type-C \u6570\u636E\u7EBF\uFF0C\u7528\u4E8E\u7ED9\u5F00\u53D1\u677F\u4F9B\u7535\u3001\u70E7\u5199 USB \u8F6C\u4E32\u53E3\u7684\u7EBF\uFF0C\u7528\u4E8E\u8FDE\u63A5\u5F00\u53D1\u677F\u7684\u8C03\u8BD5\u4E32\u53E3 \u624B\u5199\u7B14\uFF0C\u53EF\u4EE5\u66F4\u65B9\u4FBF\u7CBE\u51C6\u7684\u70B9\u51FB RTP \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 test_rtp_draw \u6D4B\u8BD5\u7A0B\u5E8F \u8F6F\u4EF6\u914D\u7F6E \u914D\u7F6E test_rtp_draw \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons...","topics/sdk/rtp/rtp_user_guide.html@@@RTP \u4F7F\u7528\u6307\u5357@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E ADC Analog Digital Converter \u6A21\u62DF\u6570\u5B57\u8F6C\u6362\u5668 ADCIM ADC Interface Management ADC \u63A5\u53E3\u7BA1\u7406\u6A21\u5757 RTP Resistance Touch Panel \u7535\u963B\u89E6\u6478\u5C4F \u6A21\u5757\u67B6\u6784 RTP \u9700\u8981\u4F9D\u8D56 ADCIM \u6A21\u5757\uFF08\u7EDF\u4E00\u7BA1\u7406\u786C\u4EF6\u901A\u8DEF\u548C\u5904\u7406\u4FE1\u53F7\u6821\u51C6\uFF09\uFF0C\u5176\u5173\u7CFB\u5982\u56FE\uFF1A \u56FE 1 . RTP \u548C ADCIM...","topics/sdk/rtp/rtp_user_guide_2.html@@@RTP \u4F7F\u7528\u6307\u5357@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E ADC Analog Digital Converter \u6A21\u62DF\u6570\u5B57\u8F6C\u6362\u5668 ADCIM ADC Interface Management ADC \u63A5\u53E3\u7BA1\u7406\u6A21\u5757 RTP Resistance Touch Panel \u7535\u963B\u89E6\u6478\u5C4F \u6A21\u5757\u67B6\u6784 RTP \u9700\u8981\u4F9D\u8D56 ADCIM \u6A21\u5757\uFF08\u7EDF\u4E00\u7BA1\u7406\u786C\u4EF6\u901A\u8DEF\u548C\u5904\u7406\u4FE1\u53F7\u6821\u51C6\uFF09\uFF0C\u5176\u5173\u7CFB\u5982\u56FE\uFF1A \u56FE 1 . RTP \u548C ADCIM...","topics/sdk/rtp/rtp_working_logic.html@@@\u5DE5\u4F5C\u539F\u7406@@@\u786C\u4EF6\u7ED3\u6784\u539F\u7406 \u56FE 1 . RTP \u786C\u4EF6\u7ED3\u6784\u4FA7\u89C6\u56FE \u5982\u56FE\u6240\u793A\uFF0CRTP \u786C\u4EF6\u5206\u4E3A\u4E0B\u5217\u591A\u5C42\u7ED3\u6784\uFF1A \u8868\u9762\u786C\u56FE\u5C42\uFF1A\u624B\u6307\u89E6\u6478\u7684\u8868\u9762\u662F\u4E00\u4E2A\u786C\u6D82\u5C42\uFF0C\u7528\u4EE5\u4FDD\u62A4\u4E0B\u9762\u7684 PET \u5C42\u3002 PET \u5C42\uFF1A\u5F88\u8584\u3001\u6709\u5F39\u6027\uFF0C\u5F53\u8868\u9762\u88AB\u89E6\u6478\u65F6\u5B83\u4F1A\u5411\u4E0B\u5F2F\u66F2\uFF0C\u5E76\u4F7F\u5F97\u4E0B\u9762\u7684\u4E24\u5C42 ITO \u6D82\u5C42\u80FD\u591F\u76F8\u4E92\u63A5\u89E6\u5E76\u5728\u8BE5\u70B9\u8FDE\u901A\u7535\u8DEF\u3002 ITO \u9676\u74F7\u5C42\uFF1A\u4E24\u4E2A ITO \u5C42\u4E4B\u95F4\u662F\u7EA6\u5343\u5206\u4E4B\u4E00\u82F1\u5BF8\u539A\u7684\u4E00\u4E9B\u9694\u79BB\u652F\u70B9\u4F7F\u4E24\u5C42\u5206\u5F00\u3002...","topics/sdk/rtp/rtp_working_logic_2.html@@@\u5DE5\u4F5C\u539F\u7406@@@\u786C\u4EF6\u7ED3\u6784\u539F\u7406 \u56FE 1 . RTP \u786C\u4EF6\u7ED3\u6784\u4FA7\u89C6\u56FE \u5982\u56FE\u6240\u793A\uFF0CRTP \u786C\u4EF6\u5206\u4E3A\u4E0B\u5217\u591A\u5C42\u7ED3\u6784\uFF1A \u8868\u9762\u786C\u56FE\u5C42\uFF1A\u624B\u6307\u89E6\u6478\u7684\u8868\u9762\u662F\u4E00\u4E2A\u786C\u6D82\u5C42\uFF0C\u7528\u4EE5\u4FDD\u62A4\u4E0B\u9762\u7684 PET \u5C42\u3002 PET \u5C42\uFF1A\u5F88\u8584\u3001\u6709\u5F39\u6027\uFF0C\u5F53\u8868\u9762\u88AB\u89E6\u6478\u65F6\u5B83\u4F1A\u5411\u4E0B\u5F2F\u66F2\uFF0C\u5E76\u4F7F\u5F97\u4E0B\u9762\u7684\u4E24\u5C42 ITO \u6D82\u5C42\u80FD\u591F\u76F8\u4E92\u63A5\u89E6\u5E76\u5728\u8BE5\u70B9\u8FDE\u901A\u7535\u8DEF\u3002 ITO \u9676\u74F7\u5C42\uFF1A\u4E24\u4E2A ITO \u5C42\u4E4B\u95F4\u662F\u7EA6\u5343\u5206\u4E4B\u4E00\u82F1\u5BF8\u539A\u7684\u4E00\u4E9B\u9694\u79BB\u652F\u70B9\u4F7F\u4E24\u5C42\u5206\u5F00\u3002...","topics/sdk/sdmc/sdcard.html@@@\u6302\u8F7D SD \u5361@@@Luban-Lite \u53EF\u4EE5\u5B9E\u73B0\u6302\u8F7D SD \u5361\uFF08FAT32 \u683C\u5F0F\uFF09\uFF0C\u672C\u8282\u4EE5\u4E00\u4E2A SD \u5361\u53EA\u6709\u4E00\u4E2A\u5206\u533A\u4E3A\u4F8B\uFF0C\u4ECB\u7ECD\u6302\u8F7D SD \u5361\u7684\u8BE6\u7EC6\u6B65\u9AA4\u3002 \u914D\u7F6E SDMC \u63A5\u53E3 \u8FDB\u5165 SDK \u7684 menuconfig \u83DC\u5355\uFF0C\u9009\u4E2D\u5BF9\u5E94 SDMC \u63A5\u53E3\u3002 \u4F8B\u5982\uFF0C\u5BF9\u4E8E D211BBV-DEMO-V2.0 \u5F00\u53D1\u677F\uFF0CSD \u5361\u5BF9\u63A5 SDMC1 \u63A5\u53E3\uFF0C\u5219\u9009\u4E2D SDMC1 \u63A5\u53E3\u5E76\u8BBE\u7F6E\u4E3A\u4F7F\u7528\uFF0C\u5982\u4E0B\u6240\u793A\uFF1A Board options...","topics/sdk/sdmc/sdmc-config-lite.html@@@SDMC \u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [ ] Using SDMC0 [*] Using SDMC1 [ ] Using SDMC2 [*] Enable the interrupt of SDMC SDMC1 Parameter --->...","topics/sdk/sdmc/sdmc-config.html@@@SDMC \u914D\u7F6E@@@\u672C\u8282\u4ECB\u7ECD\u4E86 SDMC \u7684\u53C2\u6570\u914D\u7F6E\u6D41\u7A0B\u3002 \u5185\u6838\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Linux Device Drivers <*> MMC/SD/SDIO card support <*> MMC block device driver <*>...","topics/sdk/sdmc/sdmc-data_structure_design.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@SDMC \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u5982\u4E0B\uFF1A enum artinchip_mmc_state \uFF1A\u5B9A\u4E49\u4E86 SDMC \u63A7\u5236\u5668\u7684\u72B6\u6001\u3002 enum artinchip_mmc_state { STATE_IDLE = 0 , STATE_SENDING_CMD, STATE_SENDING_DATA, STATE_DATA_BUSY, STATE_SENDING_STOP, STATE_DATA_ERROR...","topics/sdk/sdmc/sdmc-debug_guide-lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u9A71\u52A8\u52A0\u8F7D\u72B6\u6001 \u5F53\u4F7F\u7528 RT-Thread\uFF0CSD \u5361\u3001\u6216\u8005 eMMC \u88AB\u6B63\u5E38\u521D\u59CB\u5316\uFF0C\u4F1A\u81EA\u52A8\u751F\u6210\u5757\u8BBE\u5907\uFF0C\u5728\u542F\u52A8\u5230\u547D\u4EE4\u884C\u540E\uFF0C\u901A\u8FC7\u547D\u4EE4 list_device \u67E5\u770B: list_device device type ref count -------- -------------------- ---------- sd0 Block Device 0 sd0p0 Block Device 0...","topics/sdk/sdmc/sdmc-debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00 SDMC \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A Linux Kernel hacking ArtInChip Debug [*] SD&MMC Host Controller driver debug \u6253\u5F00...","topics/sdk/sdmc/sdmc-design-guide-lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/sdmc/drv_sdmc.c \uFF0CSDMC Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/sdmc/hal_sdmc.c \uFF0CSDMC HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_sdmc.h \uFF0CSDMC HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6B64\u5916\uFF0C\u63D0\u4F9B\u4E86\u4E00\u4E2A Baremetal...","topics/sdk/sdmc/sdmc-design-guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E drivers/mmc/host/ \uFF1A artinchip-mmc.c \uFF0CSDMC \u9A71\u52A8\u5B9E\u73B0 artinchip-mmc.h \uFF0CSDMC \u7684\u5BC4\u5B58\u5668\u3001\u6570\u636E\u7ED3\u6784\u5B9A\u4E49 Linux \u4E2D\u63D0\u4F9B\u4E86 MMC \u5B50\u7CFB\u7EDF\uFF0C\u8BE5\u5B50\u7CFB\u7EDF\u8D1F\u8D23\u62BD\u8C61\u4E00\u4E2A\u5757\u8BBE\u5907\u63D0\u4F9B\u7ED9\u901A\u7528\u5757\u5C42\u4F7F\u7528\uFF0C\u4ECE\u6574\u4E2A\u8F6F\u4EF6\u7684\u89D2\u5EA6\u6765\u770B\uFF0C\u67B6\u6784\u5982\u4E0B\uFF1A \u56FE 1 . Linux MMC \u5B50\u7CFB\u7EDF\u67B6\u6784\u56FE \u5176\u4E2D\uFF1A \u5BF9\u7528\u6237\u800C\u8A00\uFF0CMMC card...","topics/sdk/sdmc/sdmc-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@SD \u5361\u521D\u59CB\u5316\u5931\u8D25 \u73B0\u8C61 \u542F\u52A8\u540E\uFF0CSDMC \u9A71\u52A8\u521D\u59CB\u5316\u5B8C\u6210\uFF0C\u4F46\u662F mount SD \u5361\u65F6\u62A5\u9519\u3002 [I] aic_sdmc_probe() 571 SDMC1 driver loaded Reboot action: Worm-Reset, reason: Extend-Reset Startup time: 50.556 sec (from Power-On-Reset) 01 - 01 08...","topics/sdk/sdmc/sdmc-faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@SD \u5361\u521D\u59CB\u5316\u5931\u8D25 \u73B0\u8C61 \u542F\u52A8\u540E\uFF0CSDMC \u9A71\u52A8\u521D\u59CB\u5316\u5B8C\u6210\uFF0C\u4F46\u662F mount SD \u5361\u65F6\u62A5\u9519\u3002 [I] aic_sdmc_probe() 571 SDMC1 driver loaded Reboot action: Worm-Reset, reason: Extend-Reset Startup time: 50.556 sec (from Power-On-Reset) 01 - 01 08...","topics/sdk/sdmc/sdmc-init-procedures.html@@@\u521D\u59CB\u5316\u6D41\u7A0B@@@MMC \u5B50\u7CFB\u7EDF\u7684\u521D\u59CB\u5316\u5305\u62EC MMC \u5757\u8BBE\u5907\u3001MMC \u5B50\u7CFB\u7EDF\u3001MMC \u63A7\u5236\u5668\u9A71\u52A8\u3001card \u8BBE\u5907\u7B49\u51E0\u6761\u7EBF\uFF0C\u521D\u59CB\u5316\u987A\u5E8F\uFF1A MMC \u6838\u5FC3\u521D\u59CB\u5316 MC \u63A7\u5236\u5668\u9A71\u52A8\u521D\u59CB\u5316\u5B8C\u6210\u540E\u624D\u4F1A\u5BF9 card \u8BBE\u5907\u8FDB\u884C\u521D\u59CB\u5316 MMC \u5757\u8BBE\u5907\u521D\u59CB\u5316\u6CA1\u6709\u4E25\u683C\u7684\u5148\u540E\u987A\u5E8F MMC \u5757\u8BBE\u5907\u9A71\u52A8\u521D\u59CB\u5316 MMC \u5728\u4F7F\u7528\u4E2D\uFF0C\u4F1A\u5C06\u5176\u62BD\u8C61\u6210\u4E00\u4E2A\u5757\u8BBE\u5907\u6302\u8F7D\u5230\u901A\u7528\u5757\u5C42\u5F53\u4E2D\uFF0C\u901A\u8FC7 module_init(mmc_blk_init)...","topics/sdk/sdmc/sdmc-interface_design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u4EE5\u4E0B\u63A5\u53E3\u7686\u4E3A MMC \u5B50\u7CFB\u7EDF\u6240\u9700\u8981\u7684\u6807\u51C6\u63A5\u53E3\uFF0C\u901A\u8FC7 mmc_host_ops \u6CE8\u518C\u5230 MMC \u5B50\u7CFB\u7EDF\u3002 static const struct mmc_host_ops artinchip_mmc_ops = { .request = artinchip_mmc_request, .pre_req = artinchip_mmc_pre_req, .post_req =...","topics/sdk/sdmc/sdmc-interrupt-processing-procedures.html@@@\u4E2D\u65AD\u5904\u7406\u6D41\u7A0B@@@\u5728\u89E6\u53D1\u4E2D\u65AD\u540E\uFF0C\u9700\u8981\u6839\u636E\u76EE\u524D\u7684\u4E2D\u65AD\u72B6\u6001\u8FDB\u884C\u5904\u7406\uFF0C\u5176\u4E2D\u4E3B\u8981\u4E3A\u9519\u8BEF\u5904\u7406\u548C\u4F20\u8F93\u5904\u7406\uFF0C\u8FD9\u4E9B\u5904\u7406\u4E3B\u8981\u5728 tasklet \u4E2D\uFF0C\u5E76\u4E14\u57FA\u4E8E\u4E00\u4E9B\u72B6\u6001\u53D8\u91CF\u6765\u63A7\u5236\u5904\u7406\u7684\u6D41\u7A0B\u3002 \u72B6\u6001\u53D8\u91CF\u3002\u5728\u6D41\u7A0B\u7684\u63A7\u5236\u4E0A\uFF0C\u4E3B\u8981\u901A\u8FC7\u51E0\u4E2A\u72B6\u6001\u53D8\u91CF\u6765\u63A7\u5236\uFF1A host-> state\uFF1A\u8868\u793A\u5F53\u524D\u7684\u64CD\u4F5C\u72B6\u6001\uFF0C\u4F8B\u5982\u53D1\u9001\u6570\u636E\uFF0C\u53D1\u9001 CMD \u7B49\u7B49 host->pending_events\uFF1A\u5F53\u524D\u4E2D\u65AD\u53D1\u751F\u7684\u72B6\u6001...","topics/sdk/sdmc/sdmc-key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@...","topics/sdk/sdmc/sdmc-request-processing-procedures.html@@@\u8BF7\u6C42\u5904\u7406\u6D41\u7A0B@@@\u5BF9\u4E8E\u5E94\u7528\u7A0B\u5E8F\uFF0C\u901A\u8FC7\u8BFB\u5199\u7684\u63A5\u53E3\u8BBF\u95EE\u6587\u4EF6\u7CFB\u7EDF\uFF0C\u6587\u4EF6\u7CFB\u7EDF\u8BBF\u95EE\u5757\u8BBE\u5907\uFF0CMMC \u8BBE\u5907\u5728\u5185\u6838\u4E2D\u88AB\u6CE8\u518C\u4E3A\u4E00\u4E2A\u5757\u8BBE\u5907\uFF0C\u5F53\u8BFB\u5199\u7684\u64CD\u4F5C\u4F20\u5165\u5230 MMC \u5757\u8BBE\u5907\u540E\uFF0C\u901A\u8FC7 MMC \u5B50\u7CFB\u7EDF\u5904\u7406\u76F8\u5173\u64CD\u4F5C\uFF0C\u5BF9\u4E8E MMC \u5B50\u7CFB\u7EDF\u5176\u5904\u7406\u7686\u4EE5\u8BF7\u6C42\u7684\u65B9\u5F0F\u5B9E\u73B0\u3002 \u5757\u5C42\u4EE5\u4E0A\u7CFB\u7EDF\u8BFB\u5199\u8C03\u7528\u6D41\u7A0B \u5728\u5757\u5C42\u4EE5\u4E0A\uFF0C\u901A\u5E38\u662F\u7528\u6237\u7A7A\u95F4\u8C03\u7528\u8BFB\u5199\u63A5\u53E3\u8BBF\u95EE MMC \u8BBE\u5907\uFF0C\u4E3B\u8981\u6D41\u7A0B\u5982\u4E0B\uFF1A \u56FE 1 . \u901A\u7528\u5757\u8BBE\u5907\u7684\u8BBF\u95EE\u6D41\u7A0B \u5728\u7528\u6237\u7A7A\u95F4\uFF0C\u5E94\u7528\u7A0B\u5E8F\u8C03\u7528...","topics/sdk/sdmc/sdmc-test-guide-lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F\uFF0C\u6216\u8005 FPGA \u677F\u5B50 \u677F\u5B50\u4E0A\u5FC5\u987B\u8981\u63A5\u6709 eMMC/SDCard \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 RT-Thread DFS \u7EC4\u4EF6\u81EA\u5E26\u4E86\u4E00\u4E9B\u547D\u4EE4\u7684\u6587\u4EF6\u64CD\u4F5C\u5DE5\u5177\uFF0C\u5982 cp\u3001mkdir \u7B49 DFS \u914D\u7F6E \u53C2\u89C1 sdmc-config.html#sdmc_configuration__file_sys_config \u3002 \u5728 RT-Thread...","topics/sdk/sdmc/sdmc-test-guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u51C6\u5907 SDMC \u6D4B\u8BD5\u6240\u9700\u7684\u6D4B\u8BD5\u73AF\u5883\uFF0C\u5982\u4E0B\u6240\u793A\uFF1A \u786C\u4EF6 \uFF1A \u5F00\u53D1\u677F\uFF0C\u6216\u8005 FPGA \u677F\u5B50 \u677F\u5B50\u4E0A\u5FC5\u987B\u8981\u63A5\u6709 eMMC/SDCard \u8F6F\u4EF6 \uFF1A PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Linux \u5185\u6838\u539F\u751F\u7684 test \u5DE5\u5177\uFF0C\u7528\u4E8E Host \u9A71\u52A8\u7684\u529F\u80FD\u6D4B\u8BD5 Luban \u81EA\u5E26\u7684 iozone \u5DE5\u5177\uFF0C\u7528\u4E8E\u5757\u8BBE\u5907\u7684\u6027\u80FD\u6D4B\u8BD5 \u6309\u7167\u4E0B\u5217\u6B65\u9AA4\u6253\u5F00\u5BF9\u5E94\u7684\u6D4B\u8BD5\u5DE5\u5177\uFF1A mmc_test \u5728...","topics/sdk/sdmc/sdmc-user-guide.html@@@SDMC \u4F7F\u7528\u6307\u5357@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E SD Secure Digital Flash \u5B58\u50A8\u5361\u7684\u4E00\u79CD\u6807\u51C6\uFF0C\u5373\u5E38\u89C1\u7684 SD \u5361 SDCard Secure Digital Memory Card \u5B89\u5168\u6570\u7801\u5361\uFF0C\u540C\u201CSD \u5361\u201D MMC Multi Media Card \u591A\u5A92\u4F53\u5361 eMMC Embedded Multi Media Card \u5185\u5D4C\uFF08\u5728\u677F\u5361\u4E0A\uFF09\u5F0F\u591A\u5A92\u4F53\u5361 SDIO Secure...","topics/sdk/sdmc/sdmc-user-guide_2.html@@@SDMC \u4F7F\u7528\u6307\u5357@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E SD Secure Digital Flash \u5B58\u50A8\u5361\u7684\u4E00\u79CD\u6807\u51C6\uFF0C\u5373\u5E38\u89C1\u7684 SD \u5361 SDCard Secure Digital Memory Card \u5B89\u5168\u6570\u7801\u5361\uFF0C\u540C\u201CSD \u5361\u201D MMC Multi Media Card \u591A\u5A92\u4F53\u5361 eMMC Embedded Multi Media Card \u5185\u5D4C\uFF08\u5728\u677F\u5361\u4E0A\uFF09\u5F0F\u591A\u5A92\u4F53\u5361 SDIO Secure...","topics/sdk/secure/chapter-secure.html@@@\u5B89\u5168\u65B9\u6848@@@...","topics/sdk/secure/firmware_encryption_with_spienc.html@@@\u56FA\u4EF6\u52A0\u5BC6-SPIENC@@@\u672C\u8282\u4EE5 D13x \u7CFB\u5217\u82AF\u7247\u4E3A\u4F8B\uFF0C\u6F14\u793A\u56FA\u4EF6\u52A0\u5BC6\u7684\u5177\u4F53\u6D41\u7A0B\u3002\u5173\u4E8E eFuse \u70E7\u5F55\u533A\u57DF\uFF0C\u53EF\u53C2\u8003\u5BF9\u5E94\u7528\u6237\u624B\u518C\u3002 \u5B8C\u6210\u672C\u8282\u6240\u6709\u64CD\u4F5C\u540E\uFF0C\u7F16\u8BD1\u955C\u50CF\u76F4\u63A5\u4F7F\u7528 AiBurn \u5DE5\u5177\u8FDB\u884C\u70E7\u5F55\u5373\u53EF\u3002 \u914D\u7F6E BROM \u4E2D\u7684 SPI_ENC_EN \u6BD4\u7279\u4F4D \u4F7F\u80FD BROM \u4E2D SPI_ENC \u529F\u80FD\uFF0C\u5728\u5F00\u53D1\u677F\u5E73\u53F0\u547D\u4EE4\u884C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u70E7\u5F55\u4E0B\u5217 eFuse \u4FE1\u606F\u4E2D\u7684 SPI_ENC_EN \u6BD4\u7279\u4F4D\uFF1A efuse writehex...","topics/sdk/secure/hw_authorization.html@@@\u786C\u4EF6\u6388\u6743\u8BA4\u8BC1@@@\u786C\u4EF6\u6388\u6743\u8BA4\u8BC1\u662F\u4E00\u79CD\u57FA\u4E8E\u8EAB\u4EFD\u8BA4\u8BC1\u539F\u7406\u4EE5\u53CA\u786C\u4EF6\u5B89\u5168\u5BC6\u94A5\u5B9E\u73B0\u7684\u5B89\u5168\u529F\u80FD\uFF0C\u53EF\u4EE5\u8BA9\u8F6F\u4EF6\u6216\u8005\u7B2C\u4E09\u65B9\u5408\u4F5C\u4F19\u4F34\u5BF9\u82AF\u7247\u7684\u5408\u6CD5\u6027\u8FDB\u884C\u8BA4\u8BC1\u3002 \u6839\u636E\u4F7F\u7528\u7684\u786C\u4EF6\u5BC6\u94A5\uFF0C\u9700\u8981\u70E7\u5F55\u5BF9\u5E94\u7684 eFuse\uFF0C\u53EF\u8BBE\u7F6E\u7684 eFuse \u4FE1\u606F\u5982\u4E0B\u6240\u793A\uFF1A \u8868 1 . eFuse \u4FE1\u606F \u7528\u9014 \u4F4D\u6570 \u5730\u5740 \u7981\u6B62\u4F4D \u7981\u5199 \u7981\u8BFB \u5F52\u5C5E \u5907\u6CE8 DIS RD 64 0~7 0~1 V - CSTM eFuse \u8BFB\u7981\u6B62\u914D\u7F6E\u533A\u57DF DIS WR 64 8~F...","topics/sdk/secure/spienc_function_d12x.html@@@\u9632\u6284\u677F-SPIENC-D12x@@@\u5E94\u7528\u573A\u666F \u672C\u65B9\u6848\u9488\u5BF9\u4E0B\u5217\u4F7F\u7528\u573A\u666F\uFF1A \u65B9\u6848\u5546\u63D0\u4F9B\u4E3B\u63A7\u82AF\u7247\u548C\u5F00\u53D1\u597D\u7684\u56FA\u4EF6\u7ED9\u7B2C\u4E09\u65B9\u751F\u4EA7\u5546 \u751F\u4EA7, \u65B9\u6848\u5546\u5BF9\u81EA\u5DF1\u7684\u56FA\u4EF6\u8FDB\u884C\u4FDD\u62A4 \u65B9\u6848\u5546\u5F00\u53D1\u4E86\u5305\u542B\u67D0\u4E00\u529F\u80FD\u7684\u56FA\u4EF6 \u751F\u4EA7\u5546\u4E0D\u8FDB\u884C\u5F00\u53D1\uFF0C\u800C\u4F7F\u7528\u65B9\u6848\u5546\u63D0\u4F9B\u7684\u56FA\u4EF6 \u65B9\u6848\u5546\u4E3A\u4E86\u4FDD\u62A4\u81EA\u5DF1\u7684\u56FA\u4EF6\uFF0C\u4F1A\u8981\u6C42\u81EA\u5DF1\u7684\u56FA\u4EF6\u53EA\u80FD\u5728\u65B9\u6848\u5546\u6388\u6743\u7684\u4E3B\u63A7\u82AF\u7247\u4E0A\u8FD0\u884C \u4ED6\u4EBA\u4E0D\u80FD\u901A\u8FC7\u62F7\u8D1D SPI NOR \u4E0A\u7684\u56FA\u4EF6\u5728\u4E0D\u7ECF \u65B9\u6848\u5546 \u6388\u6743\u7684\u4E3B\u63A7\u82AF\u7247\u4E0A\u8FD0\u884C \u65B9\u6848\u4ECB\u7ECD \u672C\u65B9\u6848\u901A\u8FC7\u4F7F\u7528 AIC \u4E3B\u63A7\u7684...","topics/sdk/secure/spienc_function_d13x.html@@@\u9632\u6284\u677F-SPIENC-D13x@@@\u5E94\u7528\u573A\u666F \u672C\u65B9\u6848\u9488\u5BF9\u4E0B\u5217\u4F7F\u7528\u573A\u666F\uFF1A \u65B9\u6848\u5546\u63D0\u4F9B\u4E3B\u63A7\u82AF\u7247\u548C\u5F00\u53D1\u597D\u7684\u56FA\u4EF6\u7ED9\u7B2C\u4E09\u65B9\u751F\u4EA7\u5546 \u751F\u4EA7, \u65B9\u6848\u5546\u5BF9\u81EA\u5DF1\u7684\u56FA\u4EF6\u8FDB\u884C\u4FDD\u62A4 \u65B9\u6848\u5546\u5F00\u53D1\u4E86\u5305\u542B\u67D0\u4E00\u529F\u80FD\u7684\u56FA\u4EF6 \u751F\u4EA7\u5546\u4E0D\u8FDB\u884C\u5F00\u53D1\uFF0C\u800C\u4F7F\u7528\u65B9\u6848\u5546\u63D0\u4F9B\u7684\u56FA\u4EF6 \u65B9\u6848\u5546\u4E3A\u4E86\u4FDD\u62A4\u81EA\u5DF1\u7684\u56FA\u4EF6\uFF0C\u4F1A\u8981\u6C42\u81EA\u5DF1\u7684\u56FA\u4EF6\u53EA\u80FD\u5728\u65B9\u6848\u5546\u6388\u6743\u7684\u4E3B\u63A7\u82AF\u7247\u4E0A\u8FD0\u884C \u4ED6\u4EBA\u4E0D\u80FD\u901A\u8FC7\u62F7\u8D1D SPI NOR \u4E0A\u7684\u56FA\u4EF6\u5728\u4E0D\u7ECF \u65B9\u6848\u5546 \u6388\u6743\u7684\u4E3B\u63A7\u82AF\u7247\u4E0A\u8FD0\u884C \u65B9\u6848\u4ECB\u7ECD \u672C\u65B9\u6848\u901A\u8FC7\u4F7F\u7528 AIC \u4E3B\u63A7\u7684...","topics/sdk/spi/spi-data_struct.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@enum spi_mode_type { SINGLE_HALF_DUPLEX_RX, SINGLE_HALF_DUPLEX_TX, SINGLE_FULL_DUPLEX_RX_TX, DUAL_HALF_DUPLEX_RX, DUAL_HALF_DUPLEX_TX, QUAD_HALF_DUPLEX_RX, QUAD_HALF_DUPLEX_TX, MODE_TYPE_NULL, }...","topics/sdk/spi/spi-key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B aic_spi_probe(); |-> irq = platform_get_irq(pdev, 0 ); |-> ctlr = spi_alloc_master(&pdev->dev, sizeof ( struct aic_spi)); |-> platform_set_drvdata(pdev, ctlr); |-> aicspi->dma_rx =...","topics/sdk/spi/spi_config.html@@@QSPI \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u4F7F\u80FD SPI \u76F8\u5173\u7684\u5185\u6838\u9A71\u52A8\uFF0C\u53EF\u5728\u901A\u8FC7\u4E0B\u5217\u547D\u4EE4\u8FDB\u884C\u914D\u7F6E\uFF08\u5728 SDK \u9876\u5C42\u76EE\u5F55\u6267\u884C\uFF09: \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u7684\u914D\u7F6E\u754C\u9762\u4E2D\uFF0C\u8FDB\u884C\u4E0B\u5217\u7684\u9009\u62E9\uFF1A Device Drivers ---> [*] SPI support ---> <*> ArtInChip...","topics/sdk/spi/spi_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u4F7F\u80FD QSPI \u76F8\u5173\u7684\u5185\u6838\u9A71\u52A8\uFF0C\u53EF\u5728\u901A\u8FC7\u4E0B\u5217\u547D\u4EE4\u8FDB\u884C\u914D\u7F6E\uFF08\u5728 SDK \u9876\u5C42\u76EE\u5F55\u6267\u884C\uFF09: scons --menuconfig \u5728 SDK \u7684\u914D\u7F6E\u754C\u9762\u4E2D\uFF0C\u8FDB\u884C\u4E0B\u5217\u7684\u9009\u62E9: Board options ---> [*] Using qspi0 [ ] Using qspi1 [ ] Using qspi2 [ ] Using qspi3 \u5728\u4E0A\u9762\u7684\u914D\u7F6E\u754C\u9762\u4E0A\uFF0C\u9009\u62E9\u5BF9\u5E94\u7684 QSPI\uFF0C\u5373\u53EF\u4F7F\u80FD\u5BF9\u5E94...","topics/sdk/spi/spi_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u4F7F\u80FD SPI \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u8FDB\u5165\u914D\u7F6E\u754C\u9762\uFF1A Linux Kernel hacking ArtInChip Debug [*] SPI driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5 -O0 \u7F16\u8BD1\u3002...","topics/sdk/spi/spi_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u53EF\u901A\u8FC7\u5185\u6838\u914D\u7F6E\u4F7F\u80FD SPI \u6A21\u5757\u7684 DEBUG \u9009\u9879\u3002\u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C: scons --menuconfig \u914D\u7F6E\u754C\u9762: Drivers options ---> Drivers debug ---> [*] Enable QSPI driver debug \u52FE\u9009\u4F7F\u80FD\u8BE5 DEBUG \u9009\u9879\u540E: SPI \u9A71\u52A8\u4E2D\u7684\u5173\u952E\u6253\u5370\u4FE1\u606F\u4F1A\u88AB\u7F16\u8BD1\u3002...","topics/sdk/spi/spi_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u8868 1 . \u6E90\u7801\u8BF4\u660E \u76F8\u5173\u6A21\u5757 \u6E90\u7801\u8DEF\u5F84 SPI subsystem source/linux-5.10/drivers/spi/ Driver source/linux-5.10/drivers/spi/ \u6A21\u5757\u67B6\u6784 \u56FE 1 . \u5185\u6838 SPI \u6846\u56FE \u7531\u4E8E\u4F7F\u7528 SPI \u7684\u5916\u8BBE\u8F83\u591A\uFF0C\u5185\u6838\u4E2D\u901A\u8FC7 SPI \u5B50\u7CFB\u7EDF\u6765\u652F\u6301\u5404\u79CD SPI \u5916\u8BBE\uFF0C\u6574\u4F53\u67B6\u6784\u5982\u4E0A\u56FE\u6240\u793A\uFF0C\u5305\u62EC\uFF1A ArtInChip SPI \u9A71\u52A8 SPI...","topics/sdk/spi/spi_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u8868 1 . \u76F8\u5173\u6A21\u5757 \u6E90\u7801\u8DEF\u5F84 SPI Driver framework kernel/rt-thread/components/drivers/spi Driver bsp/artinchip/drv/qspi HAL bsp/artinchip/hal/qspi \u6A21\u5757\u67B6\u6784 \u56FE 1 . Luban-Lite QSPI \u6846\u56FE RT-Thread \u900F\u8FC7\u5176\u5B9A\u4E49\u7684 QSPI/SPI...","topics/sdk/spi/spi_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/spi/spi_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/spi/spi_interface.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . aic_spi_setup \u51FD\u6570\u539F\u578B int aic_spi_setup(struct spi_device *spi) \u529F\u80FD\u8BF4\u660E SPI \u8BBE\u5907\u7684\u4F20\u8F93\u4F4D\u5BBD\u3001\u6A21\u5F0F\u7684\u68C0\u67E5\u548C\u914D\u7F6E \u53C2\u6570\u5B9A\u4E49 struct spi_device *spiSPI \u8BBE\u5907\u6307\u9488 \u8FD4\u56DE\u503C 0: \u6210\u529F\u5176\u4ED6: \u5931\u8D25 \u6CE8\u610F\u4E8B\u9879 - \u8868 2 . aic_spi_set_cs \u51FD\u6570\u539F\u578B void...","topics/sdk/spi/spi_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@...","topics/sdk/spi/spi_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 Luban-Lite \u4E2D\u5B9E\u73B0\u4E86\u4E00\u4E2A qspidev \u7684\u6D4B\u8BD5\u5DE5\u5177\uFF0C\u53EF\u4EE5\u7528\u4E8E\u6D4B\u8BD5 QSPI Device \u7684\u8BFB\u5199\u8BBF\u95EE\u3002 \u7F16\u8BD1\u4F7F\u80FD\u914D\u7F6E\u5982\u4E0B\u3002 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \u547D\u4EE4\uFF0C\u8FDB\u5165\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options ---> Drivers examples ---> [*] Enable QSPI driver test command...","topics/sdk/spi/spi_user_guide.html@@@QSPI \u4F7F\u7528\u6307\u5357@@@Serial Peripheral Interface (SPI) \u662F\u4E00\u79CD\u9AD8\u901F\u3001\u5168\u53CC\u5DE5\u7684\u540C\u6B65\u901A\u4FE1\u603B\u7EBF\u3002\u7531\u4E8E\u5176\u5B9E\u73B0\u6BD4\u8F83\u7B80\u5355\uFF0C\u6CA1\u6709\u4E13\u5229\u9650\u5236\u7B49\uFF0C\u56E0\u6B64\u5728\u5404\u79CD\u5668\u4EF6\u4E2D\u5F97\u5230\u5E7F\u6CDB\u7684\u5E94\u7528\u3002 SPI \u603B\u7EBF\u662F\u4E00\u79CD\u884C\u4E1A\u4E8B\u5B9E\u6807\u51C6\uFF0C\u5E76\u6CA1\u6709\u7EDF\u4E00\u7684\u6807\u51C6\u5316\u7EC4\u7EC7\uFF0C\u4E0D\u540C\u5382\u5546\u5728\u5B9E\u9645\u5E94\u7528\u4E2D\u6F14\u5316\u51FA\u591A\u79CD\u5DE5\u4F5C\u6A21\u5F0F\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E SPI Serial Peripheral Interface \u4E32\u884C\u5916\u8BBE\u63A5\u53E3 Dual...","topics/sdk/spi/spi_user_guide_2.html@@@QSPI \u4F7F\u7528\u6307\u5357@@@Serial Peripheral Interface (SPI) \u662F\u4E00\u79CD\u9AD8\u901F\u3001\u5168\u53CC\u5DE5\u7684\u540C\u6B65\u901A\u4FE1\u603B\u7EBF\u3002\u7531\u4E8E\u5176\u5B9E\u73B0\u6BD4\u8F83\u7B80\u5355\uFF0C\u6CA1\u6709\u4E13\u5229\u9650\u5236\u7B49\uFF0C\u56E0\u6B64\u5728\u5404\u79CD\u5668\u4EF6\u4E2D\u5F97\u5230\u5E7F\u6CDB\u7684\u5E94\u7528\u3002 SPI \u603B\u7EBF\u662F\u4E00\u79CD\u884C\u4E1A\u4E8B\u5B9E\u6807\u51C6\uFF0C\u5E76\u6CA1\u6709\u7EDF\u4E00\u7684\u6807\u51C6\u5316\u7EC4\u7EC7\uFF0C\u4E0D\u540C\u5382\u5546\u5728\u5B9E\u9645\u5E94\u7528\u4E2D\u6F14\u5316\u51FA\u591A\u79CD\u5DE5\u4F5C\u6A21\u5F0F\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E SPI Serial Peripheral Interface \u4E32\u884C\u5916\u8BBE\u63A5\u53E3 Dual...","topics/sdk/spienc/enc_config_guide.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF08\u914D\u7F6E\u53EA\u6253\u5F00\u4E86 QSPI0 \u7684\u52A0\u5BC6\u4F7F\u80FD\uFF0C\u4F5C\u4E3A\u793A\u4F8B\uFF09\uFF1A Board options ---> [*] Using spienc ---> [*] Enc qspi0 SPIENC \u4E2D\u7684 Tweak \u53EF\u4EE5\u5F71\u54CD COUNTER \u7684\u751F\u6210\uFF0C\u8FDB\u800C\u6539\u53D8\u52A0\u5BC6\u7684\u7ED3\u679C\u3002...","topics/sdk/spienc/enc_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/spienc/enc_design_introduction.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E bsp/artinchip/drv/spienc/drv_spienc.c\uFF0CSPIENC Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/spienc/hal_spienc.c\uFF0CSPIENC HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_spienc.h\uFF0CSPIENC HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784 SPIENC \u9A71\u52A8 Driver \u5C42\u91C7\u7528\u76F4\u63A5\u8C03\u7528...","topics/sdk/spienc/enc_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/spienc/enc_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/spienc/enc_introduction.html@@@SPI ENC \u4F7F\u7528\u6307\u5357@@@SPI_ENC \u662F\u4E00\u4E2A\u5BF9 SPI \u603B\u7EBF\u4E0A\u7684\u6570\u636E\u8FDB\u884C\u5728\u7EBF\u52A0\u5BC6\u548C\u89E3\u5BC6\u7684\u6A21\u5757\u3002 \u4F7F\u7528\u8BE5\u6A21\u5757\uFF0C\u53EF\u5B9E\u73B0\u5BF9 CPU \u900F\u660E\u7684 SPI \u6570\u636E\u52A0\u5BC6\u5B58\u50A8\uFF0C\u5373 CPU \u5BF9 SPI \u5B58\u50A8\u8BBE\u5907\u7684\u8BFB\u5199\u6570\u636E\u90FD\u662F\u660E\u6587\uFF0C \u4F46\u5B58\u50A8\u5728 SPI \u8BBE\u5907\u4E0A\u7684\u6570\u636E\u662F\u5BC6\u6587\uFF0C\u6570\u636E\u7684\u52A0\u5BC6\u548C\u89E3\u5BC6\u64CD\u4F5C\u5728 SPI \u603B\u7EBF\u6570\u636E\u4F20\u8F93\u8FC7\u7A0B\u4E2D\u5B8C\u6210\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E AES Advanced Encryption Standard...","topics/sdk/spienc/enc_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@...","topics/sdk/spienc/spi-enc-architecture.html@@@\u6A21\u5757\u67B6\u6784@@@SPIENC \u9A71\u52A8 Driver \u5C42\u91C7\u7528\u76F4\u63A5\u8C03\u7528 HAL \u5C42\u7684\u63A5\u53E3\uFF0C\u5982\u679C\u53EA\u4F7F\u7528 HAL \u5C42\u4E5F\u53EF\u4EE5\u652F\u6301 Baremetal \u65B9\u5F0F\u7684\u5E94\u7528\u573A\u666F\u3002 \u56FE 1 . SPIENC \u9A71\u52A8\u7684\u8F6F\u4EF6\u67B6\u6784\u56FE \u6587\u4EF6\u7CFB\u7EDF\u6216\u8005\u5E94\u7528\u7A0B\u5E8F\u901A\u8FC7 MTD \u5C42\u8BBF\u95EE SPI NOR / SPI NAND \u8BBE\u5907\u7684\u6570\u636E\uFF0CSPI NOR / SPI NAND \u9A71\u52A8\u5728\u901A\u8FC7 SPI \u603B\u7EBF\u4F20\u8F93\u6570\u636E\u3002 \u5728 SPI NOR / SPI NAND \u9A71\u52A8\u901A\u8FC7...","topics/sdk/spienc/spi-enc-configuration.html@@@SPI ENC \u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF08\u914D\u7F6E\u53EA\u6253\u5F00\u4E86 QSPI0 \u7684\u52A0\u5BC6\u4F7F\u80FD\uFF0C\u4F5C\u4E3A\u793A\u4F8B\uFF09\uFF1A Board options ---> [*] Using spienc ---> [*] Enc qspi0 SPIENC \u4E2D\u7684 Tweak \u53EF\u4EE5\u5F71\u54CD COUNTER \u7684\u751F\u6210\uFF0C\u8FDB\u800C\u6539\u53D8\u52A0\u5BC6\u7684\u7ED3\u679C\u3002...","topics/sdk/spienc/spi-enc-data_structure_design.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@\u8BBE\u5907\u6570\u636E\u7ED3\u6784\u3002 struct aic_spienc_drvdata { struct attribute_group attrs; struct device *dev; void __iomem *base; struct clk *clk; struct skcipher_request *req; u32 tweak; /* Tweak value for hardware to...","topics/sdk/spienc/spi-enc-debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u901A\u8FC7\u5185\u6838\u914D\u7F6E\u4F7F\u80FD SPI_ENC \u6A21\u5757\u7684 DEBUG \u9009\u9879\uFF1A \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u7684\u914D\u7F6E\u754C\u9762\uFF0C\u52FE\u9009\u4E0B\u5217\u9009\u9879\uFF1A Linux Kernel hacking Artinchip Debug [*] SPI ENC driver debug \u6253\u5F00 DEBUG...","topics/sdk/spienc/spi-enc-design_intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u4F4D\u4E8E\uFF1A bsp/artinchip/drv/spienc/drv_spienc.c \uFF0CSPIENC Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/spienc/hal_spienc.c \uFF0CSPIENC HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_spienc.h \uFF0CSPIENC HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6...","topics/sdk/spienc/spi-enc-interface_design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . aic_spienc_alg_init \u51FD\u6570\u539F\u578B int aic_spienc_alg_init(struct crypto_skcipher *tfm) \u529F\u80FD\u8BF4\u660E \u5BF9\u79F0\u5BC6\u94A5\u7B97\u6CD5\u7684\u521D\u59CB\u5316\u51FD\u6570 \u53C2\u6570\u5B9A\u4E49 struct crypto_skcipher *tfm \u7B97\u6CD5\u5B9E\u4F8B\u6307\u9488 \u8FD4\u56DE\u503C 0: \u6210\u529F \u5176\u4ED6: \u5931\u8D25 \u6CE8\u610F\u4E8B\u9879 - \u8868 2 . aic_spienc_probe \u51FD\u6570\u539F\u578B int...","topics/sdk/spienc/spi-enc-key-design-intro.html@@@\u8BBE\u8BA1\u8981\u70B9@@@\u5728\u8BBE\u8BA1\u5B9E\u73B0 SPI_ENC \u7684\u9A71\u52A8\u65F6\uFF0C\u4E3B\u8981\u8003\u8651\u4E86 SPI_ENC \u7684\u672C\u8EAB\u7279\u70B9\uFF0C\u4EE5\u53CA\u4E0E SPI NOR / SPI NAND \u9A71\u52A8\u7684\u7ED3\u5408\u3002 \u6CE8\uFF1A \u7531\u4E8E SPI_ENC \u5185\u90E8\u4F7F\u7528 eFuse \u6240\u63D0\u4F9B\u7684\u5BC6\u94A5\uFF0C\u56E0\u6B64\u4E0D\u9700\u8981\u901A\u8FC7\u5916\u90E8\u8BBE\u7F6E\u5BC6\u94A5\u51FD\u6570\u6765\u8BBE\u7F6E\u5BC6\u94A5\u3002 \u6570\u636E\u8BFB\u5199\u65F6\u542F\u7528 SPI NAND / SPI NOR \u9A71\u52A8\u901A\u8FC7\u53D1\u9001\u547D\u4EE4\u7684\u65B9\u5F0F\u4E0E SPI NAND / SPI NOR \u5668\u4EF6\u8FDB\u884C\u4EA4\u4E92\uFF0C\u4ECE\u800C\u5B9E\u73B0\u6570\u636E\u7684\u8BFB\u5199\u3002...","topics/sdk/spienc/spi-enc-key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316 aic_spienc_probe(); |-> drvdata->base = devm_platform_ioremap_resource(pdev, 0 ); |-> irq = platform_get_irq(pdev, 0 ); |-> devm_request_threaded_irq(dev, irq, aic_spienc_irq_handler...","topics/sdk/spienc/spi-enc-terms.html@@@\u672F\u8BED\u5B9A\u4E49@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E AES Advanced Encryption Standard \u4E00\u79CD\u5BF9\u79F0\u5206\u7EC4\u5BC6\u94A5\u7B97\u6CD5 ECB Electronic Code Book \u7535\u5B50\u5BC6\u7801\u672C\u6A21\u5F0F CTR Counter \u8BA1\u6570\u5668\u6A21\u5F0F SPI Serial Peripheral Interface \u4E32\u884C\u5916\u8BBE\u63A5\u53E3 BROM Boot ROM \u56FA\u5316\u5728\u82AF\u7247\u4E2D\u7684\u542F\u52A8\u7A0B\u5E8F...","topics/sdk/spienc/spi-enc-test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@...","topics/sdk/spienc/spi-enc-user-guide.html@@@SPI ENC@@@Serial Peripheral Interface Encryption (SPI ENC) \u6A21\u5757\u7528\u4E8E\u5BF9 SPI \u603B\u7EBF\u4E0A\u7684\u6570\u636E\u8FDB\u884C\u5728\u7EBF\u52A0\u5BC6\u548C\u89E3\u5BC6\uFF0C\u5B9E\u73B0\u5BF9 CPU \u900F\u660E\u7684 SPI \u6570\u636E\u52A0\u5BC6\u5B58\u50A8\u3002\u5373 CPU \u5BF9 SPI \u5B58\u50A8\u8BBE\u5907\u7684\u8BFB\u5199\u6570\u636E\u662F\u660E\u6587\uFF0C\u4F46\u5B58\u50A8\u5728 SPI \u8BBE\u5907\u4E0A\u7684\u6570\u636E\u662F\u5BC6\u6587\uFF0C\u6570\u636E\u7684\u52A0\u5BC6\u548C\u89E3\u5BC6\u64CD\u4F5C\u5728\u6570\u636E\u4F20\u8F93\u8FC7\u7A0B\u4E2D\u5B8C\u6210\u3002 SPI ENC \u7528\u4E8E SPI \u5B58\u50A8\u8BBE\u5907\uFF0C\u5373 SPI NOR/ SPI...","topics/sdk/spinand/spi-nand-debug_guide-lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 Drivers options ---> Drivers debug ---> [*] Enable SPINAND driver debug //\u6253\u5F00 spinand \u8C03\u8BD5\u63A5\u53E3 Rt-Thread options ---> RT-Thread Components ---> Device Drivers ---> Using MTD Nand Flash device drivers...","topics/sdk/spinand/spi-nand-transplant-guide.html@@@SPI NAND \u79FB\u690D@@@SPI NAND \u79FB\u690D\u5DE5\u4F5C\u9700\u8981 SoC \u7AEF SPI \u6A21\u5757\u7684\u9A71\u52A8\u80FD\u529B\u4EE5\u53CA\u5BF9 SPI NAND \u6A21\u5757\u7684\u6B63\u786E\u914D\u7F6E\u3002 \u672C\u8282\u4EE5 Fudan Micro \u7684 FM25S01A \u4EE5\u53CA Foresee \u7684 F35SQA002G \u4E3A\u4F8B\uFF0C\u8BE6\u7EC6\u8BF4\u660E SPI NAND \u5668\u4EF6\u7684\u79FB\u690D\u6D41\u7A0B\u3002SPI NAND \u5728 U-Boot \u548C Kernel \u4E2D\u7684\u5B9E\u73B0\u903B\u8F91\u7C7B\u4F3C\uFF0C\u6587\u4EF6\u8DEF\u5F84\u548C\u5185\u5BB9\u57FA\u672C\u4E00\u81F4\uFF0C\u672C\u6587\u4EE5 Kernel...","topics/sdk/spinand/spi-nand-user-guide.html@@@SPI NAND \u4F7F\u7528\u6307\u5357@@@\u672C\u6587\u6863\u4ECB\u7ECD\u5982\u4F55\u4F7F\u7528 SPI NAND \u6A21\u5757\uFF0C\u8BE5\u6A21\u5757\u5B9E\u73B0\u4E86\u5BF9 SPI NAND \u8BBE\u5907\u7684\u9A71\u52A8\uFF0C\u5411\u4E0A\u63D0\u4F9B SPI NAND \u64CD\u4F5C\u7684 API\uFF0C\u5411\u4E0B\u5BF9\u63A5 QSPI \u603B\u7EBF\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E SPI Serial Peripheral Interface \u6807\u51C6\u4E32\u884C\u5916\u8BBE\u63A5\u53E3 DUAL SPI Dual Serial Peripheral Interface 2 \u7EBF data...","topics/sdk/spinand/spi-nand-user-guide_2.html@@@SPI NAND \u4F7F\u7528\u6307\u5357@@@\u672C\u6587\u6863\u4ECB\u7ECD\u5982\u4F55\u4F7F\u7528 SPI NAND \u6A21\u5757\uFF0C\u8BE5\u6A21\u5757\u5B9E\u73B0\u4E86\u5BF9 SPI NAND \u8BBE\u5907\u7684\u9A71\u52A8\uFF0C\u5411\u4E0A\u63D0\u4F9B SPI NAND \u64CD\u4F5C\u7684 API\uFF0C\u5411\u4E0B\u5BF9\u63A5 QSPI \u603B\u7EBF\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E SPI Serial Peripheral Interface \u6807\u51C6\u4E32\u884C\u5916\u8BBE\u63A5\u53E3 DUAL SPI Dual Serial Peripheral Interface 2 \u7EBF data...","topics/sdk/spinand/spi-nand_baremetal_design_guide-lite.html@@@Baremetal \u8BBE\u8BA1\u8BF4\u660E@@@Baremetal \u6E90\u7801\u8BF4\u660E \u8868 1 . \u76F8\u5173\u6A21\u5757 \u6E90\u7801\u8DEF\u5F84 Application bsp/examples_bare/mtd.c \u7528\u6237\u53EF\u4EE5\u53C2\u8003\u6B64\u6587\u4EF6\u8FDB\u884C\u6D4B\u8BD5\u5F00\u53D1\u3002 mtd bsp/artinchip/drv_bare/mtd/ spinand bsp/peripheral/spinand bsp/artinchip/drv_bare/spinand/spinand_port.c...","topics/sdk/spinand/spi-nand_config-lite.html@@@SPI NAND \u914D\u7F6E@@@SPI NAND \u9A71\u52A8\u914D\u7F6E Baremetal \u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\u3002 Board options ---> [*] Using Qspi0 [ ] Using Qspi1 [ ] Using Qspi2 [ ] Using Qspi3 Qspi0 Parameter --->...","topics/sdk/spinand/spi-nand_config.html@@@SPI NAND \u914D\u7F6E@@@\u914D\u7F6E\u9A71\u52A8\u5C42\u6B21\u5173\u7CFB SPI NAND \u5C5E\u4E8E SPI \u7684\u4ECE\u8BBE\u5907\uFF0C\u5728\u5185\u6838\u4E2D\u76F8\u5173\u9A71\u52A8\u901A\u8FC7 SPI MEM \u5BF9\u63A5\u5230 SPI \u5B50\u7CFB\u7EDF\u3002 SPI \u63A7\u5236\u5668\u521D\u59CB\u5316 \u5728\u521D\u59CB\u5316\u8FC7\u7A0B\u4E2D\uFF0CSPI \u9A71\u52A8\u4F1A\u68C0\u67E5 SPI \u63A7\u5236\u5668\u4E0B\u662F\u5426\u6709\u6302\u8F7D\u7684 SPI NAND \u8BBE\u5907\u3002\u5982\u6709\uFF0C\u5219\u5C06 SPI NAND \u8BBE\u5907\u6DFB\u52A0\u5230 SPI BUS \u4E2D\uFF1A aic_spi_probe(dev); |->...","topics/sdk/spinand/spi-nand_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/spinand/spi-nand_lib_design_guide.html@@@SPINAND \u5E93\u8BBE\u8BA1\u8BF4\u660E@@@SPINAND \u5E93\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1 struct aic_spinand \u5B9A\u4E49\u4E86 SPINAND \u63A7\u5236\u5668\u7BA1\u7406\u4FE1\u606F\uFF1A struct aic_spinand { const struct aic_spinand_info *info; struct spinand_id id; void *user_data; void *lock; u8 use_continuous_read; u8...","topics/sdk/spinand/spi-nand_rtos_design_guide_lite.html@@@RTOS \u8BBE\u8BA1\u8BF4\u660E@@@RTOS \u6E90\u7801\u8BF4\u660E \u8868 1 . RTOS \u6E90\u7801\u8BF4\u660E \u76F8\u5173\u6A21\u5757 \u6E90\u7801\u8DEF\u5F84 mtd blk kernel/rt-thread/components/drivers/mtd/mtd_nand.c //mtd \u8BBE\u5907\u901A\u7528\u5E73\u53F0 bsp/artinchip/drv/spinand/spinand_port.c //mtd \u8BBE\u5907\u901A\u7528\u5E73\u53F0\u5BF9\u63A5...","topics/sdk/spinand/spi-nand_table.html@@@\u914D\u7F6E xxx_spinand_table@@@xxx_spinand_table \u6570\u636E\u7ED3\u6784\u4E3A\u7B2C\u4E8C\u7EA7\u7D22\u5F15\uFF0C\u63CF\u8FF0\u5382\u5546\u7684\u7CFB\u5217\u5668\u4EF6\u4FE1\u606F\uFF0C\u662F SPI NAND \u9A71\u52A8\u7684\u6838\u5FC3\uFF0C\u63CF\u8FF0\u4E86\u4E0B\u5217\u53C2\u6570\u4FE1\u606F\uFF1A static const struct spinand_info foresee_spinand_table[] = { SPINAND_INFO( "F35SQA002G"...","topics/sdk/spinand/spi-nand_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F\uFF0C\u6216\u8005 FPGA \u677F\u5B50 \u677F\u5B50\u4E0A\u5FC5\u987B\u8981\u63A5\u6709 SPINAND \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 RT-Thread DFS \u7EC4\u4EF6\u81EA\u5E26\u4E86\u4E00\u4E9B\u547D\u4EE4\u7684\u6587\u4EF6\u64CD\u4F5C\u5DE5\u5177\uFF0C\u5982 cp\u3001mkdir \u7B49 \u7F16\u8BD1\u70E7\u5F55 \u914D\u7F6E\u5B8C\u6210\u540E\uFF0C\u4FDD\u5B58\u9000\u51FA\uFF0C\u7F16\u8BD1\u3001\u70E7\u5F55 \u9A8C\u8BC1 SPI NAND \u8BC6\u522B \u70E7\u5F55\u5B8C\u6210\u540E\uFF0C\u65AD\u5F00\u7535\u6E90\u5E76\u4E0A\u7535\uFF0C\u4F7F\u7528\u4E0B\u5217\u547D\u4EE4\u68C0\u67E5\u8BBE\u5907\uFF1A list_device \u5728\u8F93\u51FA\u7ED3\u679C\u4E2D\uFF0C\u770B\u5230...","topics/sdk/spinor/spinor_config.html@@@SPI NOR \u914D\u7F6E@@@\u4FEE\u6539 DTS \u8981\u5728\u5B9E\u9645\u9879\u76EE\u4E2D\u4F7F\u7528 SPI NOR \u8BBE\u5907\uFF0C\u8FD8\u9700\u8981\u4FEE\u6539 DTS \u914D\u7F6E\uFF0C\u8BE6\u7EC6\u6D41\u7A0B\u5982\u4E0B\u6240\u793A\uFF1A \u5728 board.dts \u4E2D\u5177\u4F53\u7684 SPI \u63A7\u5236\u5668\u4E0B\u6DFB\u52A0 jedec,spi-nor \u8BBE\u5907\u3002 &spi0 { pinctrl-names = "default" ; pinctrl- 0 = <&spi0_pins_a>; status = "okay" ; spi-max-frequency =...","topics/sdk/spinor/spinor_config_lite.html@@@SPI NOR \u914D\u7F6E@@@SPI NOR \u9A71\u52A8\u914D\u7F6E Baremetal \u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [*] Using Qspi0 [ ] Using Qspi1 [ ] Using Qspi2 [ ] Using Qspi3 Qspi0 Parameter ---> (...","topics/sdk/spinor/spinor_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/spinor/spinor_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@Baremetal \u6E90\u7801\u8BF4\u660E \u8868 1 . Baremetal \u6E90\u7801\u8BF4\u660E \u76F8\u5173\u6A21\u5757 \u6E90\u7801\u8DEF\u5F84 Application bsp/examples_bare/mtd.c mtd bsp/artinchip/drv_bare/mtd/ SFUD bsp/peripheral/spinor_sfud bsp/artinchip/drv_bare/spinor/sfud_port.c qspi...","topics/sdk/spinor/spinor_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/spinor/spinor_linux_transplant.html@@@Linux \u79FB\u690D@@@SPI NOR \u9A71\u52A8 Linux \u548C U-Boot \u7684\u9A71\u52A8\u4E0D\u4E00\u6837\uFF0CLinux \u4E2D\u9A71\u52A8\u66F4\u590D\u6742\u4E00\u4E9B\uFF0C\u672C\u7AE0\u9610\u8FF0\u5982\u4F55\u5728 Linux \u4E2D\u8FDB\u884C SPI NOR \u5668\u4EF6\u7684\u79FB\u690D\u5DE5\u4F5C\uFF0C\u4EE5 Gigadevice \u7684 gd25q128 \u548C FudanMicro \u7684 FM25Q128 \u4E3A\u4F8B \u79FB\u690D\u4E00\u6B3E SPI NOR\uFF0C\u6700\u91CD\u8981\u7684\u662F JEDEC ID\uFF0C\u901A\u8FC7\u5728\u6570\u636E\u624B\u518C\u4E2D\u67E5\u627E 0x9F \u547D\u4EE4\u83B7\u5F97...","topics/sdk/spinor/spinor_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F\uFF0C\u6216\u8005 FPGA \u677F\u5B50 \u677F\u5B50\u4E0A\u5FC5\u987B\u8981\u63A5\u6709 SPINOR \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 RT-Thread DFS \u7EC4\u4EF6\u81EA\u5E26\u4E86\u4E00\u4E9B\u547D\u4EE4\u7684\u6587\u4EF6\u64CD\u4F5C\u5DE5\u5177\uFF0C\u5982 cp\u3001mkdir \u7B49 \u7F16\u8BD1\u70E7\u5F55 \u914D\u7F6E\u5B8C\u6210\u540E\uFF0C\u4FDD\u5B58\u9000\u51FA\uFF0C\u7F16\u8BD1\u3001\u70E7\u5F55 \u9A8C\u8BC1 SPINOR \u8BC6\u522B SPINOR \u8BC6\u522B \u70E7\u5F55\u5B8C\u6210\u540E\uFF0C\u65AD\u5F00\u7535\u6E90\u540E\u4E0A\u7535\uFF0C\u4F7F\u7528 list_device...","topics/sdk/spinor/spinor_uboot_transplant.html@@@U-Boot \u79FB\u690D@@@SPI NOR \u8981\u5DE5\u4F5C\u65E2\u9700\u8981 SoC \u7AEF SPI \u6A21\u5757\u7684\u9A71\u52A8\u80FD\u529B\uFF0C\u4E5F\u9700\u8981\u5BF9 SPI NOR \u6A21\u5757\u7684\u6B63\u786E\u914D\u7F6E\uFF0C\u672C\u7AE0\u9610\u8FF0\u5982\u4F55\u8FDB\u884C SPI NOR \u5668\u4EF6\u7684\u79FB\u690D\u5DE5\u4F5C\uFF0C\u4EE5 CFX \u7684 GM25Q128A \u548C FudanMicro \u7684 FM25Q128 \u4E3A\u4F8B\u3002 U-Boot \u4E2D\u79FB\u690D\u4E00\u6B3E SPI NOR\uFF0C\u6700\u91CD\u8981\u7684\u662F JEDEC ID\uFF0C\u901A\u8FC7\u5728\u6570\u636E\u624B\u518C\u4E2D\u67E5\u627E 0x9F \u547D\u4EE4\u83B7\u5F97...","topics/sdk/spinor/spinor_user_guide.html@@@SPI NOR \u4F7F\u7528\u6307\u5357@@@SPI NOR \u5C5E\u4E8E SPI \u7684\u4ECE\u8BBE\u5907\uFF0C\u5728\u5185\u6838\u4E2D\u76F8\u5173\u9A71\u52A8\u901A\u8FC7 SPI MEM \u5BF9\u63A5\u5230 SPI \u5B50\u7CFB\u7EDF\u3002 \u5728 SPI \u63A7\u5236\u5668\u521D\u59CB\u5316\u65F6\uFF0CSPI \u9A71\u52A8\u4F1A\u68C0\u67E5\u8BE5\u63A7\u5236\u5668\u4E0B\u662F\u5426\u6709\u6302\u8F7D\u7684 SPI NOR\uFF0C\u6709\u5219\u6DFB\u52A0\u5230 SPI BUS \u4E2D\u3002 aic_spi_probe(dev); |-> spi_register_controller(ctlr);/spi_register_master(ctlr); //...","topics/sdk/spinor/spinor_user_guide_lite.html@@@SPI NOR \u4F7F\u7528\u6307\u5357@@@SPI NOR \u7684\u64CD\u4F5C\u57FA\u4E8E SFUD \u5E93\u5B9E\u73B0\u3002 SFUD \u662F\u4E00\u6B3E\u5F00\u6E90\u7684\u4E32\u884C SPI Flash \u901A\u7528\u9A71\u52A8\u5E93\u3002 \u7531\u4E8E\u73B0\u6709\u5E02\u9762\u7684\u4E32\u884C Flash \u79CD\u7C7B\u5C45\u591A\uFF0C\u5404\u4E2A Flash \u7684\u89C4\u683C\u53CA\u547D\u4EE4\u5B58\u5728\u5DEE\u5F02\u3002\u4E3A\u4E86\u89E3\u51B3 Flash \u7684\u5DEE\u5F02\u73B0\u72B6\uFF0C\u8BBE\u8BA1\u4E86 SFUD\uFF0C\u8BA9\u4EA7\u54C1\u80FD\u591F\u652F\u6301\u4E0D\u540C\u54C1\u724C\u53CA\u89C4\u683C\u7684 Flash\uFF0C\u63D0\u9AD8\u4E86\u6D89\u53CA\u5230 Flash \u529F \u80FD\u7684\u8F6F\u4EF6\u53EF\u91CD\u7528\u6027\u53CA\u53EF\u6269\u5C55\u6027\uFF0C\u540C\u65F6\u4E5F\u53EF\u4EE5\u89C4\u907F Flash...","topics/sdk/tsensor/tsensor-config-lite.html@@@TSensor \u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A scons --menuconfig \u5728 Board options \u4E2D\uFF0C\u52FE\u9009 Using TSensor \u3002 Board options ---> [*] Using TSensor \u5F53\u4F7F\u7528 RT-Thread TSensor \u9A71\u52A8\u9700\u8981\u4F9D\u8D56 RT-Thread...","topics/sdk/tsensor/tsensor-config.html@@@TSensor \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Linux Device Drivers [*] Thermal drivers <*> ArtInChip thermal driver DTS \u53C2\u6570\u914D\u7F6E TSensor \u9A71\u52A8\u652F\u6301\u4ECE DTS \u4E2D\u914D\u7F6E\u7684...","topics/sdk/tsensor/tsensor-data-structure.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@TSensor \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u5982\u4E0B\uFF1A struct aic_tsen_dev \uFF1A \u5C5E\u4E8E Driver \u5C42\u5185\u90E8\u4F7F\u7528\u7684\u6570\u636E\u7ED3\u6784\uFF0C \u7528\u4E8E\u7BA1\u7406 TSensor \u63A7\u5236\u5668\u7684\u8BBE\u5907\u8D44\u6E90 struct aic_tsen_dev { struct rt_sensor_device dev; u32 pclk_rate; struct aic_tsen_ch *ch; }; struct aic_tsen_ch...","topics/sdk/tsensor/tsensor-data-structure_2.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@TSensor \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u5982\u4E0B\uFF1A struct aic_tsen_dev \uFF1A \u5C5E\u4E8E Driver \u5C42\u5185\u90E8\u4F7F\u7528\u7684\u6570\u636E\u7ED3\u6784\uFF0C \u7528\u4E8E\u7BA1\u7406 TSensor \u63A7\u5236\u5668\u7684\u8BBE\u5907\u8D44\u6E90 struct aic_tsen_dev { struct rt_sensor_device dev; u32 pclk_rate; struct aic_tsen_ch *ch; }; struct aic_tsen_ch...","topics/sdk/tsensor/tsensor-debug-guide-lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D TSensor \u9A71\u52A8\u7684 Log \u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 ulog \u63A5\u53E3\uFF0C\u8868\u793A\u6240\u6709\u7684\u65E5\u5FD7\u4FE1\u606F\u90FD\u4F1A\u901A\u8FC7 ulog \u8FDB\u884C\u7EDF\u4E00\u7BA1\u7406\u548C\u8F93\u51FA\u3002 \u67E5\u770B\u63A7\u5236\u5668\u72B6\u6001 \u5728 TSensor \u9A71\u52A8\u521D\u59CB\u5316\u6210\u529F\u540E\uFF0C\u4F1A\u5728 shell \u547D\u4EE4\u884C\u4E2D\u6CE8\u518C\u751F\u6210\u4E00\u4E2A tsen_status \u547D\u4EE4\u3002\u8FD9\u4E2A\u547D\u4EE4\u6253\u5370\u4E86\u5F53\u524D\u7684\u914D\u7F6E\u53CA\u72B6\u6001\u4FE1\u606F\uFF1A tsen_status In Thermal Sensor V1...","topics/sdk/tsensor/tsensor-debug-guide.html@@@\u8C03\u8BD5\u6307\u5357@@@\u672C\u8282\u4ECB\u7ECD TSensor \u8C03\u8BD5\u6B65\u9AA4\u3002 \u6253\u5F00\u8C03\u8BD5\u5F00\u5173 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00\u8C03\u8BD5\u5F00\u5173\uFF1A Linux Kernel hacking ArtInChip Debug [*] Thermal Sensor driver debug \u6253\u5F00...","topics/sdk/tsensor/tsensor-demo-lite.html@@@Demo@@@\u4EE5\u4E0B\u4EE3\u7801\u7247\u6BB5\u5C55\u793A\u4E86\u4E00\u4E2A\u7528\u4E8E\u4F20\u611F\u5668\u8F6E\u8BE2\u7684\u51FD\u6570 sensor_polling \uFF0C\u53EF\u4EE5\u4F5C\u4E3A TSensor \u8BBE\u5907\u7684\u4F7F\u7528\u53C2\u8003\u3002 sensor_polling \u4ECE\u547D\u4EE4\u884C\u53C2\u6570\u4E2D\u83B7\u53D6\u8BBE\u5907\u540D\u79F0\u548C\u8BFB\u53D6\u6B21\u6570\uFF0C\u5E76\u8BFB\u53D6\u4F20\u611F\u5668\u6570\u636E\u5E76\u663E\u793A\u3002\u5173\u4E8E sensor_polling \u547D\u4EE4\u7684\u4EE3\u7801\uFF0C\u8BE6\u89C1 kernel/rt-thread/components/drivers/sensors/sensor_cmd.c \uFF1A static...","topics/sdk/tsensor/tsensor-design-intro-lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E TSensor \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/tsen/drv_tsen.c \uFF0CTSenor Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/tsen/hal_tsen.c \uFF0CTSenor HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_tsen.h \uFF0CTSenor HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784...","topics/sdk/tsensor/tsensor-design-intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E\uFF1A drivers/thermal/artinchip_thermal.c Linux \u5185\u6838\u4E2D\u6709\u4E00\u4E2A Thermal \u5B50\u7CFB\u7EDF\uFF0C\u4EE3\u7801\u76EE\u5F55\u89C1 drivers/thermal \uFF0C\u8F6F\u4EF6\u6846\u67B6\u5982\u4E0B\u56FE\uFF1A \u56FE 1 . Linux Thermal \u5B50\u7CFB\u7EDF\u67B6\u6784\u56FE \u5176\u4E2D\uFF1A zone device\uFF1A\u83B7\u53D6\u6E29\u5EA6\u7684\u8BBE\u5907 cool device\uFF1A\u63A7\u5236\u6E29\u5EA6\u7684\u8BBE\u5907\uFF0Ccool \u548C zone \u53EF\u4EE5\u8BBE\u7F6E bind \u5173\u7CFB\u3002...","topics/sdk/tsensor/tsensor-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6E29\u5EA6\u503C\u7684\u7CBE\u5EA6\u5B58\u5728\u8BEF\u5DEE \u6E29\u5EA6\u4F20\u611F\u5668\u7684\u786C\u4EF6\u91C7\u96C6\u5230\u7684\u6E29\u5EA6\u503C\u6570\u636E\u9700\u8981\u5148\u7ECF\u8FC7\u4E00\u5B9A\u7684\u8F6C\u6362\u7B97\u6CD5\uFF0C\u624D\u4F1A\u5F97\u5230\u4E00\u4E2A\u7C7B\u4F3C\u751F\u6D3B\u4E2D\u5E38\u89C1\u7684\u6E29\u5EA6\u503C\u3002\u6B64\u8F6C\u6362\u7B97\u6CD5\u7684\u7CBE\u5EA6\u4E00\u822C\u91C7\u7528\u7684\u662F\u7EBF\u6027\u62DF\u5408\u65B9\u6CD5\uFF0C\u7531\u4E8E\u5404\u79CD\u56E0\u7D20\u7684\u5F71\u54CD\u5B58\u5728\u4E00\u5B9A\u7684\u8BEF\u5DEE\uFF0C\u7279\u522B\u662F\u5728\u6E29\u5EA6\u8303\u56F4\u8F83\u5BBD\u6216\u4F20\u611F\u5668\u7279\u6027\u975E\u7EBF\u6027\u8F83\u5F3A\u65F6\u3002 \u7EBF\u6027\u62DF\u5408\u662F\u4E00\u79CD\u7B80\u5316\u7684\u8F6C\u6362\u65B9\u6CD5\uFF0C\u901A\u8FC7\u5728\u4E24\u4E2A\u5DF2\u77E5\u70B9\u4E4B\u95F4\u7ED8\u5236\u4E00\u6761\u76F4\u7EBF\u6765\u8FD1\u4F3C\u8868\u793A\u6E29\u5EA6\u4E0E\u4F20\u611F\u5668\u8F93\u51FA\u4E4B\u95F4\u7684\u5173\u7CFB\u3002 \u6E29\u5EA6\u5F02\u5E38 \u73B0\u8C61 TSensor...","topics/sdk/tsensor/tsensor-faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u6E29\u5EA6\u503C\u7684\u7CBE\u5EA6\u5B58\u5728\u8BEF\u5DEE \u6E29\u5EA6\u4F20\u611F\u5668\u7684\u786C\u4EF6\u91C7\u96C6\u5230\u7684\u6E29\u5EA6\u503C\u6570\u636E\u9700\u8981\u5148\u7ECF\u8FC7\u4E00\u5B9A\u7684\u8F6C\u6362\u7B97\u6CD5\uFF0C\u624D\u4F1A\u5F97\u5230\u4E00\u4E2A\u7C7B\u4F3C\u751F\u6D3B\u4E2D\u5E38\u89C1\u7684\u6E29\u5EA6\u503C\u3002\u6B64\u8F6C\u6362\u7B97\u6CD5\u7684\u7CBE\u5EA6\u4E00\u822C\u91C7\u7528\u7684\u662F\u7EBF\u6027\u62DF\u5408\u65B9\u6CD5\uFF0C\u7531\u4E8E\u5404\u79CD\u56E0\u7D20\u7684\u5F71\u54CD\u5B58\u5728\u4E00\u5B9A\u7684\u8BEF\u5DEE\uFF0C\u7279\u522B\u662F\u5728\u6E29\u5EA6\u8303\u56F4\u8F83\u5BBD\u6216\u4F20\u611F\u5668\u7279\u6027\u975E\u7EBF\u6027\u8F83\u5F3A\u65F6\u3002 \u7EBF\u6027\u62DF\u5408\u662F\u4E00\u79CD\u7B80\u5316\u7684\u8F6C\u6362\u65B9\u6CD5\uFF0C\u901A\u8FC7\u5728\u4E24\u4E2A\u5DF2\u77E5\u70B9\u4E4B\u95F4\u7ED8\u5236\u4E00\u6761\u76F4\u7EBF\u6765\u8FD1\u4F3C\u8868\u793A\u6E29\u5EA6\u4E0E\u4F20\u611F\u5668\u8F93\u51FA\u4E4B\u95F4\u7684\u5173\u7CFB\u3002 \u6E29\u5EA6\u5F02\u5E38 \u73B0\u8C61 TSensor...","topics/sdk/tsensor/tsensor-interface-design-lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u4EE5\u4E0B\u63A5\u53E3\u662F TSensor \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u7684\u6807\u51C6\u63A5\u53E3\u3002 \u8868 1 . aic_tsen_fetch \u51FD\u6570\u539F\u578B rt_size_t aic_tsen_fetch(struct rt_sensor_device *sensor, void *buf, rt_size_t len) \u529F\u80FD\u8BF4\u660E \u8BFB\u53D6 TSensor \u6E29\u5EA6\u6570\u636E \u53C2\u6570\u5B9A\u4E49 sensor - \u6307\u5411 sensor \u8BBE\u5907...","topics/sdk/tsensor/tsensor-interface-design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u4EE5\u4E0B\u63A5\u53E3\u63D0\u4F9B\u7ED9 Linux Thermal \u5B50\u7CFB\u7EDF\u8C03\u7528\u7684\u6807\u51C6\u63A5\u53E3\uFF1A \u8868 1 . tsen_cpu_get_temp \u51FD\u6570\u539F\u578B static inline int tsen_cpu_get_temp(struct thermal_zone_device *thermal, int *temp) \u529F\u80FD\u8BF4\u660E \u8BFB\u53D6 CPU \u4F4D\u7F6E\u5904\u7684 sensor \u6E29\u5EA6\u6570\u636E \u53C2\u6570\u5B9A\u4E49 thermal - \u6307\u5411 zone...","topics/sdk/tsensor/tsensor-key-procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B TSensor \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u901A\u8FC7 INIT_DEVICE_EXPORT(drv_tsen_init) \u5B8C\u6210\uFF0C\u4F1A\u901A\u8FC7\u8C03\u7528 Sensor \u5B50\u7CFB\u7EDF\u7684\u63A5\u53E3 rt_hw_sensor_register() \u6CE8\u518C\u4E00\u4E2A Sensor \u8BBE\u5907\u3002 TSensor \u63A7\u5236\u5668\u7684\u521D\u59CB\u5316\u8FC7\u7A0B\uFF0C\u4E3B\u8981\u6B65\u9AA4\u6709\uFF1A \u521D\u59CB\u5316\u6A21\u5757\u7684 clk\u3002 \u6CE8\u518C\u4E2D\u65AD\u3002 \u521D\u59CB\u5316\u9ED8\u8BA4\u53C2\u6570\u3002 \u5411\u8BBE\u5907\u6846\u67B6\u4E2D\u6CE8\u518C Sensor \u8BBE\u5907\u3002 \u4E2D\u65AD\u5904\u7406\u6D41\u7A0B...","topics/sdk/tsensor/tsensor-key-procedures_2.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B TSensor \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u901A\u8FC7 INIT_DEVICE_EXPORT(drv_tsen_init) \u5B8C\u6210\uFF0C\u4F1A\u901A\u8FC7\u8C03\u7528 Sensor \u5B50\u7CFB\u7EDF\u7684\u63A5\u53E3 rt_hw_sensor_register() \u6CE8\u518C\u4E00\u4E2A Sensor \u8BBE\u5907\u3002 TSensor \u63A7\u5236\u5668\u7684\u521D\u59CB\u5316\u8FC7\u7A0B\uFF0C\u4E3B\u8981\u6B65\u9AA4\u6709\uFF1A \u521D\u59CB\u5316\u6A21\u5757\u7684 clk\u3002 \u6CE8\u518C\u4E2D\u65AD\u3002 \u521D\u59CB\u5316\u9ED8\u8BA4\u53C2\u6570\u3002 \u5411\u8BBE\u5907\u6846\u67B6\u4E2D\u6CE8\u518C Sensor \u8BBE\u5907\u3002 \u4E2D\u65AD\u5904\u7406\u6D41\u7A0B...","topics/sdk/tsensor/tsensor-test-guide-lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 test_tsen \u6D4B\u8BD5\u7A0B\u5E8F \u4F7F\u80FD test_tsen \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Drivers options ---> Drivers examples ---> [*] Enable...","topics/sdk/tsensor/tsensor-test-guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@TSensor \u6D4B\u8BD5\u6240\u9700\u7684\u6D4B\u8BD5\u73AF\u5883\u5982\u4E0B\uFF1A \u786C\u4EF6 \uFF1A\u5F00\u53D1\u677F\uFF0C\u6216 D211 \u7684 FPGA \u677F \u8F6F\u4EF6 \uFF1APC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 \u6D4B\u8BD5\u6E29\u5EA6\u8BFB\u53D6 \u6E29\u5EA6\u6570\u636E\u7684\u8BFB\u53D6\uFF0C\u53EA\u9700\u8981\u666E\u901A\u7684 cat \u547D\u4EE4\u5373\u53EF\uFF0C\u6BCF\u6B21 cat \u53EF\u8BFB\u53D6\u67D0\u4E00\u4E2A\u901A\u9053\u4E2D\u7684\u5F53\u524D\u6570\u636E\u3002\u8BE6\u89C1 Sysfs \u8282\u70B9\u8BFB\u53D6\u6E29\u5EA6 \u3002...","topics/sdk/tsensor/tsensor-user-guide.html@@@TSensor \u4F7F\u7528\u6307\u5357@@@TSensor//TSen \u662F\u4E00\u4E2A\u6E29\u5EA6\u4F20\u611F\u5668\u6A21\u5757\uFF0C\u7528\u4E8E\u6D4B\u91CF\u82AF\u7247\u5468\u56F4\u73AF\u5883\u7684\u6E29\u5EA6\u3002TSensor \u6A21\u5757\u8F93\u51FA\u6570\u5B57\u4FE1\u53F7\uFF0C\u4EE5\u4FBF\u7CFB\u7EDF\u80FD\u591F\u5BF9\u6E29\u5EA6\u53D8\u5316\u505A\u51FA\u5FEB\u901F\u54CD\u5E94\uFF0C\u4ECE\u800C\u63D0\u9AD8\u7CFB\u7EDF\u7684\u53EF\u9760\u6027\u548C\u7A33\u5B9A\u6027\u3002ADCIM \u6A21\u5757\u8D1F\u8D23\u7EDF\u4E00\u7BA1\u7406\u786C\u4EF6\u901A\u8DEF\uFF0C\u786E\u4FDD TSensor \u6A21\u5757\u80FD\u591F\u6B63\u786E\u8BFB\u53D6\u6E29\u5EA6\u4F20\u611F\u5668\u7684\u4FE1\u53F7\u3002TSensor \u9700\u8981\u4F9D\u8D56 ADCIM \u6A21\u5757\u6765\u5B9E\u73B0\u5176\u529F\u80FD\u3002 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E ADC Analog Digital...","topics/sdk/tsensor/tsensor-user-guide_2.html@@@TSensor \u4F7F\u7528\u6307\u5357@@@TSensor//TSen \u662F\u4E00\u4E2A\u6E29\u5EA6\u4F20\u611F\u5668\u6A21\u5757\uFF0C\u7528\u4E8E\u6D4B\u91CF\u82AF\u7247\u5468\u56F4\u73AF\u5883\u7684\u6E29\u5EA6\u3002TSensor \u6A21\u5757\u8F93\u51FA\u6570\u5B57\u4FE1\u53F7\uFF0C\u4EE5\u4FBF\u7CFB\u7EDF\u80FD\u591F\u5BF9\u6E29\u5EA6\u53D8\u5316\u505A\u51FA\u5FEB\u901F\u54CD\u5E94\uFF0C\u4ECE\u800C\u63D0\u9AD8\u7CFB\u7EDF\u7684\u53EF\u9760\u6027\u548C\u7A33\u5B9A\u6027\u3002ADCIM \u6A21\u5757\u8D1F\u8D23\u7EDF\u4E00\u7BA1\u7406\u786C\u4EF6\u901A\u8DEF\uFF0C\u786E\u4FDD TSensor \u6A21\u5757\u80FD\u591F\u6B63\u786E\u8BFB\u53D6\u6E29\u5EA6\u4F20\u611F\u5668\u7684\u4FE1\u53F7\u3002TSensor \u9700\u8981\u4F9D\u8D56 ADCIM \u6A21\u5757\u6765\u5B9E\u73B0\u5176\u529F\u80FD\u3002 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E ADC Analog Digital...","topics/sdk/uart/uart_config.html@@@UART \u914D\u7F6E@@@\u5185\u6838\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u6309\u5982\u4E0B\u793A\u4F8B\u914D\u7F6E\u76F8\u5E94\u9009\u9879\uFF1A Device Drivers Character devices Serial driver <*> 8250 / 16550 and compatible serial support <*> 8250 /...","topics/sdk/uart/uart_config_lite.html@@@\u53C2\u6570\u914D\u7F6E@@@\u5728 Luban-Lite \u4E2D\u914D\u7F6E UART \u9700\u8981\u9700\u8981\u6267\u884C\u591A\u4E2A\u6B65\u9AA4\uFF0C\u5305\u62EC\uFF1A \u914D\u7F6E SoC \u4E2D UART \u7684\u76F8\u5173\u4FE1\u606F \u914D\u7F6E Board \u9700\u8981\u4F7F\u7528\u7684 UART \u7AEF\u53E3\u548C Pinmux \u914D\u7F6E\u9A71\u52A8\u7684\u5DE5\u4F5C\u53C2\u6570 \u914D\u7F6E\u529F\u80FD\u53C2\u6570 \u914D\u7F6E SoC \u4E2D UART \u7684\u76F8\u5173\u4FE1\u606F \u5728 bsp/artinchip/sys/soc name/Kconfig.chip \u4E2D\uFF0C\u914D\u7F6E SoC \u7684 UART \u76F8\u5173\u4FE1\u606F\u3002SDK...","topics/sdk/uart/uart_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u6D41\u7A0B\u5982\u4E0B\uFF1A \u4F7F\u7528\u4EE5\u4E0B\u4EFB\u610F\u4E00\u79CD\u65B9\u5F0F\u5C06 log \u7B49\u7EA7\u8BBE\u7F6E\u4E3A\u6700\u9AD8 8\uFF1A \u5728 target/aicxxx/common/env.txt \u6587\u4EF6\u4E2D\uFF0C\u5C06 bootarg \u8BBE\u7F6E loglevel=8 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\u6267\u884C make kernel-menuconfig \u6216\u8005 make km \u547D\u4EE4\u6253\u5F00\u5185\u6838\u914D\u7F6E\uFF0C\u5E76\u8BBE\u7F6E\u5BF9\u5E94\u7684 log \u7B49\u7EA7\uFF1A Kernel hacking printk and dmesg...","topics/sdk/uart/uart_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5 Log \u7684\u7EA7\u522B \u5728 Luban-Lite \u4E2D\uFF0C\u5982\u679C\u662F RT-Thread \u73AF\u5883\uFF0C\u5168\u5C40\u7684 Log \u7EA7\u522B\u63A7\u5236\u590D\u7528\u4E86 ulog \u63A5\u53E3\uFF0C \u6240\u4EE5\u53EF\u901A\u8FC7 ulog \u9009\u9879\u6765\u914D\u7F6E\uFF1A Rt-Thread options ---> RT-Thread Components ---> Utilities ---> [*] Enable ulog The static output log level...","topics/sdk/uart/uart_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u4E32\u53E3\u82AF\u7247 \u5728\u9A71\u52A8\u4EE3\u7801\u8BF4\u660E\u5F00\u59CB\u524D\u5148\u4ECB\u7ECD\u51E0\u79CD\u901A\u7528\u7684\u4E32\u53E3\u82AF\u7247\u3002 8250\uFF1AIBM PC \u53CA\u517C\u5BB9\u673A\u4F7F\u7528\u7684\u7B2C\u4E00\u79CD\u4E32\u53E3\u82AF\u7247\u3002\u8FD9\u662F\u4E00\u79CD\u76F8\u5BF9\u6765\u8BF4\u5F88\u6162\u7684\u82AF\u7247\uFF0C\u6709\u65F6\u5019\u88C5\u8F7D\u5230\u5B83\u7684\u5BC4\u5B58\u5668\u901F\u5EA6\u592A\u5FEB\uFF0C\u5B83\u6765\u4E0D\u53CA\u5904\u7406\uFF0C\u5C31\u4F1A\u51FA\u73B0\u6570\u636E\u4E22\u5931\u73B0\u8C61\u30028250 \u6709 7 \u4E2A\u5BC4\u5B58\u5668\uFF0C\u652F\u6301\u7684\u6700\u5927\u6CE2\u7279\u7387\u4E3A 56kb\u3002 16450\uFF1A8250A \u7684\u5FEB\u901F\u7248\u3002\u52A0\u5FEB\u4E86\u5904\u7406\u5668\u5B58\u53D6\u5B83\u7684\u901F\u5EA6\uFF0C\u4F46\u6700\u5927\u901F\u5EA6\u8FD8\u662F 56kb\u3002\u6709\u4E9B\u4EBA\u5B9E\u9645\u7528\u5F97\u6BD4\u8FD9\u9AD8\u4E5F\u53EF\u4EE5\u3002...","topics/sdk/uart/uart_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u4FE1\u606F\u914D\u7F6E SDK \u4E2D UART \u7684\u914D\u7F6E\u4FE1\u606F\u5305\u62EC SoC \u914D\u7F6E\uFF1A Kconfig.chip \u5F00\u53D1\u677F\u914D\u7F6E\uFF1AKconfig.board Pimux \u914D\u7F6E\uFF1Apinmux.c \u8BBE\u5907\u914D\u7F6E\uFF1AKconfig.dev SoC \u914D\u7F6E SoC \u7684 UART \u6A21\u5757\u7684\u57FA\u7840\u4FE1\u606F\u914D\u7F6E\u5728 bsp/artinchip/sys/soc name/Kconfig.chip \u4E2D\u8BBE\u7F6E \u9A71\u52A8\u7248\u672C\u4FE1\u606F UART \u6570\u76EE\u4FE1\u606F config...","topics/sdk/uart/uart_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u73AF\u8DEF\u6D4B\u8BD5\u5361\u6B7B \u73B0\u8C61 test_uart uart2 RT_WAITING_SEM \u539F\u56E0 uart \u65E0\u6CD5\u63A5\u6536\u5230\u6570\u636E\u5C06\u4E00\u76F4\u7B49\u5F85\uFF0C\u8FD9\u65F6\u5019\u9700\u8981\u68C0\u67E5\u786C\u4EF6\u5E76 reset \u5F00\u53D1\u677F \u538B\u529B\u6D4B\u8BD5\u4E22\u5305 \u73B0\u8C61 \u77ED\u65F6\u95F4\u5185\u8FDB\u884C\u5927\u91CF\u6570\u636E\u7684\u6536\u53D1\uFF0C\u8BBE\u5907\u63A5\u6536\u7684\u6570\u636E\u4E0E\u53D1\u51FA\u7684\u6570\u636E\u4E0D\u4E00\u81F4\uFF0C\u51FA\u73B0\u4E22\u5305\u7684\u73B0\u8C61 \u4F8B\u5982\uFF0C\u5B9A\u65F6\u6BCF 30ms \u53D1\u9001 400 \u5B57\u8282\u7684\u6570\u636E\uFF1A \u539F\u56E0 \u5F53\u5176\u5B83\u6A21\u5757\u5360\u7528 CPU \u8D44\u6E90\u6BD4\u4F8B\u8F83\u9AD8\u65F6\uFF0CUART...","topics/sdk/uart/uart_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u73AF\u8DEF\u6D4B\u8BD5\u5361\u6B7B \u73B0\u8C61 test_uart uart2 RT_WAITING_SEM \u539F\u56E0 uart \u65E0\u6CD5\u63A5\u6536\u5230\u6570\u636E\u5C06\u4E00\u76F4\u7B49\u5F85\uFF0C\u8FD9\u65F6\u5019\u9700\u8981\u68C0\u67E5\u786C\u4EF6\u5E76 reset \u5F00\u53D1\u677F \u538B\u529B\u6D4B\u8BD5\u4E22\u5305 \u73B0\u8C61 \u77ED\u65F6\u95F4\u5185\u8FDB\u884C\u5927\u91CF\u6570\u636E\u7684\u6536\u53D1\uFF0C\u8BBE\u5907\u63A5\u6536\u7684\u6570\u636E\u4E0E\u53D1\u51FA\u7684\u6570\u636E\u4E0D\u4E00\u81F4\uFF0C\u51FA\u73B0\u4E22\u5305\u7684\u73B0\u8C61 \u4F8B\u5982\uFF0C\u5B9A\u65F6\u6BCF 30ms \u53D1\u9001 400 \u5B57\u8282\u7684\u6570\u636E\uFF1A \u539F\u56E0 \u5F53\u5176\u5B83\u6A21\u5757\u5360\u7528 CPU \u8D44\u6E90\u6BD4\u4F8B\u8F83\u9AD8\u65F6\uFF0CUART...","topics/sdk/uart/uart_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u4E00\u822C\u5F00\u53D1\u677F\u7684\u9996\u8981\u5DE5\u4F5C\u662F\u8C03\u8BD5\u3002 \u51C6\u5907\u5DE5\u4F5C\uFF1A \u786C\u4EF6\uFF1A PC\uFF1A\u7528\u4E8E\u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4EA4\u4E92 \u6D4B\u8BD5\u677F\uFF1A3 \u4E2A\u4EE5\u4E0A UART \u7AEF\u53E3\u7684\u6D4B\u8BD5\u677F \u8FDE\u63A5\u7EBF\uFF1A\u7528\u4E8E\u8FDE\u63A5 UART \u7684 RX/TX \u7AEF\u53E3 \u8F6F\u4EF6 PC \u4E32\u53E3\u8F6F\u4EF6\uFF1A\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 test_uart\uFF1AAIC \u7684 UART \u6D4B\u8BD5\u5DE5\u5177\uFF0C\u5185\u5D4C\u5728 SDK \u4E2D\uFF0C\u5728\u6839\u76EE\u5F55\u4E0B\u901A\u8FC7 make menuconfig \u53EF\u4EE5\u9009\u62E9\u7F16\u8BD1\u5230\u7CFB\u7EDF ArtInChip...","topics/sdk/uart/uart_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u4E00\u822C\u5F00\u53D1\u677F\u7684\u9996\u8981\u5DE5\u4F5C\u662F\u8C03\u8BD5 \u51C6\u5907\u5DE5\u4F5C \u786C\u4EF6 \u6D4B\u8BD5\u677F \u6709\u8C03\u8BD5\u4E32\u53E3\u7684\u5F00\u53D1\u677F \u8FDE\u63A5\u7EBF \u7528\u4E8E\u8FDE\u63A5 UART \u7684 RX/TX \u7AEF\u53E3 \u8F6F\u4EF6 Luban-Lite \u4E2D\u6709 UART \u6D4B\u8BD5\u7528\u4F8B\uFF0C\u5728\u6839\u76EE\u5F55\u4E0B\u901A\u8FC7 scons --menuconfig \u9009\u62E9\u6253\u5F00 Drivers options Drivers test [*] Enable UART driver test command \u6D4B\u8BD5 \u5355\u7AEF\u53E3\u73AF\u8DEF\u6D4B\u8BD5...","topics/sdk/uart/uart_user_guide.html@@@UART \u4F7F\u7528\u6307\u5357@@@\u901A\u7528\u5F02\u6B65\u6536\u53D1\u4F20\u8F93\u5668\uFF08Universal Asynchronous Receiver/Transmitter)\uFF0C\u901A\u5E38\u79F0\u4F5C UART\uFF0C\u662F\u4E00\u79CD\u901A\u7528\u4E32\u884C\u6570\u636E\u603B\u7EBF\u3002 \u4E32\u884C\u901A\u4FE1\u662F\u6307\u5229\u7528\u4E00\u6761\u4F20\u8F93\u7EBF\u5C06\u6570\u636E\u4E00\u4F4D\u4F4D\u5730\u987A\u5E8F\u4F20\u9001\uFF0C\u901A\u4FE1\u7EBF\u8DEF\u975E\u5E38\u7B80\u5355\u3002 UART \u4E3A\u53CC\u5411\u901A\u4FE1\uFF0C\u53EF\u4EE5\u5B9E\u73B0\u5168\u53CC\u5DE5\u4F20\u8F93\u548C\u63A5\u6536\u3002\u5728\u5D4C\u5165\u5F0F\u8BBE\u8BA1\u4E2D\uFF0CUART \u7528\u4E8E\u4E3B\u673A\u4E0E\u8F85\u52A9\u8BBE\u5907\u901A\u4FE1\uFF0C\u5982\u6C7D\u8F66\u97F3\u54CD\u4E0E\u5916\u63A5 AP \u4E4B\u95F4\u7684\u901A\u4FE1\uFF0C\u4E5F\u7528\u4E8E PC...","topics/sdk/uart/uart_user_guide_2.html@@@UART \u4F7F\u7528\u6307\u5357@@@\u901A\u7528\u5F02\u6B65\u6536\u53D1\u4F20\u8F93\u5668\uFF08Universal Asynchronous Receiver/Transmitter)\uFF0C\u901A\u5E38\u79F0\u4F5C UART\uFF0C\u662F\u4E00\u79CD\u901A\u7528\u4E32\u884C\u6570\u636E\u603B\u7EBF\u3002 \u4E32\u884C\u901A\u4FE1\u662F\u6307\u5229\u7528\u4E00\u6761\u4F20\u8F93\u7EBF\u5C06\u6570\u636E\u4E00\u4F4D\u4F4D\u5730\u987A\u5E8F\u4F20\u9001\uFF0C\u901A\u4FE1\u7EBF\u8DEF\u975E\u5E38\u7B80\u5355\u3002 UART \u4E3A\u53CC\u5411\u901A\u4FE1\uFF0C\u53EF\u4EE5\u5B9E\u73B0\u5168\u53CC\u5DE5\u4F20\u8F93\u548C\u63A5\u6536\u3002\u5728\u5D4C\u5165\u5F0F\u8BBE\u8BA1\u4E2D\uFF0CUART \u7528\u4E8E\u4E3B\u673A\u4E0E\u8F85\u52A9\u8BBE\u5907\u901A\u4FE1\uFF0C\u5982\u6C7D\u8F66\u97F3\u54CD\u4E0E\u5916\u63A5 AP \u4E4B\u95F4\u7684\u901A\u4FE1\uFF0C\u4E5F\u7528\u4E8E PC...","topics/sdk/usb/udisk.html@@@\u6302\u8F7D U \u76D8@@@Luban-Lite \u53EF\u4EE5\u5B9E\u73B0\u6302\u8F7D U \u76D8\uFF08FAT32 \u683C\u5F0F\uFF09\uFF0C\u672C\u8282\u4ECB\u7ECD\u914D\u7F6E\u6302\u8F7D U \u76D8\u7684\u8BE6\u7EC6\u6B65\u9AA4\u3002 \u914D\u7F6E USB Host \u8FDB\u5165 SDK \u7684 menuconfig \u83DC\u5355\uFF0C\u9009\u62E9\u5BF9\u5E94\u7684 USB \u63A5\u53E3\uFF0C\u4F8B\u5982 Usb0\uFF0C\u5E76\u5C06\u5176\u914D\u7F6E\u4E3A HOST\uFF0C \u4EE5 D211BBV-DEMO-V2.0 \u4E3A\u4F8B\uFF0C\u8FDB\u5165 SDK \u7684 menuconfig \u83DC\u5355\u505A\u5982\u4E0B\u914D\u7F6E\uFF1A Board options ---> [*] Using...","topics/sdk/usb/usb-aic_udc_driver.html@@@AIC UDC Driver@@@UDC Driver \u5728\u9700\u8981\u5B8C\u6210\u7684\u5DE5\u4F5C\u6709\u4E24\u70B9\uFF1A \u628A UDC \u786C\u4EF6\u6CE8\u518C\u6210\u6807\u51C6\u7684 Gadget Device\uFF0C\u4EE5\u4FBF\u63D0\u4F9B\u6807\u51C6\u7684 Gadget API \u7ED9 Gadget Function \u9A71\u52A8\u6765\u4F7F\u7528\u3002 \u63D0\u4F9B endpoint \u8D44\u6E90\u6C60\uFF0C\u5904\u7406 endpoint \u5C42\u7EA7\u7684\u6570\u636E\u6536\u53D1\u3002 \u9700\u8981\u5904\u7406\u90E8\u5206 Endpoint0 Setup \u903B\u8F91\u3002 Init UDC \u9A71\u52A8\u628A\u8D44\u6E90\u521D\u59CB\u5316\u597D\u4EE5\u540E\uFF0C\u6CE8\u518C\u6210\u4E00\u4E2A\u6807\u51C6\u7684 gadget...","topics/sdk/usb/usb-aic_usb_device_controller.html@@@AIC USB Device Controller@@@ArtInChip UDC \u5728\u786C\u4EF6\u5C42\u9762\u5B9E\u73B0\u4E86\u4EE5\u4E0B\u529F\u80FD\uFF1A Data Mode UDC \u5B9E\u73B0\u7684\u4E00\u9879\u4E3B\u8981\u5DE5\u4F5C\u662F\u6570\u636E\u642C\u79FB\uFF1A UDC \u53D1\u9001\u65F6\uFF0C\u6570\u636E\u5148\u4ECE\u5185\u5B58 Memory \u642C\u79FB\u5230 UDC \u7684\u5185\u90E8 FIFO \u5F53\u4E2D\uFF0C\u7136\u540E\u7531 UDC \u53D1\u9001\u5230 USB \u7269\u7406\u7EBF\u8DEF\u4E0A\u3002 UDC \u63A5\u6536\u65F6\uFF0C\u6570\u636E\u5148\u4ECE USB \u7269\u7406\u7EBF\u8DEF\u63A5\u6536\u5230 UDC \u7684\u5185\u90E8 FIFO \u5F53\u4E2D\uFF0C\u7136\u540E\u518D\u4ECE FIFO \u62F7\u8D1D\u5230 \u5185\u5B58 Memory \u5F53\u4E2D\u3002 \u5BF9\u4E8E FIFO...","topics/sdk/usb/usb-configuration_descriptor.html@@@Configuration Descriptor@@@...","topics/sdk/usb/usb-configuration_descriptor_2.html@@@Configuration Descriptor@@@...","topics/sdk/usb/usb-contro_transfers.html@@@Control Transfers@@@Control No Data ( Transfer ) Control Read ( Transfer ) Control Write ( Transfer )...","topics/sdk/usb/usb-contro_transfers_2.html@@@Control Transfers@@@Control No Data ( Transfer ) Control Read ( Transfer ) Control Write ( Transfer )...","topics/sdk/usb/usb-controller-data_structure_design.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@ehci_hc_driver HCD \u6838\u5FC3\u7684\u6570\u636E\u7ED3\u6784\u4E3A hc_driver\uFF0CEHCI \u5B9E\u73B0\u4E86\u4EE5\u4E0B\u7684\u6838\u5FC3\u51FD\u6570\uFF1A static const struct hc_driver ehci_hc_driver = { .description = hcd_name, .product_desc = "EHCI Host Controller" , .hcd_priv_size = sizeof (...","topics/sdk/usb/usb-controller-interface_design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . ehci_urb_enqueue \u51FD\u6570\u539F\u578B int ehci_urb_enqueue (struct usb_hcd *hcd, struct urb *urb, gfp_t mem_flags) \u529F\u80FD\u8BF4\u660E \u63A5\u6536\u4E0A\u5C42\u4F20\u5165\u7684 urb\uFF0C\u5E76\u5C06\u5176\u538B\u5165 EHCI \u7684\u786C\u4EF6\u961F\u5217\u3002 \u53C2\u6570\u5B9A\u4E49 hcd\uFF1A\u5F53\u524D hcd \u63A7\u5236\u7ED3\u6784 urb\uFF1A\u5F53\u524D urb \u63A7\u5236\u7ED3\u6784 mem_flags\uFF1A\u5206\u914D\u5185\u5B58\u65F6\u4F7F\u7528\u7684\u6807\u5FD7...","topics/sdk/usb/usb-controller-key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B HCD \u9A71\u52A8\u7684\u5165\u53E3\u662F platform \u9A71\u52A8\uFF0C\u521D\u59CB\u5316\u6D41\u7A0B\u5148\u83B7\u53D6 irq\u3001reg\u3001clk\u3001reset \u7B49\u8D44\u6E90\u5E76\u8FDB\u884C\u521D\u59CB\u5316\uFF0C\u6700\u540E\u8C03\u7528 usb_add_hcd() \u5411\u7CFB\u7EDF\u4E2D\u6CE8\u518C\u3002 \u5927\u81F4\u7684\u6D41\u7A0B\u5982\u4E0B\uFF1A |-->ehci_platform_init() |-->ehci_init_driver() |-->platform_driver_register()...","topics/sdk/usb/usb-debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@USB Device \u8C03\u8BD5 \u67E5\u770B USB \u8BBE\u5907\u5F53\u5355\u677F\u5145\u5F53 USB Device \u8FDE\u63A5\u5230 PC \u4E3B\u673A USB Host \u7AEF\u53E3\u65F6\uFF0C\u53EF\u4EE5\u5728\u4E3B\u673A\u4E0A\u67E5\u770B USB \u8BBE\u5907\u6709\u6CA1\u6709\u6210\u529F\u88AB\u679A\u4E3E\uFF1A Linux \u4E3B\u673A\uFF0C\u53EF\u4EE5\u901A\u8FC7 lsusb \u547D\u4EE4\u8FDB\u884C\u67E5\u770B\u3002 Windows \u4E3B\u673A\uFF0C\u53EF\u4EE5\u901A\u8FC7 \u8BBE\u5907\u7BA1\u7406\u5668 \u547D\u4EE4\u8FDB\u884C\u67E5\u770B\uFF1A Sysfs \u8282\u70B9 \u5728\u5355\u677F\u4E0A\u4E5F\u53EF\u4EE5\u901A\u8FC7 /sys/kernel/debug/usb/xxxx.usb/...","topics/sdk/usb/usb-design_intro.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@...","topics/sdk/usb/usb-device-controller-driver.html@@@USB Device Controller Driver@@@\u8868 1 . \u6E90\u7801\u8BF4\u660E \u76F8\u5173\u6A21\u5757 \u6E90\u7801\u8DEF\u5F84 AIC UDC source\\linux-5.10\\drivers\\usb\\gadget\\udc\\aic_udc.c source\\linux-5.10\\drivers\\usb\\gadget\\udc\\aic_udc.h \u4ECE\u4E0A\u8FF0 Device Controller Driver (DCD) \u7684\u6846\u67B6\u56FE\u4E2D\u53EF\u4EE5\u770B\u5230\uFF0CDCD \u4E3B\u8981\u63D0\u4F9B\u4E86\u4E24\u5927\u529F\u80FD\uFF1A \u666E\u901A ep \u7684...","topics/sdk/usb/usb-device-controller_layer.html@@@USB Device Controller Layer@@@\u4E0A\u8FF0\u8F6F\u4EF6\u6808\u7684\u6700\u5E95\u5C42\u662F UDC (USB Device Controller)\uFF0CUDC \u5C42\u6700\u4E3B\u8981\u7684\u4F5C\u7528\u662F\u63D0\u4F9B\u4E00\u4E2A endpoint \u8D44\u6E90\u6C60\uFF0C\u8D1F\u8D23\u5904\u7406 endpoint \u5C42\u7EA7\u7684\u6570\u636E\u6536\u53D1\u3002...","topics/sdk/usb/usb-device-data_structure_design.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@aic_usb_ep_ops AIC UDC \u9A71\u52A8\u6838\u5FC3\u7684\u6570\u636E\u7ED3\u6784\u4E3A usb_ep_ops\uFF0C \u5B9E\u73B0\u4E86 op \u64CD\u4F5C\u7684\u76F8\u5173\u51FD\u6570\uFF1Ac static const struct usb_ep_ops aic_usb_ep_ops = { .enable = aic_ep_enable, .disable = aic_ep_disable, .alloc_request =...","topics/sdk/usb/usb-device-device_layer.html@@@USB Device Layer@@@Linux \u4F7F\u7528\u4E86\u4E00\u4E2A Gadget \u7684\u6982\u5FF5\u6765\u7EC4\u7EC7 USB Device\u3002 Gadget Layer \u5C42\u628A UDC \u63D0\u4F9B\u7684 endpoint \u5C01\u88C5\u6210\u6807\u51C6\u7684 Gadget Device\uFF0C\u63D0\u4F9B\u7EDF\u4E00\u7684\u5411\u4E0A\u63A5\u53E3\u3002 Gadget Driver \u53C8\u628A\u5404\u5F0F\u5404\u6837\u7684 Function \u548C Gadget Device \u94FE\u63A5\u8D77\u6765\u3002...","topics/sdk/usb/usb-device-interface_design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u8868 1 . aic_ep_queue_request \u51FD\u6570\u539F\u578B int aic_ep_queue_request(struct usb_ep *ep, struct usb_request *req, gfp_t gfp_flags) \u529F\u80FD\u8BF4\u660E \u63A5\u6536\u4E0A\u5C42\u4F20\u5165\u7684 request\uFF0C\u5E76\u5C06\u5176\u914D\u7F6E\u5230 ep \u5BC4\u5B58\u5668\u4E2D\u3002 \u53C2\u6570\u5B9A\u4E49 ep\uFF1A\u5F53\u524D ep \u63A7\u5236\u7ED3\u6784 req\uFF1A\u5F53\u524D request \u63A7\u5236\u7ED3\u6784...","topics/sdk/usb/usb-device-interface_layer.html@@@USB Interface Layer@@@Linux \u4F7F\u7528 Function \u6765\u5B9E\u73B0 USB Interface \u7B49\u7EA7\u7684\u529F\u80FD\u3002...","topics/sdk/usb/usb-device-key_procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u521D\u59CB\u5316\u6D41\u7A0B DCD \u9A71\u52A8\u7684\u5165\u53E3\u662F platform \u9A71\u52A8\uFF0C\u521D\u59CB\u5316\u6D41\u7A0B\u5148\u83B7\u53D6 irq\u3001reg\u3001clk\u3001reset \u7B49\u8D44\u6E90\u5E76\u8FDB\u884C\u521D\u59CB\u5316\uFF0C\u6700\u540E\u8C03\u7528 usb_add_gadget_udc() \u5411\u7CFB\u7EDF\u4E2D\u6CE8\u518C\u3002 \u5927\u81F4\u7684\u6D41\u7A0B\u5982\u4E0B\uFF1A |-->aic_udc_probe() |-->gg->regs = devm_ioremap_resource(&dev->dev, res); |-->gg->reset =...","topics/sdk/usb/usb-device-listing.html@@@USB \u8BBE\u5907\u679A\u4E3E\u7B80\u4ECB@@@\u4E00\u4E2A USB \u8BBE\u5907\u662F\u5426\u80FD\u6B63\u5E38\u4F7F\u7528\uFF0C\u4F9D\u8D56\u4E8E\u8BBE\u5907\u6709\u6CA1\u6709\u88AB\u6B63\u786E\u914D\u7F6E\u3002USB \u8BBE\u5907\u5728\u63D2\u5165\u7AEF\u53E3\u65F6\u4F1A\u89E6\u53D1\u679A\u4E3E\uFF0C\u5728\u8FD9\u4E2A\u8FC7\u7A0B\u4E2D Host \u8BFB\u53D6\u8BBE\u5907\u7684\u5404\u79CD\u63CF\u8FF0\u7B26\uFF0C\u5E76\u4E14\u4E0B\u53D1\u76F8\u5E94\u7684\u914D\u7F6E\u300280% \u7684 USB \u95EE\u9898\u662F\u53D1\u751F\u5728\u8BBE\u5907\u679A\u4E3E\u8FC7\u7A0B\u5F53\u4E2D\u7684\uFF0C\u6240\u4EE5 USB \u5F00\u53D1\u4EBA\u5458\u5FC5\u987B\u5BF9\u6B64\u6709\u8BE6\u7EC6\u4E86\u89E3\u3002 \u80CC\u666F USB \u4F7F\u7528\u4EE5\u4E0B\u65B9\u6CD5\u6765\u6EE1\u8DB3\u591A\u79CD\u7C7B\u578B\u7684\u6570\u636E\u5728\u4E00\u6761\u5171\u4EAB\u901A\u9053\u4E0A\u4F20\u8F93\uFF1A \u65F6\u95F4\u5EF6\u8FDF...","topics/sdk/usb/usb-device-listing_2.html@@@USB \u8BBE\u5907\u679A\u4E3E\u7B80\u4ECB@@@\u4E00\u4E2A USB \u8BBE\u5907\u662F\u5426\u80FD\u6B63\u5E38\u4F7F\u7528\uFF0C\u4F9D\u8D56\u4E8E\u8BBE\u5907\u6709\u6CA1\u6709\u88AB\u6B63\u786E\u914D\u7F6E\u3002USB \u8BBE\u5907\u5728\u63D2\u5165\u7AEF\u53E3\u65F6\u4F1A\u89E6\u53D1\u679A\u4E3E\uFF0C\u5728\u8FD9\u4E2A\u8FC7\u7A0B\u4E2D Host \u8BFB\u53D6\u8BBE\u5907\u7684\u5404\u79CD\u63CF\u8FF0\u7B26\uFF0C\u5E76\u4E14\u4E0B\u53D1\u76F8\u5E94\u7684\u914D\u7F6E\u300280% \u7684 USB \u95EE\u9898\u662F\u53D1\u751F\u5728\u8BBE\u5907\u679A\u4E3E\u8FC7\u7A0B\u5F53\u4E2D\u7684\uFF0C\u6240\u4EE5 USB \u5F00\u53D1\u4EBA\u5458\u5FC5\u987B\u5BF9\u6B64\u6709\u8BE6\u7EC6\u4E86\u89E3\u3002 \u80CC\u666F USB \u4F7F\u7528\u4EE5\u4E0B\u65B9\u6CD5\u6765\u6EE1\u8DB3\u591A\u79CD\u7C7B\u578B\u7684\u6570\u636E\u5728\u4E00\u6761\u5171\u4EAB\u901A\u9053\u4E0A\u4F20\u8F93\uFF1A \u65F6\u95F4\u5EF6\u8FDF...","topics/sdk/usb/usb-device_configuration.html@@@USB Device \u914D\u7F6E@@@USB Device Controller \u914D\u7F6E \u5728 menuconfig \u4E2D\u914D\u7F6E\u8BBE\u5907\u3002\u4F7F\u80FD USB \u7AEF\u53E3\uFF0C\u5E76\u4E14\u914D\u7F6E\u5F53\u524D USB \u7AEF\u53E3\u4E3A Device \u6A21\u5F0F\uFF1A > Board options [*] Using Usb0 Select Usb0 mode (Device) ---> \u5728 menuconfig \u4E2D\u914D\u7F6E CherryUSB \u9A71\u52A8\u3002\u4F7F\u80FD CherryUSB \u9A71\u52A8\uFF0C\u5E76\u4E14\u4F7F\u80FD Device...","topics/sdk/usb/usb-device_configuration_2.html@@@USB Device \u914D\u7F6E@@@USB Device Controller \u914D\u7F6E \u5728 menuconfig \u4E2D\u914D\u7F6E\u8BBE\u5907\u3002\u4F7F\u80FD USB \u7AEF\u53E3\uFF0C\u5E76\u4E14\u914D\u7F6E\u5F53\u524D USB \u7AEF\u53E3\u4E3A Device \u6A21\u5F0F\uFF1A > Board options [*] Using Usb0 Select Usb0 mode (Device) ---> \u5728 menuconfig \u4E2D\u914D\u7F6E CherryUSB \u9A71\u52A8\u3002\u4F7F\u80FD CherryUSB \u9A71\u52A8\uFF0C\u5E76\u4E14\u4F7F\u80FD Device...","topics/sdk/usb/usb-device_gadget_zero.html@@@Device \u4FA7 gadget zero@@@\u63D0\u4F9B\u6D4B\u8BD5\u9700\u8981\u7684 Device \u8BBE\u5907\u6709\u5F88\u591A\u79CD\u65B9\u5F0F\uFF0C\u4F8B\u5982\u53EF\u7528\u4F7F\u7528\u4E13\u95E8\u7684\u6D4B\u8BD5 Device \u91CC\u9762\u70E7\u5F55\u4E13\u6709\u7684\u6D4B\u8BD5 Firmware\u3002\u8282\u7EA6\u6210\u672C\u7684\u65B9\u5F0F\u8FD8\u662F\u4F7F\u7528 Linux gadget \u529F\u80FD\u6765\u52A8\u6001\u6A21\u62DF USB Device \u8BBE\u5907\u3002\u9488\u5BF9 USB \u6D4B\u8BD5\uFF0CLinux \u4E13\u95E8\u63D0\u4F9B\u4E86 gadget zero \u8BBE\u5907\u3002 Device \u521B\u5EFA gadget zero \u7684\u6838\u5FC3\u662F\u521B\u5EFA\u4E00\u4E2A Composite Device...","topics/sdk/usb/usb-device_subsystem_code_structure.html@@@USB Device \u5B50\u7CFB\u7EDF\u4EE3\u7801\u67B6\u6784@@@\u6574\u4E2A USB \u7CFB\u7EDF\u7684\u901A\u8BAF\u6A21\u578B\u5982\u4E0A\u56FE\u6240\u793A\uFF0CDevice \u6846\u67B6\u89C1\u53F3\u4FA7\u5F69\u56FE\u90E8\u5206\u3002...","topics/sdk/usb/usb-endpoint_descriptor.html@@@Endpoint Descriptor@@@...","topics/sdk/usb/usb-endpoint_descriptor_2.html@@@Endpoint Descriptor@@@...","topics/sdk/usb/usb-function_resgister.html@@@Function \u6CE8\u518C@@@\u5728 drivers/usb/gadget/function/ \u8DEF\u5F84\u4E0B\u6709\u4E00\u6279 Gadget Function \u7684\u5B9A\u4E49\uFF1A ls drivers/usb/gadget/function/f* f_acm.c f_ecm.c f_eem.c f_fs.c f_hid.c f_loopback.c f_mass_storage.c f_mass_storage.h f_midi.c f_ncm.c...","topics/sdk/usb/usb-gadget_api.html@@@Gadget API@@@\u5728 Function Layer \u4E3B\u8981\u4F7F\u7528\u4EE5\u4E0B Gadget Layer \u5C42\u63D0\u4F9B\u7684 API\uFF1A usb_ep_autoconfig() usb_ep_enable() usb_ep_disable() usb_ep_alloc_request() usb_ep_free_request() usb_ep_queue() usb_ep_dequeue()...","topics/sdk/usb/usb-gadget_bus.html@@@Gadget Bus@@@Gadget Layer \u5C42\u6CA1\u6709\u5B9A\u4E49\u4E00\u4E2A\u6807\u51C6\u7684 Bus \u603B\u7EBF\uFF0C\u800C\u662F\u81EA\u5B9A\u4E49\u4E86\u4E24\u6761\u94FE\u8868\u6765\u5206\u522B\u5B58\u50A8 Device \u548C Driver\uFF1A type list escript Device udc_list \u6240\u6709 Device \u5168\u96C6 Driver gadget_driver_pending_list \u53EA\u5305\u542B\u6CA1\u6709\u9002\u914D Device \u7684 Driver \u5B83\u4EEC\u7684\u4F7F\u7528\u573A\u666F\u5982\u4E0B\uFF1A \u5728 Gadget Device...","topics/sdk/usb/usb-gadget_device.html@@@Gadget Device@@@\u4E0A\u4E00\u8282\u8BF4\u8FC7 Gadget Device \u7531 UDC Driver \u521B\u5EFA\u3002 dwc2_driver_probe() \u2192 usb_add_gadget_udc() \u2192 usb_add_gadget_udc_release() \u2192 usb_add_gadget() Gadget Device \u7684\u4E3B\u8981\u4F5C\u7528\u662F\u63D0\u4F9B\u4E86 Endpoint \u8D44\u6E90\uFF0C\u4F9B Function Layer \u4F7F\u7528\u6807\u51C6\u7684 Gadget API...","topics/sdk/usb/usb-gadget_driver_configfs.html@@@Gadget Driver (Configfs)@@@Gadget Device \u652F\u6491\u4E86\u6838\u5FC3 Gadget Api \u7684\u5B9E\u73B0\uFF0C\u800C Function Layer \u53C8\u9700\u8981\u4F7F\u7528\u8FD9\u4E9B Api\u3002\u600E\u4E48\u6837\u5C06\u4E24\u8005\u9002\u914D\u8D77\u6765\uFF1FGadget Driver \u5C31\u662F\u7528\u6765\u5B8C\u6210\u8FD9\u9879\u5DE5\u4F5C\u7684\u3002 \u76EE\u524D\u5B58\u5728\u4E24\u79CD\u98CE\u683C\u7684 Gadget Driver\uFF0C\u5176\u4E2D\u5305\u62EC\uFF1A Legacy\u3002\u8FD9\u662F\u65E9\u671F\u98CE\u683C\u7684 Gadget Driver\uFF0C\u53EA\u80FD\u901A\u8FC7\u9759\u6001\u7F16\u8BD1\u7684\u65B9\u5F0F\u6307\u5B9A\u4F7F\u7528\u54EA\u4E9B Function\u3002...","topics/sdk/usb/usb-gadget_driver_legacy.html@@@Gadget Driver Legacy@@@\u5BF9\u4E8E Legacy Gadget Driver \u9A71\u52A8\u6765\u8BF4\uFF0C\u76F8\u5F53\u4E8E Configfs Gadget Driver \u7684\u4E00\u4E2A\u7B80\u5316\u7248\u3002 Gadget Driver Legacy \u98CE\u683C\u7684 gadget driver \u7684\u5B9A\u4E49\uFF1A...","topics/sdk/usb/usb-hid_descriptor.html@@@HID Descriptor@@@...","topics/sdk/usb/usb-hid_descriptor_2.html@@@HID Descriptor@@@...","topics/sdk/usb/usb-host-aic_usb_host_controller.html@@@AIC USB Host Controller@@@ArtInChip \u63D0\u4F9B\u4E86\u517C\u5BB9\u6807\u51C6 EHCI \u7684 USB Host Controller\u3002 EHCI \u53EA\u652F\u6301 USB 2.0 \u9AD8\u901F\u4F20\u8F93\uFF0C\u4E3A\u4E86\u5411\u4E0B\u517C\u5BB9 USB 1.1\uFF0C\u5B83\u76F4\u63A5\u5728\u5185\u90E8\u96C6\u6210\u6700\u591A 4 \u4E2A\u5168\u901F\u6216\u8005\u6162\u901F\u63A7\u5236\u5668 OHCI \u3002\u5728 EHCI \u534F\u8BAE\u5185\u79F0\u8FD9\u79CD\u4F34\u751F\u7684 OHCI \u63A7\u5236\u5668\u4E3A companion host controllers \u3002 \u7531 EHCI \u9A71\u52A8\u6839\u636E\u7AEF\u53E3\u901F\u7387\u60C5\u51B5\u6765\u51B3\u5B9A\u7531\u8C01\u6765\u5904\u7406\uFF1A...","topics/sdk/usb/usb-host-controller-driver.html@@@USB Host Controller Driver@@@\u8868 1 . \u6E90\u7801\u8BF4\u660E \u76F8\u5173\u6A21\u5757 \u6E90\u7801\u8DEF\u5F84 EHCI source\\linux-5.10\\drivers\\usb\\host\\ehci-aic.c source\\linux-5.10\\drivers\\usb\\host\\ehci-hcd.c source\\linux-5.10\\drivers\\usb\\host\\ehci-mem.c...","topics/sdk/usb/usb-host-controller_layer.html@@@USB Host Controller Layer@@@Usb Host Controller \u63D0\u4F9B\u4E86 endpoint \u5C42\u7EA7\u7684\u6570\u636E\u6536\u53D1\uFF0C\u4E3B\u8981\u5206\u4E3A\u4EE5\u4E0B\u79CD\u7C7B\uFF1A Usb1.0 \u6709\u4E24\u79CD\u63A7\u5236\u5668\u6807\u51C6\uFF1A OHCI \u5EB7\u67CF\u7684\u5F00\u653E\u4E3B\u673A\u63A7\u5236\u5668\u63A5\u53E3\uFF0C UHCI Intel \u7684\u901A\u7528\u4E3B\u673A\u63A7\u5236\u5668\u63A5\u53E3\u3002\u5B83\u4EEC\u7684\u4E3B\u8981\u533A\u522B\u662F UHCI \u66F4\u52A0\u4F9D\u8D56\u8F6F\u4EF6\u9A71\u52A8\uFF0C\u56E0\u6B64\u5BF9 CPU \u8981\u6C42\u66F4\u9AD8\uFF0C\u4F46\u662F\u81EA\u8EAB\u7684\u786C\u4EF6\u4F1A\u66F4\u5EC9\u4EF7\u3002 Usb2.0 \u53EA\u6709\u4E00\u79CD\u63A7\u5236\u5668\u6807\u51C6\uFF1A EHCI \u3002\u56E0\u4E3A EHCI \u53EA\u652F\u6301\u9AD8\u901F\u4F20\u8F93\uFF0C\u6240\u4EE5...","topics/sdk/usb/usb-host-core.html@@@USB Core@@@Layer \u7531\u524D\u51E0\u8282\u53EF\u77E5 USB \u5C06 Device \u8FDB\u4E00\u6B65\u7EC6\u5206\u6210\u4E86 3 \u4E2A\u5C42\u7EA7\uFF1A Configuration \u914D\u7F6E\u3001 Interface \u63A5\u53E3\u3001 Endpoint \u7AEF\u70B9\u3002 USB Core \u4E3A\u5176\u4E2D\u4E24\u4E2A\u5C42\u6B21\u63D0\u4F9B\u4E86 Device + Driver \u7684\u8BBE\u5907\u9A71\u52A8\u6A21\u578B\uFF0C\u8FD9\u4E24\u4E2A\u5C42\u6B21\u5206\u522B\u662F USB Device Layer \u548C USB Interface Layer \u5C42\uFF0C\u4E00\u4E2A USB Device...","topics/sdk/usb/usb-host-device_layer.html@@@USB Device Layer@@@Device (struct usb_device) USB Device Device \u5BF9\u5E94\u7684\u6570\u636E\u7ED3\u6784\u4E3A struct usb_device \uFF0C\u4F1A\u5728\u4E24\u79CD\u60C5\u51B5\u4E0B\u88AB\u521B\u5EFA\uFF1A roothub device\u3002\u5728 HCD \u9A71\u52A8\u6CE8\u518C\u65F6\u521B\u5EFA\uFF1A /* (1) \u9996\u5148\u521B\u5EFA\u548C\u521D\u59CB\u5316 `usb_device` \u7ED3\u6784\uFF1A */ usb_add_hcd() \u2192 usb_alloc_dev(): struct...","topics/sdk/usb/usb-host-ehci_driver.html@@@EHCI Driver@@@ehci driver \u8D1F\u8D23\u628A echi \u529F\u80FD\u5C01\u88C5\u6210\u6807\u51C6\u7684 hcd \u9A71\u52A8\u3002\u5B83\u4E3B\u8981\u5B8C\u6210\u4E24\u9879\u5DE5\u4F5C\uFF1A \u6CE8\u518C\u6807\u51C6\u7684 hcd \u9A71\u52A8\u3002\u628A Client Software \u4F20\u9001\u4E0B\u6765\u7684 urb \u6620\u5C04\u5230 EHCI \u7684\u94FE\u8868\u4E2D\u8FDB\u884C\u4F20\u8F93\u3002 \u521B\u5EFA\u4E00\u4E2A\u865A\u62DF\u7684\u6839 hub \u8BBE\u5907\uFF0C\u5373 roothub\u3002 URB Transfer ehci \u6CE8\u518C hcd \u9A71\u52A8\uFF1A static int ehci_platform_probe(...","topics/sdk/usb/usb-host-ehci_internal_structure.html@@@EHCI \u5185\u90E8\u7ED3\u6784@@@EHCI \u7684\u6838\u5FC3\u5C31\u662F\u628A\u6570\u636E\u4F20\u8F93\u5206\u6210\u4E86\u4E24\u7C7B\u6765\u8FDB\u884C\u8C03\u5EA6\uFF1A Asynchronous Schedule \u3002\u7528\u6765\u4F20\u8F93\u5BF9\u65F6\u95F4\u5EF6\u8FDF\u8981\u6C42\u4E0D\u9AD8\u7684 Endpoint \u6570\u636E\uFF0C\u5305\u62EC Control Transfer \u548C Bulk Transfer \u3002 Periodic Schedule \u3002\u7528\u6765\u4F20\u8F93\u5BF9\u65F6\u95F4\u5EF6\u8FDF\u8981\u6C42\u9AD8\u7684 Endpoint \u6570\u636E\uFF0C\u5305\u62EC Isochronous Transfer \u548C Interrupt...","topics/sdk/usb/usb-host-interface-bus_usb_bus_type.html@@@BUS (usb_bus_type)@@@USB Interface \u8FD9\u4E00\u5C42\u6B21\u603B\u7EBF\u4E5F\u662F usb_bus_type \uFF0C\u4E0A\u4E00\u8282\u5DF2\u7ECF\u5206\u6790\uFF0C\u8FD9\u91CC\u5C31\u4E0D\u91CD\u590D\u89E3\u6790\u4E86\u3002...","topics/sdk/usb/usb-host-interface-device_struct_usb_interface.html@@@Device (struct usb_interface)@@@\u5982\u4E0A\u4E00\u8282\u63CF\u8FF0\uFF0C USB Interface Device \u5BF9\u5E94\u7684\u6570\u636E\u7ED3\u6784\u4E3A struct usb_interface \uFF0C\u4F1A\u5728 USB Device Driver \u9A71\u52A8 probe() \u65F6 \u88AB\u521B\u5EFA\uFF1A usb_probe_device() \u2192 usb_generic_driver_probe() \u2192 usb_set_configuration(): int usb_set_configuration(...","topics/sdk/usb/usb-host-interface-driver_struct_usb_driver.html@@@Driver (struct usb_driver)@@@USB Interface \u8FD9\u4E00\u5C42\u6B21\u7684\u9A71\u52A8\u5C31\u975E\u5E38\u7684\u591A\u4E86\uFF0C\u8FD9\u4E00\u5C42\u4E3B\u8981\u662F\u5728 USB \u4F20\u8F93\u5C42\u4E4B\u4E0A\uFF0C\u9488\u5BF9 USB Device \u7684\u67D0\u4E2A\u529F\u80FD Function \u5F00\u53D1\u5BF9\u5E94\u7684 USB \u529F\u80FD\u4E1A\u52A1\u9A71\u52A8\uFF0C\u5373\u5E38\u8BF4\u7684 USB Client Software \u3002\u5728 USB \u5B9A\u4E49\u4E2D\uFF0C\u4E00\u4E2A Interface \u5C31\u662F\u4E00\u4E2A Function \u3002 USB Interface Driver \u5BF9\u5E94\u7684\u6570\u636E\u7ED3\u6784\u4E3A struct...","topics/sdk/usb/usb-host-interface-usb_hub_driver.html@@@USB Hub Driver@@@\u666E\u901A\u7684 Usb Device \u901A\u8FC7\u5185\u90E8\u7684 Interface \u63D0\u4F9B\u5404\u79CD\u4E1A\u52A1\u529F\u80FD\u3002\u800C Hub \u8FD9\u7C7B\u7279\u6B8A\u7684 Usb Device \u529F\u80FD\u5C31\u4E00\u79CD\uFF0C\u90A3\u5C31\u662F\u76D1\u63A7\u7AEF\u53E3\u7684\u72B6\u6001\u53D8\u5316\uFF1A \u5728\u7AEF\u53E3\u4E0A\u6709\u8BBE\u5907 attach \u65F6\uFF0C\u521B\u5EFA\u65B0\u7684 usb device\uFF0C\u7ED9\u5176\u9002\u914D\u9A71\u52A8\u3002\u5982\u679C\u662F hub device\uFF0C\u5B50 usb \u9A71\u52A8\u4F1A\u8FDB\u4E00\u6B65\u626B\u63CF\u7AEF\u53E3\u3002 \u5728\u7AEF\u53E3\u4E0A\u6709\u8BBE\u5907 deattach \u65F6\uFF0C\u79FB\u9664\u6389\u5BF9\u5E94\u7684 usb device\u3002\u5982\u679C\u662F hub...","topics/sdk/usb/usb-host-interface_layer.html@@@USB Interface Layer@@@...","topics/sdk/usb/usb-host_configuration.html@@@USB Host \u914D\u7F6E@@@ArtInChip \u63D0\u4F9B\u4E86\u4E24\u8DEF USB Host \u7AEF\u53E3\u548C\u4E00\u8DEF USB Device \u7AEF\u53E3\uFF0C\u9700\u8981\u5206\u522B\u8FDB\u884C\u914D\u7F6E\uFF1A USB Host Contoller \u914D\u7F6E ArtInChip \u5728\u4E00\u4E2A USB Host \u7AEF\u53E3\u4E2D\u63D0\u4F9B\u4E86\u4E0B\u5217 Host Contoller\uFF0C\u5728\u8F6F\u4EF6\u4E0A\u9700\u8981\u9700\u8981\u5206\u5F00\u914D\u7F6E\uFF1A \u914D\u7F6E EHCI \u63A7\u5236\u5668 USB Interface \u9A71\u52A8\u914D\u7F6E \u5B8C\u6210 USB Host Contoller...","topics/sdk/usb/usb-host_configuration_2.html@@@USB Host \u914D\u7F6E@@@ArtInChip \u63D0\u4F9B\u4E86\u4E24\u8DEF USB Host \u7AEF\u53E3\u548C\u4E00\u8DEF USB Device \u7AEF\u53E3\uFF0C\u9700\u8981\u5206\u522B\u8FDB\u884C\u914D\u7F6E\uFF1A USB Host Contoller \u914D\u7F6E ArtInChip \u5728\u4E00\u4E2A USB Host \u7AEF\u53E3\u4E2D\u63D0\u4F9B\u4E86\u4E0B\u5217 Host Contoller\uFF0C\u5728\u8F6F\u4EF6\u4E0A\u9700\u8981\u9700\u8981\u5206\u5F00\u914D\u7F6E\uFF1A \u914D\u7F6E EHCI \u63A7\u5236\u5668 USB Interface \u9A71\u52A8\u914D\u7F6E \u5B8C\u6210 USB Host Contoller...","topics/sdk/usb/usb-host_subsystem_code_structure.html@@@USB Host \u5B50\u7CFB\u7EDF\u4EE3\u7801\u67B6\u6784@@@\u6574\u4E2A USB \u7CFB\u7EDF\u7684\u901A\u8BAF\u6A21\u578B\u5982\u4E0A\u56FE\u6240\u793A\uFF0CHost \u6846\u67B6\u89C1\u5DE6\u4FA7\u5F69\u56FE\u90E8\u5206\u3002...","topics/sdk/usb/usb-host_testusb.html@@@Host \u4FA7 testusb@@@testusb \u6E90\u7801\u5305\u542B\u5728 linux \u5185\u6838\u5F53\u4E2D\uFF0C \u8DEF\u5F84\u4E3A linux-5.10\\tools\\usb\\testusb.c \u3002\u53EF\u4EE5\u901A\u8FC7 luban \u7F16\u8BD1\uFF0C\u6216\u8005\u7B80\u5355\u7F16\u8BD1\uFF1A gcc-Wall-g-lpthread-otestusbtestusb.c \u5C31\u53EF\u4EE5\u542F\u52A8\u6D4B\u8BD5\u4E86\uFF1A sudo ./testusb -a unknown speed /dev/bus/usb/ 001 / 002...","topics/sdk/usb/usb-host_usbtest_ko.html@@@Host \u4FA7 usbtest.ko@@@\u5728 Host \u4FA7\u7684 usbtest.ko \u662F\u4E00\u4E2A\u6807\u51C6\u7684 usb interface driver \u3002\u5B83\u6839\u636E Vendor ID = 0x0525 \u3001 Product ID = 0xa4a0 \u9002\u914D\u4E0A\u4E00\u8282 Composite Device \u4E2D\u7684 SourceSink Interface \u6216\u8005 Loopback Interface \u3002 static const struct usb_device_id...","topics/sdk/usb/usb-interface_descriptor.html@@@Interface Descriptor@@@...","topics/sdk/usb/usb-interface_descriptor_2.html@@@Interface Descriptor@@@...","topics/sdk/usb/usb-intro.html@@@USB \u7B80\u4ECB@@@USB \u53D1\u5C55\u5386\u53F2 USB \u5230\u73B0\u5728\u4E00\u5171\u7ECF\u5386\u4E86\u4EE5\u4E0B\u7248\u672C\uFF1A Version App Speed Direction Data Line USB 1.0 \u4F4E\u901F Low Speed 1.5Mbps Half \u534A\u53CC\u5DE5\u6A21\u5F0F 1 \u5BF9\u5DEE\u5206\u7EBF D+/D1 USB 1.1 \u5168\u901F Full Speed 12Mbps Half \u534A\u53CC\u5DE5\u6A21\u5F0F 1 \u5BF9\u5DEE\u5206\u7EBF D+/D1 USB 2.0 \u9AD8\u901F Hi-Speed 480Mbps...","topics/sdk/usb/usb-intro_2.html@@@USB \u7B80\u4ECB@@@USB \u53D1\u5C55\u5386\u53F2 USB \u5230\u73B0\u5728\u4E00\u5171\u7ECF\u5386\u4E86\u4EE5\u4E0B\u7248\u672C\uFF1A Version App Speed Direction Data Line USB 1.0 \u4F4E\u901F Low Speed 1.5Mbps Half \u534A\u53CC\u5DE5\u6A21\u5F0F 1 \u5BF9\u5DEE\u5206\u7EBF D+/D1 USB 1.1 \u5168\u901F Full Speed 12Mbps Half \u534A\u53CC\u5DE5\u6A21\u5F0F 1 \u5BF9\u5DEE\u5206\u7EBF D+/D1 USB 2.0 \u9AD8\u901F Hi-Speed 480Mbps...","topics/sdk/usb/usb-listing-communication.html@@@USB \u679A\u4E3E\u901A\u8BAF\u8FC7\u7A0B@@@USB \u8BBE\u5907\u5728\u6B63\u5E38\u5DE5\u4F5C\u4E4B\u524D\uFF0C\u7B2C\u4E00\u4EF6\u8981\u505A\u7684\u4E8B\u60C5\u5C31\u662F\u679A\u4E3E\u3002\u679A\u4E3E\u7684\u4F5C\u7528\u5C31\u662F\u8BA9\u8BBE\u5907\u4ECE\u4E0A\u8FF0\u72B6\u6001\u56FE\u4E2D\u7684 Powered \u9010\u6B65\u8FDB\u5165 Configured \u6A21\u5F0F\u3002 USB \u679A\u4E3E\u7684\u4E3B\u8981\u76EE\u7684\u662F\u8BFB\u51FA\u8BBE\u5907\u7684\u6240\u6709\u914D\u7F6E\u4FE1\u606F\u3002 Transaction 1 ~ Transaction 3 (Data Stage) \u53EF\u4EE5\u770B\u5230 Transaction 1 ~ Transaction 3 \u8054\u5408\u8D77\u6765\u4ECE Device \u4F20\u9012\u56DE\u4E86 18...","topics/sdk/usb/usb-listing-communication_2.html@@@USB \u679A\u4E3E\u901A\u8BAF\u8FC7\u7A0B@@@USB \u8BBE\u5907\u5728\u6B63\u5E38\u5DE5\u4F5C\u4E4B\u524D\uFF0C\u7B2C\u4E00\u4EF6\u8981\u505A\u7684\u4E8B\u60C5\u5C31\u662F\u679A\u4E3E\u3002\u679A\u4E3E\u7684\u4F5C\u7528\u5C31\u662F\u8BA9\u8BBE\u5907\u4ECE\u4E0A\u8FF0\u72B6\u6001\u56FE\u4E2D\u7684 Powered \u9010\u6B65\u8FDB\u5165 Configured \u6A21\u5F0F\u3002 USB \u679A\u4E3E\u7684\u4E3B\u8981\u76EE\u7684\u662F\u8BFB\u51FA\u8BBE\u5907\u7684\u6240\u6709\u914D\u7F6E\u4FE1\u606F\u3002 Transaction 1 ~ Transaction 3 (Data Stage) \u53EF\u4EE5\u770B\u5230 Transaction 1 ~ Transaction 3 \u8054\u5408\u8D77\u6765\u4ECE Device \u4F20\u9012\u56DE\u4E86 18...","topics/sdk/usb/usb-listing-procedure.html@@@\u679A\u4E3E\u6D41\u7A0B@@@USB \u8BBE\u5907\u679A\u4E3E\u603B\u4F53\u6D41\u7A0B\u662F\u8BA9 Host \u8BA4\u5F97\u8FD9\u4E2A USB \u8BBE\u5907\uFF0C\u5E76\u4E14\u4E3A\u8BE5\u8BBE\u5907\u51C6\u5907\u8D44\u6E90\uFF0C\u5EFA\u7ACB\u597D\u4E3B\u673A\u548C\u8BBE\u5907\u4E4B\u95F4\u7684\u6570\u636E\u4F20\u9012\u673A\u5236\u3002\u4E00\u4E2A\u8BBE\u5907\u679A\u4E3E\u7684\u8FC7\u7A0B\u5206\u4E3A\u5982\u4E0B 8 \u6B65\uFF1A \u83B7\u53D6\u8BBE\u5907\u63CF\u8FF0\u7B26 Host/Hub \u901A\u8FC7\u6570\u636E\u7EBF\u4E0A\u62C9\u7535\u963B\u7684\u963B\u503C\u53D8\u5316\u68C0\u6D4B\u5230\u65B0\u8BBE\u5907\u63A5\u5165\u3002Host \u7B49\u5F85 100ms \u4EE5\u4FDD\u8BC1\u8BBE\u5907\u7535\u6E90\u7A33\u5B9A\u3002 Host \u5411 device \u53D1 Bus Reset \u4F7F\u5F97\u8BBE\u5907\u8FDB\u5165 default...","topics/sdk/usb/usb-listing-procedure_2.html@@@\u679A\u4E3E\u6D41\u7A0B@@@USB \u8BBE\u5907\u679A\u4E3E\u603B\u4F53\u6D41\u7A0B\u662F\u8BA9 Host \u8BA4\u5F97\u8FD9\u4E2A USB \u8BBE\u5907\uFF0C\u5E76\u4E14\u4E3A\u8BE5\u8BBE\u5907\u51C6\u5907\u8D44\u6E90\uFF0C\u5EFA\u7ACB\u597D\u4E3B\u673A\u548C\u8BBE\u5907\u4E4B\u95F4\u7684\u6570\u636E\u4F20\u9012\u673A\u5236\u3002\u4E00\u4E2A\u8BBE\u5907\u679A\u4E3E\u7684\u8FC7\u7A0B\u5206\u4E3A\u5982\u4E0B 8 \u6B65\uFF1A \u83B7\u53D6\u8BBE\u5907\u63CF\u8FF0\u7B26 Host/Hub \u901A\u8FC7\u6570\u636E\u7EBF\u4E0A\u62C9\u7535\u963B\u7684\u963B\u503C\u53D8\u5316\u68C0\u6D4B\u5230\u65B0\u8BBE\u5907\u63A5\u5165\u3002Host \u7B49\u5F85 100ms \u4EE5\u4FDD\u8BC1\u8BBE\u5907\u7535\u6E90\u7A33\u5B9A\u3002 Host \u5411 device \u53D1 Bus Reset \u4F7F\u5F97\u8BBE\u5907\u8FDB\u5165 default...","topics/sdk/usb/usb-loopback_function.html@@@Loopback Function@@@Loopback Function \u63D0\u4F9B\u7684\u529F\u80FD\u66F4\u4E3A\u7B80\u5355\uFF0C\u5B83\u5206\u914D\u4E86\u4E24\u4E2A bulk endpoint\uFF0C\u6240\u505A\u7684\u5C31\u662F\u628A out_ep \u63A5\u6536\u5230\u7684\u6570\u636E \u8F6C\u53D1\u5230 in_ep \u3002 \u4E3B\u8981\u6D41\u7A0B\u5982\u4E0B\uFF1A drivers\\usb\\gadget\\function\\f_loopback.c: loopback_bind()\uFF1A static int loopback_bind( struct usb_configuration...","topics/sdk/usb/usb-otg_configuration.html@@@USB OTG \u914D\u7F6E@@@OTG \u6A21\u5F0F\u914D\u7F6E OTG \u53EF\u4EE5\u914D\u7F6E\u6210 Auto \u6A21\u5F0F \u6216\u8005 Manual \u6A21\u5F0F \uFF1A Auto \u6A21\u5F0F \u3002\u6839\u636E id-pin GPIO \u7BA1\u811A\u7684\u7535\u5E73\u6765\u51B3\u5B9A\u5F53\u524D OTG \u7AEF\u53E3\u5DE5\u4F5C\u6A21\u5F0F\u4E3A Host / Device \u3002 \u914D\u7F6E OTG \u4E3A Auto \u6A21\u5F0F\u65F6\uFF0Cid-pin \u662F\u5FC5\u987B\u8981\u914D\u7F6E\u7684\uFF0C\u9700\u8981\u914D\u7F6E id-pin GPIO \u7684\u540D\u79F0\u548C\u6781\u6027\u3002\u76F8\u5173 menuconfig \u914D\u7F6E\uFF1A > Local packages...","topics/sdk/usb/usb-otg_configuration_2.html@@@USB OTG \u914D\u7F6E@@@OTG \u6A21\u5F0F\u914D\u7F6E OTG \u53EF\u4EE5\u914D\u7F6E\u6210 Auto \u6A21\u5F0F \u6216\u8005 Manual \u6A21\u5F0F \uFF1A Auto \u6A21\u5F0F \u3002\u6839\u636E id-pin GPIO \u7BA1\u811A\u7684\u7535\u5E73\u6765\u51B3\u5B9A\u5F53\u524D OTG \u7AEF\u53E3\u5DE5\u4F5C\u6A21\u5F0F\u4E3A Host / Device \u3002 \u914D\u7F6E OTG \u4E3A Auto \u6A21\u5F0F\u65F6\uFF0Cid-pin \u662F\u5FC5\u987B\u8981\u914D\u7F6E\u7684\uFF0C\u9700\u8981\u914D\u7F6E id-pin GPIO \u7684\u540D\u79F0\u548C\u6781\u6027\u3002\u76F8\u5173 menuconfig \u914D\u7F6E\uFF1A > Local packages...","topics/sdk/usb/usb-packet.html@@@Packet@@@\u901A\u5E38\u4E00\u4E2A Packet \u7531 5 \u4E2A\u90E8\u5206\u7EC4\u6210\u3002 PID : Packet ID ADDR : Device Address EP : Endpoint Number Payload DATA CRC \uFF1A 5/16 bits CRC \u4EE5\u4E0B\u662F\u56DB\u79CD Packet \u7684\u5177\u4F53\u683C\u5F0F\u3002 Token Packet Token Packet \u4E3B\u8981\u5206\u56DB\u79CD\uFF1A IN , OUT , SETUP , SOF Data...","topics/sdk/usb/usb-packet_135_setup_data.html@@@Packet 135 (Setup Data)@@@\u4E3B\u8981\u5206\u6790\u4E00\u4E0B\u7B2C\u4E8C\u4E2A\u5305\u6570\u636E\u5305\u4E2D\u7684 DATA \u5B57\u6BB5\uFF0C\u5305\u542B\u7684\u5C31\u662F\u547D\u4EE4\u3002Data \u4E2D\u603B\u5171\u6709 8 \u5B57\u8282\uFF0C\u6BCF\u5B57\u8282\u7684\u542B\u4E49\u5982\u4E0B (USB \u534F\u8BAE\u62A5\u6587\u662F\u5C0F\u7AEF\u6A21\u5F0F)\uFF1A \u5728 Linux kernel \u4E2D\uFF0C\u4F7F\u7528\u4E00\u4E2A\u7ED3\u6784\u4F53\u6765\u8868\u793A\uFF1A struct usb_ctrlrequest { __u8 bRequestType; __u8 bRequest; __le16 wValue; __le16 wIndex; __le16...","topics/sdk/usb/usb-packet_135_setup_data_2.html@@@Packet 135 (Setup Data)@@@\u4E3B\u8981\u5206\u6790\u4E00\u4E0B\u7B2C\u4E8C\u4E2A\u5305\u6570\u636E\u5305\u4E2D\u7684 DATA \u5B57\u6BB5\uFF0C\u5305\u542B\u7684\u5C31\u662F\u547D\u4EE4\u3002Data \u4E2D\u603B\u5171\u6709 8 \u5B57\u8282\uFF0C\u6BCF\u5B57\u8282\u7684\u542B\u4E49\u5982\u4E0B (USB \u534F\u8BAE\u62A5\u6587\u662F\u5C0F\u7AEF\u6A21\u5F0F)\uFF1A \u5728 Linux kernel \u4E2D\uFF0C\u4F7F\u7528\u4E00\u4E2A\u7ED3\u6784\u4F53\u6765\u8868\u793A\uFF1A struct usb_ctrlrequest { __u8 bRequestType; __u8 bRequest; __le16 wValue; __le16 wIndex; __le16...","topics/sdk/usb/usb-packet_2.html@@@Packet@@@\u901A\u5E38\u4E00\u4E2A Packet \u7531 5 \u4E2A\u90E8\u5206\u7EC4\u6210\u3002 PID : Packet ID ADDR : Device Address EP : Endpoint Number Payload DATA CRC \uFF1A 5/16 bits CRC \u4EE5\u4E0B\u662F\u56DB\u79CD Packet \u7684\u5177\u4F53\u683C\u5F0F\u3002 Token Packet Token Packet \u4E3B\u8981\u5206\u56DB\u79CD\uFF1A IN , OUT , SETUP , SOF Data...","topics/sdk/usb/usb-protocol_transfer_format.html@@@USB \u534F\u8BAE\u4F20\u8F93\u683C\u5F0F@@@Transfer / Frame (\u4F20\u8F93): \u4ECE\u65F6\u95F4\u7684\u7EF4\u5EA6\u770B\uFF0CUSB \u901A\u4FE1\u662F\u7531\u4E00\u7CFB\u5217\u7684 Transfer (\u4F20\u8F93)\u7EC4\u6210\u7684\u3002\u5305\u62EC\u56DB\u79CD\u4F20\u8F93\u7C7B\u578B\uFF1A Control Transfers \u63A7\u5236\u4F20\u8F93 Isochronous Transfers \u540C\u6B65\u4F20\u8F93 Interrupt Transfers \u4E2D\u65AD\u4F20\u8F93 Bulk Transfers \u6279\u91CF\u4F20\u8F93 Transaction (\u4E8B\u52A1): \u6BCF\u4E00\u4E2A Transfer...","topics/sdk/usb/usb-protocol_transfer_format_2.html@@@USB \u534F\u8BAE\u4F20\u8F93\u683C\u5F0F@@@Transfer / Frame (\u4F20\u8F93): \u4ECE\u65F6\u95F4\u7684\u7EF4\u5EA6\u770B\uFF0CUSB \u901A\u4FE1\u662F\u7531\u4E00\u7CFB\u5217\u7684 Transfer (\u4F20\u8F93)\u7EC4\u6210\u7684\u3002\u5305\u62EC\u56DB\u79CD\u4F20\u8F93\u7C7B\u578B\uFF1A Control Transfers \u63A7\u5236\u4F20\u8F93 Isochronous Transfers \u540C\u6B65\u4F20\u8F93 Interrupt Transfers \u4E2D\u65AD\u4F20\u8F93 Bulk Transfers \u6279\u91CF\u4F20\u8F93 Transaction (\u4E8B\u52A1): \u6BCF\u4E00\u4E2A Transfer...","topics/sdk/usb/usb-references.html@@@\u53C2\u8003\u8D44\u6599@@@USB \u7CFB\u5217(2)\u534F\u8BAE\u7B80\u4ECB USB OTG \u5B66\u4E60\u7B14\u8BB0 USB \u539F\u7406\u7B80\u5355\u53D9\u8FF0 linux USB \u7F16\u7A0B USB \u9A71\u52A8\u5206\u6790 USB \u534F\u8BAE\u5206\u6790\u8F6F\u4EF6 LeCroy USB Advisor USB \u7CFB\u5217(3) Windows USB \u679A\u4E3E\u8FC7\u7A0B usb \u9F20\u6807\u679A\u4E3E\u8FC7\u7A0B\u6DF1\u5EA6\u89E3\u6790\uFF08\u4E0A\uFF09 usb \u9F20\u6807\u679A\u4E3E\u8FC7\u7A0B\u6DF1\u5EA6\u89E3\u6790\uFF08\u4E2D\uFF09 usb \u9F20\u6807\u679A\u4E3E\u8FC7\u7A0B\u6DF1\u5EA6\u89E3\u6790\uFF08\u4E0B\uFF09 \u548C\u83DC\u9E1F\u4E00\u8D77\u5B66 linux \u603B\u7EBF\u9A71\u52A8\u4E4B\u521D\u8BC6 USB...","topics/sdk/usb/usb-references_2.html@@@\u53C2\u8003\u8D44\u6599@@@USB \u7CFB\u5217(2)\u534F\u8BAE\u7B80\u4ECB USB OTG \u5B66\u4E60\u7B14\u8BB0 USB \u539F\u7406\u7B80\u5355\u53D9\u8FF0 linux USB \u7F16\u7A0B USB \u9A71\u52A8\u5206\u6790 USB \u534F\u8BAE\u5206\u6790\u8F6F\u4EF6 LeCroy USB Advisor USB \u7CFB\u5217(3) Windows USB \u679A\u4E3E\u8FC7\u7A0B usb \u9F20\u6807\u679A\u4E3E\u8FC7\u7A0B\u6DF1\u5EA6\u89E3\u6790\uFF08\u4E0A\uFF09 usb \u9F20\u6807\u679A\u4E3E\u8FC7\u7A0B\u6DF1\u5EA6\u89E3\u6790\uFF08\u4E2D\uFF09 usb \u9F20\u6807\u679A\u4E3E\u8FC7\u7A0B\u6DF1\u5EA6\u89E3\u6790\uFF08\u4E0B\uFF09 \u548C\u83DC\u9E1F\u4E00\u8D77\u5B66 linux \u603B\u7EBF\u9A71\u52A8\u4E4B\u521D\u8BC6 USB...","topics/sdk/usb/usb-reset_powered_default.html@@@Reset (Powered > Default)@@@Host \u5411 Device \u53D1\u9001\u4E86\u4E00\u4E2A Reset \u4FE1\u53F7\uFF0C\u7531\u4E0A\u8FB9\u7684\u72B6\u6001\u56FE\u53EF\u4EE5\u770B\u51FA\uFF0CUSB \u7531 Powered \u6A21\u5F0F\u8FDB\u5165\u4E86 Default \u6A21\u5F0F\u3002...","topics/sdk/usb/usb-reset_powered_default_2.html@@@Reset (Powered > Default)@@@Host \u5411 Device \u53D1\u9001\u4E86\u4E00\u4E2A Reset \u4FE1\u53F7\uFF0C\u7531\u4E0A\u8FB9\u7684\u72B6\u6001\u56FE\u53EF\u4EE5\u770B\u51FA\uFF0CUSB \u7531 Powered \u6A21\u5F0F\u8FDB\u5165\u4E86 Default \u6A21\u5F0F\u3002...","topics/sdk/usb/usb-source_sink_function.html@@@SourceSink Function@@@SourceSink Function \u7684\u4E3B\u8981\u529F\u80FD\u662F\u63D0\u4F9B\u4E86\u4E00\u7EC4 USB \u6D4B\u8BD5 endpoint\uFF0C\u5176\u4E2D: Sink \u3002sinks bulk packets OUT to the peripheral\u3002\u610F\u601D\u662F\u628A\u6570\u636E\u4ECE Host \u5F15\u6D41\u5230 Device\uFF0C\u5373 OUT \u65B9\u5411\u3002 Source \u3002sources them IN to the host\u3002\u610F\u601D\u662F\u628A\u4ECE Device \u53D1\u9001\u6570\u636E\u5230 Device\uFF0C\u5373 IN...","topics/sdk/usb/usb-test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@...","topics/sdk/usb/usb-tranfser_0_control_read_get_device_descriptor.html@@@Tranfser 0 (Control Read) (Get Device Descriptor)@@@Transfer 0 \u7684\u4F5C\u7528\u662F Get Device Descriptor \uFF0C\u5B83\u662F\u4E00\u4E2A Control Read \u7C7B\u578B\u7684 Transfer \u3002\u5176\u4E2D\uFF1A Transaction 0 \uFF1A Setup Stage Transaction 1~3 \uFF1A Data Stage Transaction 4 \uFF1A Status Stage...","topics/sdk/usb/usb-tranfser_0_control_read_get_device_descriptor_2.html@@@Tranfser 0 (Control Read) (Get Device Descriptor)@@@Transfer 0 \u7684\u4F5C\u7528\u662F Get Device Descriptor \uFF0C\u5B83\u662F\u4E00\u4E2A Control Read \u7C7B\u578B\u7684 Transfer \u3002\u5176\u4E2D\uFF1A Transaction 0 \uFF1A Setup Stage Transaction 1~3 \uFF1A Data Stage Transaction 4 \uFF1A Status Stage...","topics/sdk/usb/usb-tranfser_10.html@@@Tranfser 10@@@...","topics/sdk/usb/usb-tranfser_10_2.html@@@Tranfser 10@@@...","topics/sdk/usb/usb-tranfser_11.html@@@Tranfser 11@@@...","topics/sdk/usb/usb-tranfser_11_2.html@@@Tranfser 11@@@...","topics/sdk/usb/usb-tranfser_12.html@@@Tranfser 12@@@...","topics/sdk/usb/usb-tranfser_12_2.html@@@Tranfser 12@@@...","topics/sdk/usb/usb-tranfser_1_control_no_data_set_device_address_default_address.html@@@Tranfser 1 (Control No Data) (Set Device Address) (Default > Address)@@@Tranfser 1 \u7684\u4E3B\u8981\u4F5C\u7528\u662F\u8BBE\u7F6E Device Address \uFF0CUSB \u7531\u72B6\u6001\u56FE\u4E2D\u7684 Default \u6A21\u5F0F\u8FDB\u5165\u4E86 Address \u6A21\u5F0F\uFF0C\u662F\u4E00\u4E2A Control No Data \u7C7B\u578B\u7684 Transfer \u3002\u5176\u4E2D\uFF1A Transaction 5 \uFF1A Setup Stage Transaction 6 \uFF1A Status Stage...","topics/sdk/usb/usb-tranfser_1_control_no_data_set_device_address_default_address_2.html@@@Tranfser 1 (Control No Data) (Set Device Address) (Default > Address)@@@Tranfser 1 \u7684\u4E3B\u8981\u4F5C\u7528\u662F\u8BBE\u7F6E Device Address \uFF0CUSB \u7531\u72B6\u6001\u56FE\u4E2D\u7684 Default \u6A21\u5F0F\u8FDB\u5165\u4E86 Address \u6A21\u5F0F\uFF0C\u662F\u4E00\u4E2A Control No Data \u7C7B\u578B\u7684 Transfer \u3002\u5176\u4E2D\uFF1A Transaction 5 \uFF1A Setup Stage Transaction 6 \uFF1A Status Stage...","topics/sdk/usb/usb-tranfser_2_control_read_get_device_descriptor.html@@@Tranfser 2 (Control Read) (Get Device Descriptor)@@@Transfer 2 \u7684\u4F5C\u7528\u662F\u91CD\u65B0\u83B7\u53D6\u4E86\u4E00\u904D\u8BBE\u5907\u63CF\u8FF0\u7B26 Get Device Descriptor \uFF0C\u4E0D\u540C\u4E4B\u5904\u4E0D\u662F\u7528\u9ED8\u8BA4\u5730\u5740 0 \u83B7\u53D6\u7684\uFF0C\u800C\u662F\u7528\u521A\u624D\u914D\u7F6E\u7684 Device Address 0x03 \u6765\u83B7\u53D6\u7684\u3002\u5B83\u662F\u4E00\u4E2A Control Read \u7C7B\u578B\u7684 Transfer \u3002\u5176\u4E2D\uFF1A Transaction 7 \uFF1A Setup Stage Transaction 8~10 \uFF1A Data Stage...","topics/sdk/usb/usb-tranfser_2_control_read_get_device_descriptor_2.html@@@Tranfser 2 (Control Read) (Get Device Descriptor)@@@Transfer 2 \u7684\u4F5C\u7528\u662F\u91CD\u65B0\u83B7\u53D6\u4E86\u4E00\u904D\u8BBE\u5907\u63CF\u8FF0\u7B26 Get Device Descriptor \uFF0C\u4E0D\u540C\u4E4B\u5904\u4E0D\u662F\u7528\u9ED8\u8BA4\u5730\u5740 0 \u83B7\u53D6\u7684\uFF0C\u800C\u662F\u7528\u521A\u624D\u914D\u7F6E\u7684 Device Address 0x03 \u6765\u83B7\u53D6\u7684\u3002\u5B83\u662F\u4E00\u4E2A Control Read \u7C7B\u578B\u7684 Transfer \u3002\u5176\u4E2D\uFF1A Transaction 7 \uFF1A Setup Stage Transaction 8~10 \uFF1A Data Stage...","topics/sdk/usb/usb-tranfser_3_control_read_get_config_descriptor.html@@@Tranfser 3 (Control Read) (Get Config Descriptor)@@@Transfer 3 \u7684\u4F5C\u7528\u662F\u83B7\u53D6\u914D\u7F6E\u63CF\u8FF0\u7B26 Get Configuration Descriptor \uFF0C\u5B83\u662F\u4E00\u4E2A Control Read \u7C7B\u578B\u7684 Transfer \u3002\u5176\u4E2D\uFF1A Transaction 12 \uFF1A Setup Stage Transaction 13~14 \uFF1A Data Stage Transaction 15 \uFF1A Status Stage...","topics/sdk/usb/usb-tranfser_3_control_read_get_config_descriptor_2.html@@@Tranfser 3 (Control Read) (Get Config Descriptor)@@@Transfer 3 \u7684\u4F5C\u7528\u662F\u83B7\u53D6\u914D\u7F6E\u63CF\u8FF0\u7B26 Get Configuration Descriptor \uFF0C\u5B83\u662F\u4E00\u4E2A Control Read \u7C7B\u578B\u7684 Transfer \u3002\u5176\u4E2D\uFF1A Transaction 12 \uFF1A Setup Stage Transaction 13~14 \uFF1A Data Stage Transaction 15 \uFF1A Status Stage...","topics/sdk/usb/usb-tranfser_4_control_read_get_4_descriptors.html@@@Tranfser 4 (Control Read) (Get 4 Descriptors)@@@...","topics/sdk/usb/usb-tranfser_4_control_read_get_4_descriptors_2.html@@@Tranfser 4 (Control Read) (Get 4 Descriptors)@@@...","topics/sdk/usb/usb-tranfser_5_control_read_get_string_0_descriptor.html@@@Tranfser 5 (Control Read) (Get String 0 Descriptor)@@@...","topics/sdk/usb/usb-tranfser_5_control_read_get_string_0_descriptor_2.html@@@Tranfser 5 (Control Read) (Get String 0 Descriptor)@@@...","topics/sdk/usb/usb-tranfser_6_control_read_get_string_2_descriptor.html@@@Tranfser 6 (Control Read) (Get String 2 Descriptor)@@@...","topics/sdk/usb/usb-tranfser_6_control_read_get_string_2_descriptor_2.html@@@Tranfser 6 (Control Read) (Get String 2 Descriptor)@@@...","topics/sdk/usb/usb-tranfser_7_control_read_get_string_1_descriptor.html@@@Tranfser 7 (Control Read) (Get String 1 Descriptor)@@@...","topics/sdk/usb/usb-tranfser_7_control_read_get_string_1_descriptor_2.html@@@Tranfser 7 (Control Read) (Get String 1 Descriptor)@@@...","topics/sdk/usb/usb-tranfser_8_control_no_data_set_configured_address_configured.html@@@Tranfser 8 (Control No Data) (Set Configured) (Address \u2192 Configured)@@@...","topics/sdk/usb/usb-tranfser_8_control_no_data_set_configured_address_configured_2.html@@@Tranfser 8 (Control No Data) (Set Configured) (Address \u2192 Configured)@@@...","topics/sdk/usb/usb-tranfser_9.html@@@Tranfser 9@@@...","topics/sdk/usb/usb-tranfser_9_2.html@@@Tranfser 9@@@...","topics/sdk/usb/usb-transaction.html@@@Transaction@@@USB Transactions \u4E3B\u8981\u7531\u56DB\u79CD Packet \u7EC4\u6210\uFF1A Token Packet \u3001 Data Packet \u3001 Handshake Packet \u548C Special Packet \u3002\u4F46\u901A\u5E38\u7684\u4E00\u6B21 Transaction \u7531 3 \u4E2A Packets \u7EC4\u6210\uFF1A Token -> Data -> Handshake \u3002 IN/Read/Upstream Transaction IN...","topics/sdk/usb/usb-transaction_0_setup_stage.html@@@Transaction 0 (Setup Stage)@@@Transfer 0 \u7684\u7B2C\u4E00\u4E2A\u4E8B\u52A1 Transaction 0 \u5982\u4E0A\u56FE\u3002\u53EF\u4EE5\u770B\u51FA\uFF0C\u8FD9\u662F\u4E00\u4E2A Control \u4E8B\u52A1\uFF0C\u8BBE\u5907\u8981\u6267\u884C\u7684\u547D\u4EE4\u5C31\u662F GET_DESCRIPTOR \u4E5F\u5C31\u662F\u83B7\u53D6\u63CF\u8FF0\u7B26\u3002\u5176\u4E2D\u5206\u4E3A\u4E09\u4E2A\u5305\uFF1A Packet 134 \u7B2C\u4E00\u4E2A\u4E3A\u4EE4\u724C\u5305 Setup Token (\u4E3B\u673A\u4F20\u8F93\u7ED9\u8BBE\u5907) Packet 135 \u7B2C\u4E8C\u4E2A\u4E3A\u6570\u636E\u5305 Setup Data (\u4E3B\u673A\u4F20\u8F93\u7ED9\u8BBE\u5907) Packet 136 \u7B2C\u4E09\u4E2A\u4E3A\u63E1\u624B\u5305...","topics/sdk/usb/usb-transaction_0_setup_stage_2.html@@@Transaction 0 (Setup Stage)@@@Transfer 0 \u7684\u7B2C\u4E00\u4E2A\u4E8B\u52A1 Transaction 0 \u5982\u4E0A\u56FE\u3002\u53EF\u4EE5\u770B\u51FA\uFF0C\u8FD9\u662F\u4E00\u4E2A Control \u4E8B\u52A1\uFF0C\u8BBE\u5907\u8981\u6267\u884C\u7684\u547D\u4EE4\u5C31\u662F GET_DESCRIPTOR \u4E5F\u5C31\u662F\u83B7\u53D6\u63CF\u8FF0\u7B26\u3002\u5176\u4E2D\u5206\u4E3A\u4E09\u4E2A\u5305\uFF1A Packet 134 \u7B2C\u4E00\u4E2A\u4E3A\u4EE4\u724C\u5305 Setup Token (\u4E3B\u673A\u4F20\u8F93\u7ED9\u8BBE\u5907) Packet 135 \u7B2C\u4E8C\u4E2A\u4E3A\u6570\u636E\u5305 Setup Data (\u4E3B\u673A\u4F20\u8F93\u7ED9\u8BBE\u5907) Packet 136 \u7B2C\u4E09\u4E2A\u4E3A\u63E1\u624B\u5305...","topics/sdk/usb/usb-transaction_12_setup_stage.html@@@Transaction 12 (Setup Stage)@@@Offset Field Size Value Description 0 bmRequestType 1 0x80 \u8868\u793A\u671F\u671B\u7684\u6570\u636E\u4F20\u8F93\u65B9\u5411\u4E3A\u8BBE\u5907\u4F20\u8F93\u7ED9 \u4E3B\u673A\uFF0C\u8FD9\u6761\u547D\u4EE4\u7684\u63A5\u6536\u8005\u4E3A\u8BBE\u5907\u3002 1 bmRequest 1 0x06 \u4EE3\u8868\u4E86\u4E00\u4E2A\u547D\u4EE4\uFF0C\u6839\u636E Table 9-4 \u53EF\u4EE5\u5F97\u77E5\u4EE3\u8868\u7684\u547D\u4EE4\u4E3A\u83B7\u53D6\u63CF\u8FF0\u7B26 GET_DESCRIPTOR 2 wValue 2 0x00 0x02 \u6839\u636E Table 9-3...","topics/sdk/usb/usb-transaction_12_setup_stage_2.html@@@Transaction 12 (Setup Stage)@@@Offset Field Size Value Description 0 bmRequestType 1 0x80 \u8868\u793A\u671F\u671B\u7684\u6570\u636E\u4F20\u8F93\u65B9\u5411\u4E3A\u8BBE\u5907\u4F20\u8F93\u7ED9 \u4E3B\u673A\uFF0C\u8FD9\u6761\u547D\u4EE4\u7684\u63A5\u6536\u8005\u4E3A\u8BBE\u5907\u3002 1 bmRequest 1 0x06 \u4EE3\u8868\u4E86\u4E00\u4E2A\u547D\u4EE4\uFF0C\u6839\u636E Table 9-4 \u53EF\u4EE5\u5F97\u77E5\u4EE3\u8868\u7684\u547D\u4EE4\u4E3A\u83B7\u53D6\u63CF\u8FF0\u7B26 GET_DESCRIPTOR 2 wValue 2 0x00 0x02 \u6839\u636E Table 9-3...","topics/sdk/usb/usb-transaction_13_14_data_stage.html@@@Transaction 13~14 (Data Stage)@@@\u53EF\u4EE5\u770B\u5230 Transaction 13~14 \u8054\u5408\u8D77\u6765\u4ECE Device \u4F20\u9012\u56DE\u4E86 9 \u4E2A\u5B57\u8282\u7684\u6570\u636E\u7ED9 Host\uFF0C Transaction 13 \u4F20\u8F93\u4E86 8 \u4E2A\u5B57\u8282\u6570\u636E\uFF0C Transaction 14 \u4F20\u9012\u4E86 1 \u4E2A\u5B57\u8282\u6570\u636E\u3002 09 02 22 00 01 01 00 A0 32 \u8FD9 9 \u4E2A\u5B57\u8282\u6570\u636E\u5C31\u662F Transfer 12 \u6307\u5B9A\u8981\u8BFB\u53D6\u7684 Configuration Descriptor...","topics/sdk/usb/usb-transaction_13_14_data_stage_2.html@@@Transaction 13~14 (Data Stage)@@@\u53EF\u4EE5\u770B\u5230 Transaction 13~14 \u8054\u5408\u8D77\u6765\u4ECE Device \u4F20\u9012\u56DE\u4E86 9 \u4E2A\u5B57\u8282\u7684\u6570\u636E\u7ED9 Host\uFF0C Transaction 13 \u4F20\u8F93\u4E86 8 \u4E2A\u5B57\u8282\u6570\u636E\uFF0C Transaction 14 \u4F20\u9012\u4E86 1 \u4E2A\u5B57\u8282\u6570\u636E\u3002 09 02 22 00 01 01 00 A0 32 \u8FD9 9 \u4E2A\u5B57\u8282\u6570\u636E\u5C31\u662F Transfer 12 \u6307\u5B9A\u8981\u8BFB\u53D6\u7684 Configuration Descriptor...","topics/sdk/usb/usb-transaction_15_status_stage.html@@@Transaction 15 (Status Stage)@@@\u72B6\u6001\u9636\u6BB5\u7528\u4E8E\u8868\u793A\u4E00\u6B21\u63A7\u5236\u4F20\u8F93\u7684\u7ED3\u675F\u3002...","topics/sdk/usb/usb-transaction_15_status_stage_2.html@@@Transaction 15 (Status Stage)@@@\u72B6\u6001\u9636\u6BB5\u7528\u4E8E\u8868\u793A\u4E00\u6B21\u63A7\u5236\u4F20\u8F93\u7684\u7ED3\u675F\u3002...","topics/sdk/usb/usb-transaction_1_transaction_3_data_stage.html@@@Transaction 1 ~ Transaction 3 (Data Stage)@@@\u53EF\u4EE5\u770B\u5230 Transaction 1 ~ Transaction 3 \u8054\u5408\u8D77\u6765\u4ECE Device \u4F20\u9012\u56DE\u4E86 18 \u4E2A\u5B57\u8282\u7684\u6570\u636E\u7ED9 Host\uFF0C Transaction 1 \u548C Transaction 2 \u5206\u522B\u4F20\u8F93\u4E86 8 \u4E2A\u5B57\u8282\u6570\u636E\uFF0C Transaction 2 \u4F20\u9012\u4E86 2 \u4E2A\u5B57\u8282\u6570\u636E\u3002 12 01 00 02 00 00 00 08 6 D 04 18 C0 01 43 01 02 00 01 \u8FD9...","topics/sdk/usb/usb-transaction_1_transaction_3_data_stage_2.html@@@Transaction 1 ~ Transaction 3 (Data Stage)@@@\u53EF\u4EE5\u770B\u5230 Transaction 1 ~ Transaction 3 \u8054\u5408\u8D77\u6765\u4ECE Device \u4F20\u9012\u56DE\u4E86 18 \u4E2A\u5B57\u8282\u7684\u6570\u636E\u7ED9 Host\uFF0C Transaction 1 \u548C Transaction 2 \u5206\u522B\u4F20\u8F93\u4E86 8 \u4E2A\u5B57\u8282\u6570\u636E\uFF0C Transaction 2 \u4F20\u9012\u4E86 2 \u4E2A\u5B57\u8282\u6570\u636E\u3002 12 01 00 02 00 00 00 08 6 D 04 18 C0 01 43 01 02 00 01 \u8FD9...","topics/sdk/usb/usb-transaction_2.html@@@Transaction@@@USB Transactions \u4E3B\u8981\u7531\u56DB\u79CD Packet \u7EC4\u6210\uFF1A Token Packet \u3001 Data Packet \u3001 Handshake Packet \u548C Special Packet \u3002\u4F46\u901A\u5E38\u7684\u4E00\u6B21 Transaction \u7531 3 \u4E2A Packets \u7EC4\u6210\uFF1A Token -> Data -> Handshake \u3002 IN/Read/Upstream Transaction IN...","topics/sdk/usb/usb-transaction_23_setup_stage.html@@@Transaction 23 (Setup Stage)@@@...","topics/sdk/usb/usb-transaction_23_setup_stage_2.html@@@Transaction 23 (Setup Stage)@@@...","topics/sdk/usb/usb-transaction_24_data_stage.html@@@Transaction 24 (Data Stage)@@@...","topics/sdk/usb/usb-transaction_24_data_stage_2.html@@@Transaction 24 (Data Stage)@@@...","topics/sdk/usb/usb-transaction_26_setup_stage.html@@@Transaction 26 (Setup Stage)@@@...","topics/sdk/usb/usb-transaction_26_setup_stage_2.html@@@Transaction 26 (Setup Stage)@@@...","topics/sdk/usb/usb-transaction_27_31_data_stage.html@@@Transaction 27~31 (Data Stage)@@@...","topics/sdk/usb/usb-transaction_27_31_data_stage_2.html@@@Transaction 27~31 (Data Stage)@@@...","topics/sdk/usb/usb-transaction_38_setup_stage.html@@@Transaction 38 (Setup Stage)@@@...","topics/sdk/usb/usb-transaction_38_setup_stage_2.html@@@Transaction 38 (Setup Stage)@@@...","topics/sdk/usb/usb-transaction_4_status_stage.html@@@Transaction 4 (Status Stage)@@@\u72B6\u6001\u9636\u6BB5\u7528\u4E8E\u8868\u793A\u4E00\u6B21\u63A7\u5236\u4F20\u8F93\u7684\u7ED3\u675F\u3002 \u9996\u5148\u53D1\u9001\u4E00\u4E2A OUT \u5305\uFF0C\u6CE8\u610F\u4EE4\u724C\u5305\u4E3B\u8981\u662F\u6307\u660E\u4F20\u8F93\u7C7B\u578B\uFF0C\u8FD9\u91CC\u5C31\u4E3A OUT \u7C7B\u578B\u3002\u7136\u540E\u53D1\u4E00\u4E2A\u5927\u5C0F\u4E3A 0 \u7684 DATA \u5305\uFF0CDevice \u56DE\u4E00\u4E2A ACK \u63E1\u624B\u5305\u3002\u672C\u6B21\u4F20\u8F93\u7ED3\u675F\u3002...","topics/sdk/usb/usb-transaction_4_status_stage_2.html@@@Transaction 4 (Status Stage)@@@\u72B6\u6001\u9636\u6BB5\u7528\u4E8E\u8868\u793A\u4E00\u6B21\u63A7\u5236\u4F20\u8F93\u7684\u7ED3\u675F\u3002 \u9996\u5148\u53D1\u9001\u4E00\u4E2A OUT \u5305\uFF0C\u6CE8\u610F\u4EE4\u724C\u5305\u4E3B\u8981\u662F\u6307\u660E\u4F20\u8F93\u7C7B\u578B\uFF0C\u8FD9\u91CC\u5C31\u4E3A OUT \u7C7B\u578B\u3002\u7136\u540E\u53D1\u4E00\u4E2A\u5927\u5C0F\u4E3A 0 \u7684 DATA \u5305\uFF0CDevice \u56DE\u4E00\u4E2A ACK \u63E1\u624B\u5305\u3002\u672C\u6B21\u4F20\u8F93\u7ED3\u675F\u3002...","topics/sdk/usb/usb-transaction_5_setup_stage.html@@@Transaction 5 (Setup Stage)@@@Packet 275 \u662F\u6838\u5FC3\uFF0C\u5176\u4E2D\u7684 Setup Data \u5177\u4F53\u89E3\u6790\u5982\u4E0B\uFF1A Offset Field Size Value Description 0 bmRequestType 1 0x00 \u8868\u793A\u671F\u671B\u7684 \u6570\u636E\u4F20\u8F93\u65B9 \u5411\u4E3A\u4E3B\u673A\u4F20 \u8F93\u7ED9\u8BBE\u5907\u3002 1 bmRequest 1 0x05 \u4EE3\u8868\u4E86\u4E00\u4E2A\u547D\u4EE4\uFF0C\u6839\u636E Table 9-4 \u53EF\u4EE5\u5F97\u77E5\u4EE3\u8868 SET_ADDRESS 2 wValue 2 0x03 0x00...","topics/sdk/usb/usb-transaction_5_setup_stage_2.html@@@Transaction 5 (Setup Stage)@@@Packet 275 \u662F\u6838\u5FC3\uFF0C\u5176\u4E2D\u7684 Setup Data \u5177\u4F53\u89E3\u6790\u5982\u4E0B\uFF1A Offset Field Size Value Description 0 bmRequestType 1 0x00 \u8868\u793A\u671F\u671B\u7684 \u6570\u636E\u4F20\u8F93\u65B9 \u5411\u4E3A\u4E3B\u673A\u4F20 \u8F93\u7ED9\u8BBE\u5907\u3002 1 bmRequest 1 0x05 \u4EE3\u8868\u4E86\u4E00\u4E2A\u547D\u4EE4\uFF0C\u6839\u636E Table 9-4 \u53EF\u4EE5\u5F97\u77E5\u4EE3\u8868 SET_ADDRESS 2 wValue 2 0x03 0x00...","topics/sdk/usb/usb-transaction_6_status_stage.html@@@Transaction 6 (Status Stage)@@@\u72B6\u6001\u9636\u6BB5\u7528\u4E8E\u8868\u793A\u4E00\u6B21\u63A7\u5236\u4F20\u8F93\u7684\u7ED3\u675F\u3002...","topics/sdk/usb/usb-transaction_6_status_stage_2.html@@@Transaction 6 (Status Stage)@@@\u72B6\u6001\u9636\u6BB5\u7528\u4E8E\u8868\u793A\u4E00\u6B21\u63A7\u5236\u4F20\u8F93\u7684\u7ED3\u675F\u3002...","topics/sdk/usb/usb_config.html@@@USB \u914D\u7F6E@@@\u672C\u8282\u63CF\u8FF0 USB \u914D\u7F6E\u53C2\u6570\u548C\u6D41\u7A0B\u3002...","topics/sdk/usb/usb_config_2.html@@@USB \u914D\u7F6E@@@\u672C\u8282\u63CF\u8FF0 USB \u914D\u7F6E\u53C2\u6570\u548C\u6D41\u7A0B\u3002...","topics/sdk/usb/usb_debug_lite.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/usb/usb_design_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@...","topics/sdk/usb/usb_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/usb/usb_faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/usb/usb_test_lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@...","topics/sdk/usb/usb_user_guide.html@@@USB \u4F7F\u7528\u6307\u5357@@@Universal Serial Bus (USB) \u901A\u7528\u4E32\u884C\u603B\u7EBF\u662F\u4E00\u79CD\u5E94\u7528\u573A\u666F\u5341\u5206\u5E7F\u6CDB\u7684\u603B\u7EBF\u6280\u672F\u3002...","topics/sdk/usb/usb_user_guide_2.html@@@USB \u4F7F\u7528\u6307\u5357@@@Universal Serial Bus (USB) \u901A\u7528\u4E32\u884C\u603B\u7EBF\u662F\u4E00\u79CD\u5E94\u7528\u573A\u666F\u5341\u5206\u5E7F\u6CDB\u7684\u603B\u7EBF\u6280\u672F\u3002...","topics/sdk/ve/ve-architecture-luban-lite.html@@@\u6A21\u5757\u67B6\u6784@@@VE \u786C\u4EF6\u9700\u8981\u7531\u5185\u6838\u6001 VE \u9A71\u52A8\u548C\u7528\u6237\u6001\u7A0B\u5E8F MPP \u76F8\u4E92\u914D\u5408\u5B9E\u73B0\u7F16\u89E3\u7801\u529F\u80FD\u3002 \u5185\u6838 VE \u9A71\u52A8\uFF1A\u8D1F\u8D23 VE \u786C\u4EF6\u8D44\u6E90\u521D\u59CB\u5316\u548C\u83B7\u53D6\u7B49 \u7528\u6237\u6001 MPP \u7A0B\u5E8F\uFF1A\u8D1F\u8D23\u5904\u7406\u7F16\u89E3\u7801\u903B\u8F91\u3001\u5BC4\u5B58\u5668\u914D\u7F6E\u7B49 VE \u9A71\u52A8\u57FA\u4E8E\u5B57\u7B26\u8BBE\u5907\u5B9E\u73B0\uFF0C\u5E94\u7528\u5C42\u901A\u8FC7\u8BBE\u5907\u8282\u70B9 (/dev/aic_ve) \u8FDB\u884C\u4EA4\u4E92\u3002 \u56FE 1 . VE \u9A71\u52A8\u6846\u67B6 \u57FA\u672C\u6D41\u7A0B\u5982\u4E0B\uFF1A \u7528\u6237\u6001\u7A0B\u5E8F\u901A\u8FC7 open /dev/aic_ve \u6253\u5F00 VE \u9A71\u52A8\u3002...","topics/sdk/ve/ve-config.html@@@VE \u914D\u7F6E@@@VE \u5305\u62EC\u4EE5\u4E0B\u914D\u7F6E\u5185\u5BB9\uFF1A \u5185\u6838\u914D\u7F6E \u5728 Luban \u6839\u76EE\u5F55\u4E0B\u6267\u884C \uFF0C\u8FDB\u5165 \u7684\u529F\u80FD\u914D\u7F6E\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Chip options ---> [*]Enable AIC VE DRV...","topics/sdk/ve/ve-config_2.html@@@VE \u914D\u7F6E@@@VE \u5305\u62EC\u4EE5\u4E0B\u914D\u7F6E\u5185\u5BB9\uFF1A \u5185\u6838\u914D\u7F6E \u5728 Luban \u6839\u76EE\u5F55\u4E0B\u6267\u884C \uFF0C\u8FDB\u5165 \u7684\u529F\u80FD\u914D\u7F6E\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Chip options ---> [*]Enable AIC VE DRV...","topics/sdk/ve/ve-data_structure.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@// \u4E2D\u65AD\u4FE1\u606F\u7ED3\u6784\u4F53 struct wait_info { int wait_time; unsigned int reg_status; }; //VE \u786C\u4EF6\u62BD\u8C61 struct aic_ve_client { u32 status; aicos_event_t wait_event; aicos_mutex_t lock; }...","topics/sdk/ve/ve-debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/ve/ve-debug_guide_2.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/ve/ve-demo.html@@@Demo@@@\u4EE5\u4E0B demo \u5B9E\u73B0 VE \u9A71\u52A8\u57FA\u672C\u8C03\u7528\u6D41\u7A0B\uFF0C\u5177\u4F53\u53EF\u53C2\u8003 mpp \u4EE3\u7801\uFF0C\u8DEF\u5F84\u4E3A packages/artinchip/mpp/ve/common/ve.c \u3002 //* 1. \u6253\u5F00 VE struct aic_ve_client* client = drv_ve_open(); //* 2. \u83B7\u53D6 VE \u6743\u9650 ioctl(client, IOC_VE_GET_CLIENT\uFF0CNULL); //* 3...","topics/sdk/ve/ve-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@VE \u9A71\u52A8\u672A\u52A0\u8F7D \u73B0\u8C61 \u5728 /dev \u8DEF\u5F84\u4E0B\uFF0C\u672A\u53D1\u73B0\u5B57\u7B26\u8BBE\u5907 /dev/aic_ve \u3002 \u539F\u56E0\u5206\u6790 \u786E\u8BA4\u5185\u6838\u4E2D\u662F\u5426\u52A0\u8F7D VE \u9A71\u52A8\u3002 \u56FE\u50CF\u89E3\u7801\u62A5\u9519 \u73B0\u8C61 \u89E3\u7801\u5F02\u5E38\u62A5\u9519\uFF0C\u672A\u5F97\u5230\u89E3\u7801\u540E\u7684\u89C6\u9891\u5E27\uFF0C\u6216\u8005\u89C6\u9891\u5E27\u6570\u636E\u51FA\u9519\u3002 \u539F\u56E0\u5206\u6790 \u9010\u6B65\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A \u6E90\u6587\u4EF6\u662F\u5426\u662F VE \u9A71\u52A8\u652F\u6301\u7684\u5A92\u4F53\u6587\u4EF6\u683C\u5F0F\uFF0C\u5177\u4F53\u8BF7\u53C2\u8003\u6A21\u5757\u4ECB\u7ECD\u7684\u786C\u4EF6\u7F16\u89E3\u7801\u683C\u5F0F\u7AE0\u8282\u3002 \u6E90\u6587\u4EF6\u662F\u5426\u635F\u574F\uFF0C\u53EF\u53C2\u8003 PC \u7AEF\u662F\u5426\u53EF\u6B63\u5E38\u64AD\u653E\u3002 \u7801\u6D41\u89E3\u6790\u662F\u5426\u6B63\u786E\uFF0C\u76F8\u5173...","topics/sdk/ve/ve-faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@VE \u9A71\u52A8\u672A\u52A0\u8F7D \u73B0\u8C61 \u5728 /dev \u8DEF\u5F84\u4E0B\uFF0C\u672A\u53D1\u73B0\u5B57\u7B26\u8BBE\u5907 /dev/aic_ve \u3002 \u539F\u56E0\u5206\u6790 \u786E\u8BA4\u5185\u6838\u4E2D\u662F\u5426\u52A0\u8F7D VE \u9A71\u52A8\u3002 \u56FE\u50CF\u89E3\u7801\u62A5\u9519 \u73B0\u8C61 \u89E3\u7801\u5F02\u5E38\u62A5\u9519\uFF0C\u672A\u5F97\u5230\u89E3\u7801\u540E\u7684\u89C6\u9891\u5E27\uFF0C\u6216\u8005\u89C6\u9891\u5E27\u6570\u636E\u51FA\u9519\u3002 \u539F\u56E0\u5206\u6790 \u9010\u6B65\u6392\u9664\u4EE5\u4E0B\u539F\u56E0\uFF1A \u6E90\u6587\u4EF6\u662F\u5426\u662F VE \u9A71\u52A8\u652F\u6301\u7684\u5A92\u4F53\u6587\u4EF6\u683C\u5F0F\uFF0C\u5177\u4F53\u8BF7\u53C2\u8003\u6A21\u5757\u4ECB\u7ECD\u7684\u786C\u4EF6\u7F16\u89E3\u7801\u683C\u5F0F\u7AE0\u8282\u3002 \u6E90\u6587\u4EF6\u662F\u5426\u635F\u574F\uFF0C\u53EF\u53C2\u8003 PC \u7AEF\u662F\u5426\u53EF\u6B63\u5E38\u64AD\u653E\u3002 \u7801\u6D41\u89E3\u6790\u662F\u5426\u6B63\u786E\uFF0C\u76F8\u5173...","topics/sdk/ve/ve-key_procedure.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u4E2D\u65AD\u5904\u7406\u6D41\u7A0B VE \u4E2D\u65AD\u7C7B\u578B\u6709\u4E09\u79CD\uFF0C\u5305\u62EC\uFF1A finish \u4E2D\u65AD\uFF1AVE \u4EFB\u52A1\u6B63\u5E38\u7ED3\u675F error \u4E2D\u65AD\uFF1AVE \u5904\u7406\u4EFB\u52A1\u8FC7\u7A0B\u4E2D\u51FA\u9519 bit request \u4E2D\u65AD\uFF1A\u5F53\u524D\u6570\u636E\u4E0D\u8DB3\u4EE5\u5B8C\u6210\u4E00\u6B21\u5B8C\u6574\u7684\u4EFB\u52A1\uFF0C\u9700\u8981\u7EE7\u7EED\u53D1\u9001\u6570\u636E \u4E0A\u5C42\u7A0B\u5E8F\u5BF9 VE \u4E2D\u65AD\u7684\u5904\u7406 finish \u4E2D\u65AD\u5904\u7406\uFF1AVE \u6B63\u5E38\u7ED3\u675F\uFF0C\u91CA\u653E VE \u786C\u4EF6\u8BBE\u5907\u72EC\u5360\u6743\u9650 bit request \u4E2D\u65AD\u5904\u7406\uFF1A\u518D\u6B21\u53D1\u9001\u4E00\u7B14\u6570\u636E\uFF0C\u91CD\u65B0\u542F\u52A8 VE...","topics/sdk/ve/ve-test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@VE \u9A71\u52A8\u65E0\u6CD5\u72EC\u7ACB\u8FD0\u884C\uFF0C\u5FC5\u987B\u4F9D\u8D56 MPP \u7684\u8C03\u7528\u624D\u80FD\u8FD0\u884C\u3002\u56E0\u6B64\uFF0CVE \u9A71\u52A8\u6D4B\u8BD5\u8BF7\u53C2\u8003 MPP \u6A21\u5757 \u6D4B\u8BD5\u6307\u5357 \u4E2D\u7684\u6D4B\u8BD5\u7528\u4F8B\u3002...","topics/sdk/ve/ve-test_guide_2.html@@@\u6D4B\u8BD5\u6307\u5357@@@VE \u9A71\u52A8\u65E0\u6CD5\u72EC\u7ACB\u8FD0\u884C\uFF0C\u5FC5\u987B\u4F9D\u8D56 MPP \u7684\u8C03\u7528\u624D\u80FD\u8FD0\u884C\u3002\u56E0\u6B64\uFF0CVE \u9A71\u52A8\u6D4B\u8BD5\u8BF7\u53C2\u8003 MPP \u6A21\u5757 \u6D4B\u8BD5\u6307\u5357 \u4E2D\u7684\u6D4B\u8BD5\u7528\u4F8B\u3002...","topics/sdk/ve/ve-user-guide.html@@@VE \u4F7F\u7528\u6307\u5357@@@Video Engine (VE) \u662F ArtInChip \u81EA\u4E3B\u7814\u53D1\u7684\u89C6\u9891\u52A0\u901F\u5F15\u64CE\uFF0C\u652F\u6301\u89C6\u9891\u3001\u56FE\u7247\u7684\u7F16\u89E3\u7801\u529F\u80FD\u3002 \u5728 RTOS \u7CFB\u7EDF\u4E2D\uFF0C\u4E2D\u95F4\u4EF6 Media Process Platform (MPP) \u76F4\u63A5\u8C03\u7528 VE \u7684 drv \u5C42\u9A71\u52A8\u63A5\u53E3\uFF0C\u5B9E\u73B0\u5BF9\u89C6\u9891\u3001\u56FE\u7247\u591A\u5A92\u4F53\u6587\u4EF6\u7684\u7F16\u89E3\u7801\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E VE Video Engine \u89C6\u9891\u52A0\u901F\u5F15\u64CE MPP Media...","topics/sdk/ve/ve-user-guide_2.html@@@VE \u4F7F\u7528\u6307\u5357@@@Video Engine (VE) \u662F ArtInChip \u81EA\u4E3B\u7814\u53D1\u7684\u89C6\u9891\u52A0\u901F\u5F15\u64CE\uFF0C\u652F\u6301\u89C6\u9891\u3001\u56FE\u7247\u7684\u7F16\u89E3\u7801\u529F\u80FD\u3002 \u5728 RTOS \u7CFB\u7EDF\u4E2D\uFF0C\u4E2D\u95F4\u4EF6 Media Process Platform (MPP) \u76F4\u63A5\u8C03\u7528 VE \u7684 drv \u5C42\u9A71\u52A8\u63A5\u53E3\uFF0C\u5B9E\u73B0\u5BF9\u89C6\u9891\u3001\u56FE\u7247\u591A\u5A92\u4F53\u6587\u4EF6\u7684\u7F16\u89E3\u7801\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E VE Video Engine \u89C6\u9891\u52A0\u901F\u5F15\u64CE MPP Media...","topics/sdk/ve/ve_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@VE \u6E90\u4EE3\u7801\u4F4D\u4E8E linux-5.10/drivers/video/artinchip/ve/aic_ve.c \u3002...","topics/sdk/ve/ve_design_guide_lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/ve/aic_drv_ve.c \uFF0C VE Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/ve/aic_hal_ve.c \uFF0C VE HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/drv/aic_drv_ve.h \uFF0CVE Drv \u5C42\u63A5\u53E3\u5934\u6587\u4EF6...","topics/sdk/watchdog/watchdog-config-lite.html@@@Watchdog \u914D\u7F6E@@@\u6253\u5F00 Watchdog \u9A71\u52A8 \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Board options ---> [*] Using Watchdog \u63D0\u793A\uFF1A \u4E3A\u4E86\u7B80\u5316\u4F7F\u7528\uFF0C Using Watchdog \u4F1A\u81EA\u52A8\u6253\u5F00 RT-Thread \u7684 Watchdog \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u3002 \u5F53\u4F7F\u7528 RT-Thread...","topics/sdk/watchdog/watchdog-config.html@@@Watchdog \u914D\u7F6E@@@\u672C\u8282\u4ECB\u7ECD Watchdog \u7684\u914D\u7F6E\u5185\u5BB9\u3002 \u5185\u6838\u914D\u7F6E \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF1A Linux Device Drivers [*] Watchdog Timer Support <*> ArtInChip SoC watchdog support...","topics/sdk/watchdog/watchdog-data-structure.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@Watchdog \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u5982\u4E0B\uFF1A struct aic_wdt_dev \u5C5E\u4E8E Driver \u5C42\u63A5\u53E3\uFF0C\u8BB0\u5F55 Watchdog \u63A7\u5236\u5668\u7684\u914D\u7F6E\u4FE1\u606F\uFF1A struct aic_wdt_dev { rt_watchdog_t wdt; struct aic_wdt chan; s32 dbg_continue; u32 cur_chan; }; struct aic_wdt \u5C5E\u4E8E HAL...","topics/sdk/watchdog/watchdog-data-structure_2.html@@@\u6570\u636E\u7ED3\u6784\u8BBE\u8BA1@@@Watchdog \u6570\u636E\u7C7B\u578B\u53CA\u5176\u7ED3\u6784\u63CF\u8FF0\u5982\u4E0B\uFF1A struct aic_wdt_dev \u5C5E\u4E8E Driver \u5C42\u63A5\u53E3\uFF0C\u8BB0\u5F55 Watchdog \u63A7\u5236\u5668\u7684\u914D\u7F6E\u4FE1\u606F\uFF1A struct aic_wdt_dev { rt_watchdog_t wdt; struct aic_wdt chan; s32 dbg_continue; u32 cur_chan; }; struct aic_wdt \u5C5E\u4E8E HAL...","topics/sdk/watchdog/watchdog-debug-lite.html@@@\u8C03\u8BD5\u6307\u5357@@@\u6253\u5F00\u8C03\u8BD5\u5F00\u5173 \u5728 Luban-Lite \u4E2D Watchdog \u9A71\u52A8\u7684 Log \u63A7\u5236\u63A5\u53E3\u5171\u7528\u4E86\u5168\u5C40\u7684 ulog \u63A5\u53E3\u3002 \u4F7F\u7528 wdt_status \u547D\u4EE4\u67E5\u770B\u72B6\u6001 \u5728 Watchdog \u9A71\u52A8\u521D\u59CB\u5316\u6210\u529F\u540E\uFF0C\u4F1A\u5728 shell \u547D\u4EE4\u884C\u4E2D\u6CE8\u518C\u751F\u6210\u4E00\u4E2A wdt_status \u547D\u4EE4\uFF0C\u5176\u4E2D\u6253\u5370\u4E86\u5F53\u524D\u7684\u914D\u7F6E\u53CA\u72B6\u6001\u4FE1\u606F\uFF1A wdt_status In Watchdog V1. 00 : Module Enable: 0...","topics/sdk/watchdog/watchdog-debug.html@@@\u8C03\u8BD5\u6307\u5357@@@\u8C03\u8BD5\u5F00\u5173 \u5728 SDK \u6839\u76EE\u5F55\u4E0B\uFF0C\u6267\u884C\u4E0B\u5217\u547D\u4EE4\uFF0C\u8FDB\u5165 kernel \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF1A make kernel-menuconfig \u6216\u4F7F\u7528\u7B80\u5199\u547D\u4EE4 make km \u5728\u5185\u6838\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF0C\u6253\u5F00\u8C03\u8BD5\u5F00\u5173\uFF1A Linux Kernel hacking ArtInChip Debug [*] Watchdog driver debug \u6253\u5F00 DEBUG \u9009\u9879\u540E\uFF1A \u9A71\u52A8\u4EE5 -O0 \u7F16\u8BD1\u3002 pr_dbg()...","topics/sdk/watchdog/watchdog-demo.html@@@Demo@@@\u672C Demo \u5C55\u793A\u4E86\u5982\u4F55\u4F7F\u7528 Watchdog \u8BBE\u5907\uFF0C\u5E76\u901A\u8FC7 test-wdt \u547D\u4EE4\u8FDB\u884C\u64CD\u4F5C\u3002 test-wdt \u7684\u8BE6\u7EC6\u8BF4\u660E\uFF0C\u53EF\u67E5\u770B\u6E90\u4EE3\u7801\u6587\u4EF6 bsp/examples/test-wdt/test-wdt.c \u3002\u672C Demo \u53EF\u4EE5\u4F5C\u4E3A Watchdog \u8BBE\u5907\u7684\u4F7F\u7528\u53C2\u8003\uFF1A #include <rtthread.h> #include <aic_core.h> #include...","topics/sdk/watchdog/watchdog-demo_2.html@@@Demo@@@\u672C Demo \u5C55\u793A\u4E86\u5982\u4F55\u4F7F\u7528 Watchdog \u8BBE\u5907\uFF0C\u5E76\u901A\u8FC7 test-wdt \u547D\u4EE4\u8FDB\u884C\u64CD\u4F5C\u3002 test-wdt \u7684\u8BE6\u7EC6\u8BF4\u660E\uFF0C\u53EF\u67E5\u770B\u6E90\u4EE3\u7801\u6587\u4EF6 bsp/examples/test-wdt/test-wdt.c \u3002\u672C Demo \u53EF\u4EE5\u4F5C\u4E3A Watchdog \u8BBE\u5907\u7684\u4F7F\u7528\u53C2\u8003\uFF1A #include <rtthread.h> #include <aic_core.h> #include...","topics/sdk/watchdog/watchdog-design-lite.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/wdt/drv_wdt.c \uFF0CWDT Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/wdt/hal_wdt.c \uFF0CWDT HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_wdt.h \uFF0CWDT HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6...","topics/sdk/watchdog/watchdog-design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u4EE3\u7801\u4F4D\u4E8E drivers/watchdog/artinchip_wdt.c Linux \u63D0\u4F9B\u4E86\u4E00\u4E2A Watchdog \u5B50\u7CFB\u7EDF\uFF08\u7B80\u79F0 Watchdog Core\uFF09\uFF0C\u4F7F\u5F97\u5728\u7528\u6237\u7A7A\u95F4\u53EF\u4EE5\u901A\u8FC7 /dev/watchdogX \u6765\u8BBF\u95EE Watchdog \u63A7\u5236\u5668\u3002\u4E3A\u4E86\u66F4\u65B9\u4FBF\u67E5\u770B\u786C\u4EF6\u72B6\u6001\u548C\u53C2\u6570\u8BBE\u7F6E\uFF0C\u672C\u9A71\u52A8\u53E6\u5916\u6269\u5C55\u4E86\u51E0\u4E2A sysfs \u8282\u70B9\u3002 \u6574\u4E2A\u8F6F\u4EF6\u6846\u67B6\u53EF\u4EE5\u7B80\u5355\u62BD\u8C61\u4E3A\u4E0B\u56FE\uFF1A \u56FE 1 . Linux...","topics/sdk/watchdog/watchdog-faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u65E0...","topics/sdk/watchdog/watchdog-faq_2.html@@@\u5E38\u89C1\u95EE\u9898@@@\u65E0...","topics/sdk/watchdog/watchdog-interface-design-luban-lite.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u4EE5\u4E0B\u63A5\u53E3\u662F Watchdog \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u7684\u6807\u51C6\u63A5\u53E3\u3002 struct rt_watchdog_ops { rt_err_t (*init)(rt_watchdog_t *wdt); rt_err_t (*control)(rt_watchdog_t *wdt, int cmd, void *arg); }; \u8868 1 . drv_wdt_init \u51FD\u6570\u539F\u578B rt_err_t...","topics/sdk/watchdog/watchdog-interface-design-luban-lite_2.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@Driver \u5C42\u63A5\u53E3\u8BBE\u8BA1 \u4EE5\u4E0B\u63A5\u53E3\u662F Watchdog \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u7684\u6807\u51C6\u63A5\u53E3\u3002 struct rt_watchdog_ops { rt_err_t (*init)(rt_watchdog_t *wdt); rt_err_t (*control)(rt_watchdog_t *wdt, int cmd, void *arg); }; \u8868 1 . drv_wdt_init \u51FD\u6570\u539F\u578B rt_err_t...","topics/sdk/watchdog/watchdog-interface-design.html@@@\u63A5\u53E3\u8BBE\u8BA1@@@\u4EE5\u4E0B\u63A5\u53E3\u662F Linux Watchdog \u5B50\u7CFB\u7EDF\u9700\u8981\u7684\u6807\u51C6\u63A5\u53E3\u3002 \u5916\u90E8\u63A5\u53E3 Linux \u5BF9\u7528\u6237\u6001\u63D0\u4F9B\u4E86\u4E00\u7EC4 Watchdog \u7684 ioctl \u63A5\u53E3\uFF0C\u7528\u6237\u6001\u53EF\u4EE5\u901A\u8FC7\u8BBE\u5907\u8282\u70B9 /dev/watchdogX \u6765\u8BBF\u95EE\uFF1A\uFF08\u8BE6\u89C1 include/upai/linux/watchdog.h \uFF09 struct watchdog_info { __u32 options; /* Options the...","topics/sdk/watchdog/watchdog-key-procedures.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1 \u521D\u59CB\u5316\u6D41\u7A0B \u901A\u8FC7\u8C03\u7528 INIT_DEVICE_EXPORT(rt_hw_wdt_init) \u5B8F\u5B9A\u4E49\uFF0C\u53EF\u4EE5\u5BFC\u51FA WDT \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u3002\u901A\u8FC7\u8C03\u7528 Watchdog \u5B50\u7CFB\u7EDF\u7684\u63A5\u53E3 rt_hw_watchdog_register() \u6CE8\u518C\u4E00\u4E2A Watchdog \u8BBE\u5907\uFF0C\u5C06\u5177\u4F53\u7684 Watchdog \u9A71\u52A8\u7A0B\u5E8F\u4E0E\u7CFB\u7EDF\u5173\u8054\u8D77\u6765\u3002 \u5728 drv_wdt_init() \u63A5\u53E3\u4E2D\u5B9E\u73B0 WDT...","topics/sdk/watchdog/watchdog-key-procedures_2.html@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1@@@\u5173\u952E\u6D41\u7A0B\u8BBE\u8BA1 \u521D\u59CB\u5316\u6D41\u7A0B \u901A\u8FC7\u8C03\u7528 INIT_DEVICE_EXPORT(rt_hw_wdt_init) \u5B8F\u5B9A\u4E49\uFF0C\u53EF\u4EE5\u5BFC\u51FA WDT \u9A71\u52A8\u7684\u521D\u59CB\u5316\u63A5\u53E3\u3002\u901A\u8FC7\u8C03\u7528 Watchdog \u5B50\u7CFB\u7EDF\u7684\u63A5\u53E3 rt_hw_watchdog_register() \u6CE8\u518C\u4E00\u4E2A Watchdog \u8BBE\u5907\uFF0C\u5C06\u5177\u4F53\u7684 Watchdog \u9A71\u52A8\u7A0B\u5E8F\u4E0E\u7CFB\u7EDF\u5173\u8054\u8D77\u6765\u3002 \u5728 drv_wdt_init() \u63A5\u53E3\u4E2D\u5B9E\u73B0 WDT...","topics/sdk/watchdog/watchdog-test-guide-lite.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 \u5F00\u53D1\u677F \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Luban-Lite \u4E2D\u6253\u5F00 Watchdog \u6A21\u5757\u548C test_wdt \u529F\u80FD \u6253\u5F00 test-wdt \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u914D\u7F6E\uFF0C\u6253\u5F00 WDT \u7684\u7EFC\u5408\u529F\u80FD\u6D4B\u8BD5 ( test_wdt )\uFF1A...","topics/sdk/watchdog/watchdog-test-guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u51C6\u5907\u6D4B\u8BD5\u73AF\u5883 Watchdog \u6D4B\u8BD5\u6240\u9700\u7684\u6D4B\u8BD5\u73AF\u5883\u5982\u4E0B\uFF1A \u786C\u4EF6 \uFF1A\u5F00\u53D1\u677F\uFF0C\u6216 D211 \u7684 FPGA \u677F \u8F6F\u4EF6 \uFF1A PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Luban \u4E2D\u5E26\u6709\u7684 test_wdt \u6D4B\u8BD5\u5DE5\u5177 \u6253\u5F00 test-wdt \u5728 Luban \u7684\u6839\u76EE\u5F55\u4E0B\u6267\u884C make menuconfig \u547D\u4EE4\uFF0C\u6253\u5F00 test-watchdog \u9009\u9879\uFF1A ArtInChip packages...","topics/sdk/watchdog/watchdog-time-data-lost.html@@@wdt \u8BBE\u7F6E pretimeout \u5931\u8D25@@@\u6267\u884C wdt -s x -p y \u5931\u8D25\uFF0C\u62A5\u65E0\u6548\u7684 timeout\u3002 Cause Linux \u7684 Watchdog \u5B50\u7CFB\u7EDF\u4E2D\u5BF9 timeout \u548C pretimeout \u53C2\u6570\u6709\u9650\u5236\uFF1Apretimeout \u5FC5\u987B\u5C0F\u4E8E timeout\uFF0C\u5982\u679C\u4E0D\u7B26\u5408\u8FD9\u4E2A\u6761\u4EF6\u5C31\u4F1A\u8BBE\u7F6E\u5931\u8D25\u3002 Remedy \u8FC7\u7A0B \u8BBE\u7F6E pretimeout \u5C0F\u4E8E timeout\u3002...","topics/sdk/watchdog/watchdog-time-data-lost_2.html@@@wdt \u8BBE\u7F6E pretimeout \u5931\u8D25@@@\u6267\u884C wdt -s x -p y \u5931\u8D25\uFF0C\u62A5\u65E0\u6548\u7684 timeout\u3002 Cause Linux \u7684 Watchdog \u5B50\u7CFB\u7EDF\u4E2D\u5BF9 timeout \u548C pretimeout \u53C2\u6570\u6709\u9650\u5236\uFF1Apretimeout \u5FC5\u987B\u5C0F\u4E8E timeout\uFF0C\u5982\u679C\u4E0D\u7B26\u5408\u8FD9\u4E2A\u6761\u4EF6\u5C31\u4F1A\u8BBE\u7F6E\u5931\u8D25\u3002 Remedy \u8FC7\u7A0B \u8BBE\u7F6E pretimeout \u5C0F\u4E8E timeout\u3002...","topics/sdk/watchdog/watchdog-user-guide.html@@@Watchdog \u4F7F\u7528\u6307\u5357@@@\u770B\u95E8\u72D7 (Watchdog, WDT) \u5B9A\u65F6\u5668\u53EF\u4EE5\u76D1\u63A7\u7CFB\u7EDF\u7684\u5065\u5EB7\u72B6\u6001\uFF0C\u5E76\u5728\u7CFB\u7EDF\u65E0\u6CD5\u6B63\u5E38\u4F7F\u7528\u65F6\uFF0C\u5F3A\u5236\u590D\u4F4D\u7CFB\u7EDF\u3002\u770B\u95E8\u72D7\u5185\u90E8\u6709\u4E00\u4E2A\u9012\u51CF\u8BA1\u6570\u5668\uFF0C\u5728\u7CFB\u7EDF\u6B63\u5E38\u8FD0\u884C\u671F\u95F4\uFF0C\u901A\u8FC7\u91CD\u7F6E\u8BA1\u6570\u53EF\u4EE5\u4FDD\u8BC1\u770B\u95E8\u72D7\u6A21\u5757\u4E0D\u89E6\u53D1\u590D\u4F4D\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E WDT Watchdog\uFF0C\u4E0B\u6587\u7B80\u79F0 wdt \u770B\u95E8\u72D7 clr_thd Clear threshold \u6E05\u770B\u95E8\u72D7\u7684\u8BA1\u6570\u65F6\uFF0C\u5F53\u524D\u8BA1\u6570\u5FC5\u987B\u8981\u6EE1\u8DB3\u6B64\u95E8\u9650...","topics/sdk/watchdog/watchdog-user-guide_2.html@@@Watchdog \u4F7F\u7528\u6307\u5357@@@\u770B\u95E8\u72D7 (Watchdog, WDT) \u5B9A\u65F6\u5668\u53EF\u4EE5\u76D1\u63A7\u7CFB\u7EDF\u7684\u5065\u5EB7\u72B6\u6001\uFF0C\u5E76\u5728\u7CFB\u7EDF\u65E0\u6CD5\u6B63\u5E38\u4F7F\u7528\u65F6\uFF0C\u5F3A\u5236\u590D\u4F4D\u7CFB\u7EDF\u3002\u770B\u95E8\u72D7\u5185\u90E8\u6709\u4E00\u4E2A\u9012\u51CF\u8BA1\u6570\u5668\uFF0C\u5728\u7CFB\u7EDF\u6B63\u5E38\u8FD0\u884C\u671F\u95F4\uFF0C\u901A\u8FC7\u91CD\u7F6E\u8BA1\u6570\u53EF\u4EE5\u4FDD\u8BC1\u770B\u95E8\u72D7\u6A21\u5757\u4E0D\u89E6\u53D1\u590D\u4F4D\u3002 \u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E WDT Watchdog\uFF0C\u4E0B\u6587\u7B80\u79F0 wdt \u770B\u95E8\u72D7 clr_thd Clear threshold \u6E05\u770B\u95E8\u72D7\u7684\u8BA1\u6570\u65F6\uFF0C\u5F53\u524D\u8BA1\u6570\u5FC5\u987B\u8981\u6EE1\u8DB3\u6B64\u95E8\u9650...","topics/sdk/xcap/xcap_config_guide.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\uFF08\u914D\u7F6E\u53EA\u6253\u5F00\u4E86 CAP0\uFF0C\u4F5C\u4E3A\u793A\u4F8B\uFF09\uFF1A Board options ---> [*] Using INPUTCAP0 [ ] Using INPUTCAP1 [ ] Using INPUTCAP2 [ ] Using INPUTCAP3 [ ] Using...","topics/sdk/xcap/xcap_debug_guide.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/xcap/xcap_design_guide.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/inputcap/drv_inputcap.c\uFF0CCAP Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/inputcap/hal_inputcap.c\uFF0CCAP \u6A21\u5757\u7684 HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_inputcap.h\uFF0CCAP \u6A21\u5757\u7684 HAL...","topics/sdk/xcap/xcap_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/xcap/xcap_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 FPGA \u9A8C\u8BC1\u7248 \u4FE1\u53F7\u53D1\u751F\u5668 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 Luban-Lite \u81EA\u5E26\u7684 test_cap \u547D\u4EE4\u884C\u5DE5\u5177 \u8F6F\u4EF6\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\uFF0C\u6309\u5982\u4E0B\u9009\u62E9\u6253\u5F00 test_inptcap \u547D\u4EE4\u884C\u5DE5\u5177\uFF1A Drivers options --->...","topics/sdk/xcap/xcap_user_guide.html@@@XCAP \u4F7F\u7528\u6307\u5357@@@CAP \u6A21\u5757\u901A\u8FC7\u6355\u83B7\u5916\u90E8\u4FE1\u53F7 CAP_IO \u7684\u8FB9\u6CBF\u53D8\u6362\u65F6\u523B\uFF0C\u8BB0\u5F55 CAP \u5185\u90E8\u8BA1\u6570\u5668\u7684\u6570\u503C\u7684\u529F\u80FD\u3002 \u672F\u8BED\u5B9A\u4E49 \u8868 1 . \u672F\u8BED/\u7F29\u7565\u8BED \u5B9A\u4E49\u53CA\u8BF4\u660E CAP/XCAP/INPUTCAP Capture\uFF0C\u4FE1\u53F7\u6355\u6349 CAP \u5DE5\u4F5C\u539F\u7406 \u56FE 1 . CAP \u6A21\u5757\u7684\u6355\u6349\u8F93\u5165\u529F\u80FD\u6846\u56FE...","topics/sdk/xip/1_introduction.html@@@\u6A21\u5757\u4ECB\u7ECD@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED \u5B9A\u4E49 \u6CE8\u91CA\u8BF4\u660E XIP eXecute In Place \u82AF\u7247\u5185\u6267\u884C QSPI Quad Serial Peripheral Interface 4 \u7EBF DATA \u4F20\u8F93\uFF0C\u4E32\u884C\u5916\u8BBE\u63A5\u53E3 \u529F\u80FD\u7279\u6027 \u652F\u6301 XIP \u6267\u884C\u7A0B\u5E8F\uFF0C\u8282\u7701\u5185\u5B58\u7A7A\u95F4 \u652F\u6301 XIP \u6570\u636E\u8BBF\u95EE\uFF0C\u5B9E\u73B0\u5FEB\u901F\u542F\u52A8 \u539F\u7406\u6846\u56FE \u56FE 1 . QSPI Block \u4F7F\u7528\u8BF4\u660E \u8981\u5B9E\u73B0 XIP \u6267\u884C\u7A0B\u5E8F\u529F\u80FD\uFF0C\u5728...","topics/sdk/xip/2_config_guide.html@@@\u53C2\u6570\u914D\u7F6E@@@Luban-Lite \u4E2D\u542B\u6709 BootLoader \u548C RTOS \u4E24\u4E2A\u56FA\u4EF6\u7684\u7F16\u8BD1\u914D\u7F6E\uFF0C\u4EE5 D12x \u4EA7\u54C1\u7EBF\u4E3A\u4F8B\uFF0C\u5982\u4E0B\u6240\u793A\uFF1A d12x_demo68-nor-xip_rt-thread_helloworld_defconfig d12x_demo68-nor-xip_baremetal_bootloader_defconfig \u4E0B\u6587\u4EE5 D12x \u7F16\u8BD1\u914D\u7F6E\u4E3A\u4F8B\u6F14\u793A XIP \u65B9\u6848\u7684\u914D\u7F6E\u6B65\u9AA4\uFF1A \u5728...","topics/sdk/xip/3_test_guide.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u4EE5\u4E0B\u662F XIP \u542F\u52A8\u901F\u5EA6\u6D4B\u8BD5\u7684\u8BE6\u7EC6\u6D41\u7A0B\uFF1A \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C\u4EE5\u4E0B sourceonestep.sh \u547D\u4EE4\u5E76 lunch d13x_demo88-nor-xip_rt-thread_helloworld_defconfig \u914D\u7F6E\u6587\u4EF6\uFF1A source onestep.sh lunch...","topics/sdk/xip/4_adapter_guide.html@@@\u9002\u914D\u8BF4\u660E@@@\u672C\u8282\u4ECB\u7ECD Luban-Lite \u65B9\u6848\u4E2D XIP\uFF08Execute In Place\uFF09\u542F\u52A8\u7684\u9002\u914D\u8BF4\u660E\u3002 \u4E0D\u540C\u7684\u5904\u7406\u5668\u548C\u5E73\u53F0\u53EF\u80FD\u6709\u4E0D\u540C\u7684\u5B9E\u73B0\u7EC6\u8282\u548C\u8981\u6C42\u3002\u56E0\u6B64\uFF0C\u5728\u8FDB\u884C XIP \u9002\u914D\u65F6\uFF0C\u52A1\u5FC5\u53C2\u8003\u7279\u5B9A\u5904\u7406\u5668\u7684\u6280\u672F\u6587\u6863\u548C\u76F8\u5173\u8D44\u6E90\u3002 \u53EF\u6267\u884C\u6587\u4EF6 bsp/artinchip/drv_bare/spinor/aic_flash_xip_def.c \uFF1A\u5173\u4E8E NOR Flash \u7684 XIP \u914D\u7F6E\u4FE1\u606F...","topics/sdk/xip/5_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@\u95EE\u9898 1 Winbond \u9897\u7C92\uFF0C\u914D\u7F6E XIP \u6A21\u5F0F\u540E\uFF0C\u9A6C\u4E0A\u901A\u8FC7 XIP \u8BBF\u95EE Flash \uFF0C\u51FA\u73B0 32Bytes \u6570\u636E\u662F 0xcc\uFF1A \u5177\u4F53\u539F\u56E0\uFF1A\u5B9A\u4F4D\u4E2D\u3002 \u89E3\u51B3\u65B9\u6CD5\uFF1A\u9700\u8981\u52A0\u5165\u5EF6\u65F6\uFF0C\u5927\u6982 100ms.(Workaround\uFF0C\u4F46\u4E0D\u5F71\u54CD\u5176\u4ED6\u542F\u52A8\u6A21\u5F0F\uFF0C\u95EE\u9898\u53EA\u5728 XIP \u542F\u52A8\u6A21\u5F0F\u4E0B\u5B58\u5728)...","topics/sdk/xip/xip_user_guide.html@@@XIP \u65B9\u6848@@@eXecute In Place (XIP ) \u65B9\u6848\u5141\u8BB8\u7A0B\u5E8F\u76F4\u63A5\u5728\u5B58\u50A8\u5668\u4E2D\u8FD0\u884C\uFF0C\u800C\u65E0\u9700\u5148\u5C06\u4EE3\u7801\u52A0\u8F7D\u5230\u968F\u673A\u5B58\u53D6\u5B58\u50A8\u5668\uFF08RAM\uFF09\u4E2D\uFF0C\u4ECE\u800C\u8282\u7701\u5185\u5B58\u7A7A\u95F4\u5E76\u51CF\u5C11\u542F\u52A8\u65F6\u95F4\u3002 \u672C\u8282\u4ECB\u7ECD QSPI V1.1 \u7684 XIP \u529F\u80FD\u4E0E Luban-Lite \u4E2D\u7684 XIP \u65B9\u6848\u4F7F\u7528\u65B9\u6CD5\u3002...","topics/sdk/xpwm/xpwm_config.html@@@\u53C2\u6570\u914D\u7F6E@@@\u9A71\u52A8\u914D\u7F6E \u5728 Luban-Lite \u6839\u76EE\u5F55\u4E0B\u6267\u884C scons --menuconfig \uFF0C\u8FDB\u5165 menuconfig \u7684\u529F\u80FD\u914D\u7F6E\u754C\u9762\u3002 \u9009\u62E9\u9700\u8981\u7684 XPWM/PWM \u901A\u9053\u3002\u4EE5\u4E0B\u6253\u5F00\u4E86\u90E8\u5206 XPWM/PWM \u901A\u9053\uFF1A 3. \u5728 menuconfig \u754C\u9762\u4E2D\u6253\u5F00 RT-Thread \u7684 XPWM/PWM \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\u3002 \u4F7F\u7528 RT-Thread \u5185\u6838\u7684\u65F6\uFF0CPWM/XPWM \u9A71\u52A8\u9700\u8981\u4F9D\u8D56...","topics/sdk/xpwm/xpwm_debug.html@@@\u8C03\u8BD5\u6307\u5357@@@...","topics/sdk/xpwm/xpwm_design.html@@@\u8BBE\u8BA1\u8BF4\u660E@@@\u6E90\u7801\u8BF4\u660E \u6E90\u4EE3\u7801\u4F4D\u4E8E bsp/artinchip/ \uFF1A bsp/artinchip/drv/xpwm/drv_xpwm.c\uFF0CXPWM/PWM Driver \u5C42\u5B9E\u73B0 bsp/artinchip/hal/xpwm/hal_xpwm.c\uFF0CXPWM/PWM HAL \u5C42\u5B9E\u73B0 bsp/artinchip/include/hal/hal_xpwm.h\uFF0CXPWM/PWM HAL \u5C42\u63A5\u53E3\u5934\u6587\u4EF6 \u6A21\u5757\u67B6\u6784...","topics/sdk/xpwm/xpwm_faq.html@@@\u5E38\u89C1\u95EE\u9898@@@...","topics/sdk/xpwm/xpwm_test.html@@@\u6D4B\u8BD5\u6307\u5357@@@\u6D4B\u8BD5\u73AF\u5883 \u786C\u4EF6 FPGA \u9A8C\u8BC1\u7248 \u793A\u6CE2\u5668\uFF0C\u7528\u4E8E\u89C2\u5BDF\u8F93\u51FA XPWM/PWM \u4FE1\u53F7\u7684\u6CE2\u5F62 \u8F6F\u4EF6 PC \u7AEF\u7684\u4E32\u53E3\u7EC8\u7AEF\u8F6F\u4EF6\uFF0C\u7528\u4E8E PC \u548C\u5F00\u53D1\u677F\u8FDB\u884C\u4E32\u53E3\u901A\u4FE1 RT-Thread \u7CFB\u7EDF\u81EA\u5E26\u7684 pwm \u547D\u4EE4\u884C\u5DE5\u5177 \u8F6F\u4EF6\u914D\u7F6E \u5F53\u6253\u5F00 RT-Thread \u7CFB\u7EDF\u7684 PWM \u8BBE\u5907\u9A71\u52A8\u6846\u67B6\uFF0C\u5C31\u4F1A\u5728\u542F\u52A8\u65F6\u6CE8\u518C\u751F\u6210 pwm \u547D\u4EE4\u3002 \u6D4B\u8BD5 XPWM/PWM pwm \u547D\u4EE4\u5E2E\u52A9\u4FE1\u606F\u5982\u4E0B\uFF1A spss /> pwm Usage...","topics/sdk/xpwm/xpwm_user_guide.html@@@XPWM \u4F7F\u7528\u6307\u5357@@@\u8868 1 . \u672F\u8BED\u5B9A\u4E49 \u672F\u8BED/\u7F29\u7565\u8BED \u5B9A\u4E49\u53CA\u8BF4\u660E XPWM Extend Pulse-Width Modulation\uFF0C\u62D3\u5C55\u8109\u51B2\u5BBD\u5EA6\u63A7\u5236\uFF0C\u7B80\u79F0\u8109\u5BBD\u8C03\u5236 \u5360\u7A7A\u6BD4 PWM \u4FE1\u53F7\u4E2D\uFF0C\u9AD8\u7535\u5E73\u4FDD\u6301\u7684\u65F6\u95F4 \u4E0E \u8BE5 PWM \u65F6\u949F\u5468\u671F\u7684\u65F6\u95F4\u4E4B\u6BD4 FIFO First In First Out, \u5148\u8FDB\u5148\u51FA\u6570\u636E\u5B58\u50A8\u3001\u7F13\u51B2\u5668 DMA Direct Memory Access,\u76F4\u63A5\u5185\u5B58\u8BBF\u95EE XPWM \u529F\u80FD\u7B80\u4ECB PWM...","topics/tools/AiBurn-burn-image.html@@@\u70E7\u5199\u955C\u50CF (USB)@@@\u5F53\u8BBE\u5907\u8FDE\u4E0A PC \u540E\uFF0C \u8BBE\u5907 \u56FE\u6807\u4F1A\u53D8\u6210\u84DD\u8272\uFF0C\u8868\u793A\u8FDE\u63A5\u6210\u529F\u3002 \u6B64\u65F6\uFF0C \u5F00\u59CB \u6309\u94AE\u624D\u53EF\u7528\u3002 \u70E7\u5199\u8FC7\u7A0B\uFF0C \u5F00\u59CB \u6309\u94AE\u5C06\u53D8\u6210 \u505C\u6B62 \uFF0C\u652F\u6301\u7528\u6237\u4E2D\u6B62\u70E7\u5199\u8FC7\u7A0B\u3002\u70E7\u5199\u8FC7\u7A0B\u4E2D\u7981\u6B62\u5207\u6362\u5230 \u5236\u4F5C\u542F\u52A8\u5361 \u6807\u7B7E\u9875\u7684\u754C\u9762\uFF0C\u540C\u7406\uFF0C\u5728\u5236\u4F5C\u81EA\u52A8\u5361\u7684\u8FC7\u7A0B\u4E2D\u4E5F\u4F1A\u7981\u6B62\u5207\u6362\u5230 \u70E7\u5199\u955C\u50CF \u754C\u9762\u3002 \u70E7\u5199\u8FC7\u7A0B\u4E2D\uFF0C\u754C\u9762\u4E2D\u95F4\u533A\u57DF\u4F1A\u663E\u793A\u8FDB\u5EA6\u3001\u901F\u7387\u3001\u7528\u65F6\u7B49\u4FE1\u606F\uFF0C\u70E7\u5199\u7ED3\u675F\u540E\u4F1A\u663E\u793A\u7ED3\u679C\u3002..."];
|