{"id":100044,"date":"2026-09-03T18:56:52","date_gmt":"2026-09-03T10:56:52","guid":{"rendered":"https:\/\/www.wsisp.com\/helps\/100044.html"},"modified":"2026-09-03T18:56:52","modified_gmt":"2026-09-03T10:56:52","slug":"bswgeneral-%e7%89%b9%e5%88%ab%e7%af%87%c2%b7%e9%99%86%ef%bc%9a%e4%b8%ad%e6%96%ad%e5%a4%84%e7%90%86%e7%9a%84%e8%89%ba%e6%9c%af-%e4%bb%8e%e7%a1%ac%e6%a0%b8%e5%ba%95%e5%b1%82","status":"publish","type":"post","link":"https:\/\/www.wsisp.com\/helps\/100044.html","title":{"rendered":"BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d"},"content":{"rendered":"<p>\u514d\u8d23\u58f0\u660e<br \/>\n\u672c\u6587\u5185\u5bb9\u4ec5\u9650\u5b66\u4e60\u4f7f\u7528\u3002\u6587\u4e2d\u6d89\u53ca\u7684 AUTOSAR \u89c4\u8303\u6761\u6b3e\u5f15\u7528\u3001\u4ee3\u7801\u793a\u4f8b\u3001\u914d\u7f6e\u903b\u8f91\u5747\u57fa\u4e8e AUTOSAR Classic Platform R4.x \u516c\u5f00\u6807\u51c6\u6587\u6863\u53ca\u884c\u4e1a\u901a\u7528\u5b9e\u8df5\u3002\u6587\u4e2d\u6240\u6709\u6848\u4f8b\u3001\u6545\u4e8b\u3001\u5bf9\u8bdd\u573a\u666f\u3001\u4eba\u7269\u53ca\u4f01\u4e1a\u540d\u79f0\u5747\u4e3a\u5b8c\u5168\u865a\u6784&#xff0c;\u4ec5\u7528\u4e8e\u901a\u8fc7\u5177\u4f53\u751f\u52a8\u7684\u573a\u666f\u5e2e\u52a9\u8bfb\u8005\u7406\u89e3\u62bd\u8c61\u6280\u672f\u89c4\u8303\u3002\u82e5\u5c06\u6587\u4e2d\u5185\u5bb9\u5e94\u7528\u4e8e\u5b9e\u9645\u9879\u76ee&#xff0c;\u8bf7\u52a1\u5fc5\u4ee5 AUTOSAR \u5b98\u65b9\u53d1\u5e03\u7684\u6700\u65b0\u89c4\u8303\u4e3a\u51c6&#xff0c;\u5e76\u7ed3\u5408\u5177\u4f53\u5de5\u5177\u94fe\u548c\u82af\u7247\u5e73\u53f0\u8fdb\u884c\u9a8c\u8bc1\u3002\u56e0\u4f7f\u7528\u4e0d\u5f53\u9020\u6210\u7684\u4efb\u4f55\u635f\u5931&#xff0c;\u8d23\u4efb\u7531\u4f7f\u7528\u8005\u81ea\u884c\u627f\u62c5\u3002<\/p>\n<hr \/>\n<h3>\u77e5\u8bc6\u8981\u70b9\u6e05\u5355<\/h3>\n<table>\n<tr>#\u77e5\u8bc6\u70b9\u6838\u5fc3\u95ee\u9898<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">1<\/td>\n<td align=\"left\">\u4e2d\u65ad\u7684\u672c\u8d28<\/td>\n<td align=\"left\">\u4e2d\u65ad\u548c\u8f6e\u8be2\u7684\u672c\u8d28\u533a\u522b\u662f\u4ec0\u4e48&#xff1f;\u4e3a\u4ec0\u4e48\u4e2d\u65ad\u66f4\u9ad8\u6548&#xff1f;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">2<\/td>\n<td align=\"left\">\u4e2d\u65ad\u5e27 vs ISR<\/td>\n<td align=\"left\">\u4e3a\u4ec0\u4e48\u8981\u628a\u4e2d\u65ad\u201c\u5916\u58f3\u201d\u548c\u201c\u4e1a\u52a1\u5185\u6838\u201d\u5206\u79bb&#xff1f;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">3<\/td>\n<td align=\"left\">CAT1 vs CAT2<\/td>\n<td align=\"left\">\u4e24\u7c7b\u4e2d\u65ad\u7684\u6839\u672c\u533a\u522b\u662f\u4ec0\u4e48&#xff1f;\u5404\u81ea\u9002\u7528\u4ec0\u4e48\u573a\u666f&#xff1f;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">4<\/td>\n<td align=\"left\">ISR\u7684\u201c\u77ed\u5e73\u5feb\u201d<\/td>\n<td align=\"left\">\u4e3a\u4ec0\u4e48ISR\u5fc5\u987b\u6781\u77ed&#xff1f;\u505a\u91cd\u6d3b\u4f1a\u6709\u4ec0\u4e48\u540e\u679c&#xff1f;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">5<\/td>\n<td align=\"left\">\u4ece\u4e2d\u65ad\u5230\u4efb\u52a1\u7684\u5207\u6362<\/td>\n<td align=\"left\">CAT1\u548cCAT2\u5404\u81ea\u5982\u4f55\u4f18\u96c5\u5730\u201c\u4ea4\u63a5\u201d\u7ed9\u4efb\u52a1&#xff1f;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">6<\/td>\n<td align=\"left\">\u4e2d\u65ad\u56de\u8c03\u7684\u7ea6\u675f<\/td>\n<td align=\"left\">\u56de\u8c03\u51fd\u6570\u5728\u4e2d\u65ad\u4e0a\u4e0b\u6587\u4e2d\u6709\u4ec0\u4e48\u9650\u5236&#xff1f;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">7<\/td>\n<td align=\"left\">\u5b9e\u6218\u6848\u4f8b<\/td>\n<td align=\"left\">\u4e00\u4e2a\u771f\u5b9e\u7684\u4e2d\u65adBug\u662f\u5982\u4f55\u5b9a\u4f4d\u548c\u4fee\u590d\u7684&#xff1f;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\u5f15\u5b50&#xff1a;\u201c\u8001\u5468&#xff0c;\u4e2d\u65ad\u5230\u5e95\u662f\u4e2a\u5565&#xff1f;\u201d<\/h3>\n<p>\u4ee5\u4e0b\u6848\u4f8b\u4e3a\u5b8c\u5168\u865a\u6784&#xff0c;\u6240\u6709\u65f6\u95f4\u3001\u5730\u70b9\u3001\u4eba\u7269\u3001\u516c\u53f8\u3001\u91d1\u989d\u5747\u4e3a\u675c\u64b0&#xff0c;\u65e8\u5728\u901a\u8fc7\u4e00\u4e2a\u5178\u578b\u573a\u666f\u8bf4\u660e\u4e2d\u65ad\u5904\u7406\u7684\u6838\u5fc3\u6311\u6218\u3002\u5982\u6709\u96f7\u540c&#xff0c;\u7eaf\u5c5e\u5de7\u5408\u3002<\/p>\n<p>\u65f6\u95f4&#xff1a;\u67d0\u4e2a\u5468\u4e8c\u4e0b\u5348\u3002\u5730\u70b9&#xff1a;\u67d0Tier 1\u4f9b\u5e94\u5546\u7684\u8f6f\u4ef6\u529e\u516c\u5ba4\u3002\u4eba\u7269&#xff1a;\u8d44\u6df1\u67b6\u6784\u5e08\u8001\u5468\u3001\u8f6f\u4ef6\u5de5\u7a0b\u5e08\u5c0f\u6797\u3002<\/p>\n<p>\u5c0f\u6797\u62b1\u7740\u4e00\u5757\u5f00\u53d1\u677f&#xff0c;\u6025\u5306\u5306\u5730\u8dd1\u5230\u8001\u5468\u5de5\u4f4d\u524d&#xff0c;\u8138\u4e0a\u5199\u6ee1\u4e86\u56f0\u60d1\u3002<\/p>\n<p>\u201c\u8001\u5468&#xff01;\u6211\u8fd9EEPROM\u9a71\u52a8\u5728\u8f6e\u8be2\u6a21\u5f0f\u4e0b\u8dd1\u5f97\u597d\u597d\u7684&#xff0c;\u4e00\u5f00\u4e2d\u65ad\u6a21\u5f0f\u5c31\u51fa\u5404\u79cd\u5947\u602a\u7684\u95ee\u9898\u2014\u2014\u6709\u65f6\u5019\u6570\u636e\u4e22\u4e86&#xff0c;\u6709\u65f6\u5019\u7cfb\u7edf\u5361\u4f4f\u4e86&#xff0c;\u8fd8\u6709\u4e00\u6b21\u76f4\u63a5\u628a\u770b\u95e8\u72d7\u89e6\u53d1\u4e86&#xff01;\u201d\u5c0f\u6797\u628a\u5f00\u53d1\u677f\u653e\u5728\u684c\u4e0a&#xff0c;\u201c\u4e2d\u65ad\u5230\u5e95\u662f\u4e2a\u5565&#xff1f;\u4e3a\u4ec0\u4e48\u8fd9\u4e48\u96be\u641e&#xff1f;\u201d<\/p>\n<p>\u8001\u5468\u653e\u4e0b\u624b\u4e2d\u7684\u5496\u5561&#xff0c;\u63a5\u8fc7\u5f00\u53d1\u677f&#xff1a;\u201c\u5148\u628a\u4f60\u7684\u4ee3\u7801\u7ed9\u6211\u770b\u770b\u3002\u201d<\/p>\n<p>\u5c0f\u6797\u628a\u5c4f\u5e55\u8f6c\u8fc7\u6765\u3002\u8001\u5468\u626b\u4e86\u4e00\u773c&#xff0c;\u7709\u5934\u76b1\u4e86\u8d77\u6765&#xff1a;<\/p>\n<p><span class=\"token comment\">\/* \u5c0f\u6797\u5199\u7684\u201c\u4e2d\u65ad\u5904\u7406\u201d *\/<\/span><br \/>\n<span class=\"token keyword\">void<\/span> <span class=\"token function\">Eep_IsrHandler<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">void<\/span><span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token comment\">\/* \u5728\u4e2d\u65ad\u91cc\u505a\u4e86\u592a\u591a\u4e8b&#xff01; *\/<\/span><br \/>\n    <span class=\"token class-name\">uint8_t<\/span> data <span class=\"token operator\">&#061;<\/span> <span class=\"token function\">ReadEeprom<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token function\">ProcessComplexData<\/span><span class=\"token punctuation\">(<\/span>data<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>        <span class=\"token comment\">\/* \u590d\u6742\u7b97\u6cd5&#xff1a;CRC\u6821\u9a8c &#043; \u72b6\u6001\u673a\u5207\u6362 *\/<\/span><br \/>\n    <span class=\"token function\">NvM_WriteBlock<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">0x01<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token operator\">&amp;<\/span>data<span class=\"token punctuation\">,<\/span> <span class=\"token number\">1<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>  <span class=\"token comment\">\/* \u6162\u901fNvM\u5199\u5165&#xff1a;\u8017\u65f6\u51e0\u767e\u03bcs *\/<\/span><br \/>\n    <span class=\"token function\">printf<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">&#034;Interrupt occurred!\\\\n&#034;<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token comment\">\/* \u8c03\u8bd5\u8f93\u51fa&#xff1a;\u8017\u65f6\u51e0ms *\/<\/span><br \/>\n    <span class=\"token function\">Os_SetEvent<\/span><span class=\"token punctuation\">(<\/span>TaskId<span class=\"token punctuation\">,<\/span> EventId<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>    <span class=\"token comment\">\/* \u8bbe\u7f6e\u4e8b\u4ef6 *\/<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u8001\u5468\u53f9\u4e86\u53e3\u6c14&#xff1a;\u201c\u5c0f\u6797&#xff0c;\u4f60\u77e5\u9053\u8fd9\u4e2aISR\u662f\u5728\u4ec0\u4e48\u4e0a\u4e0b\u6587\u91cc\u6267\u884c\u7684\u5417&#xff1f;\u201d<\/p>\n<p>\u5c0f\u6797\u6123\u4e86\u4e00\u4e0b&#xff1a;\u201c\u5443\u2026\u2026\u4e2d\u65ad\u4e0a\u4e0b\u6587&#xff1f;\u201d<\/p>\n<p>\u201c\u5bf9\u3002\u201d\u8001\u5468\u7ad9\u8d77\u6765&#xff0c;\u8d70\u5230\u767d\u677f\u524d&#xff0c;\u201c\u4e2d\u65ad\u4e0a\u4e0b\u6587\u548c\u4efb\u52a1\u4e0a\u4e0b\u6587&#xff0c;\u5c31\u50cf\u2018\u6025\u8bca\u5ba4\u2019\u548c\u2018\u666e\u901a\u95e8\u8bca\u2019\u7684\u533a\u522b\u3002 \u4f60\u5728\u6025\u8bca\u5ba4\u91cc\u4e0d\u80fd\u505a\u590d\u6742\u624b\u672f\u3001\u4e0d\u80fd\u5b89\u6392\u4f4f\u9662\u3001\u4e0d\u80fd\u5f00\u957f\u671f\u5904\u65b9\u2014\u2014\u53ea\u80fd\u505a\u2018\u6b62\u8840\u3001\u5305\u624e\u3001\u7a33\u5b9a\u751f\u547d\u4f53\u5f81\u2019\u8fd9\u4e09\u4ef6\u4e8b\u3002\u4f60\u7684ISR\u73b0\u5728\u5728\u6025\u8bca\u5ba4\u91cc\u505a\u4e86\u4e00\u53f0\u5f00\u80f8\u624b\u672f&#xff01;\u201d<\/p>\n<p>\u5c0f\u6797\u6320\u4e86\u6320\u5934&#xff1a;\u201c\u90a3\u6211\u5e94\u8be5\u600e\u4e48\u505a&#xff1f;\u201d<\/p>\n<p>\u8001\u5468\u62ff\u8d77\u767d\u677f\u7b14&#xff1a;\u201c\u4eca\u5929\u6211\u628a\u4e2d\u65ad\u8fd9\u4ef6\u4e8b\u4ece\u5934\u5230\u5c3e\u7ed9\u4f60\u8bb2\u900f\u3002\u542c\u5b8c\u4e4b\u540e&#xff0c;\u4f60\u90a3\u4e2aEEPROM\u9a71\u52a8\u7684\u95ee\u9898\u4f60\u81ea\u5df1\u5c31\u80fd\u89e3\u51b3\u3002\u201d<\/p>\n<h3>\u7b2c\u4e00\u7ae0&#xff1a;\u4e2d\u65ad\u662f\u4ec0\u4e48&#xff1f;\u2014\u2014\u4ece\u201c\u95e8\u94c3\u201d\u5230\u201c\u9ad8\u6548\u7b49\u5f85\u201d<\/h3>\n<h4>1.1 \u8f6e\u8be2 vs \u4e2d\u65ad&#xff1a;\u4e00\u4e2a\u201c\u7b49\u5feb\u9012\u201d\u7684\u6545\u4e8b<\/h4>\n<p>\u8001\u5468\u5728\u767d\u677f\u4e0a\u753b\u4e86\u4e24\u4e2a\u573a\u666f&#xff1a;<\/p>\n<p>#mermaid-svg-QgKdPTPadKClhTro{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-QgKdPTPadKClhTro .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-QgKdPTPadKClhTro .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-QgKdPTPadKClhTro .error-icon{fill:#552222;}#mermaid-svg-QgKdPTPadKClhTro .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-QgKdPTPadKClhTro .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-QgKdPTPadKClhTro .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-QgKdPTPadKClhTro .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-QgKdPTPadKClhTro .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-QgKdPTPadKClhTro .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-QgKdPTPadKClhTro .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-QgKdPTPadKClhTro .marker{fill:#333333;stroke:#333333;}#mermaid-svg-QgKdPTPadKClhTro .marker.cross{stroke:#333333;}#mermaid-svg-QgKdPTPadKClhTro svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-QgKdPTPadKClhTro p{margin:0;}#mermaid-svg-QgKdPTPadKClhTro .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-QgKdPTPadKClhTro .cluster-label text{fill:#333;}#mermaid-svg-QgKdPTPadKClhTro .cluster-label span{color:#333;}#mermaid-svg-QgKdPTPadKClhTro .cluster-label span p{background-color:transparent;}#mermaid-svg-QgKdPTPadKClhTro .label text,#mermaid-svg-QgKdPTPadKClhTro span{fill:#333;color:#333;}#mermaid-svg-QgKdPTPadKClhTro .node rect,#mermaid-svg-QgKdPTPadKClhTro .node circle,#mermaid-svg-QgKdPTPadKClhTro .node ellipse,#mermaid-svg-QgKdPTPadKClhTro .node polygon,#mermaid-svg-QgKdPTPadKClhTro .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-QgKdPTPadKClhTro .rough-node .label text,#mermaid-svg-QgKdPTPadKClhTro .node .label text,#mermaid-svg-QgKdPTPadKClhTro .image-shape .label,#mermaid-svg-QgKdPTPadKClhTro .icon-shape .label{text-anchor:middle;}#mermaid-svg-QgKdPTPadKClhTro .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-QgKdPTPadKClhTro .rough-node .label,#mermaid-svg-QgKdPTPadKClhTro .node .label,#mermaid-svg-QgKdPTPadKClhTro .image-shape .label,#mermaid-svg-QgKdPTPadKClhTro .icon-shape .label{text-align:center;}#mermaid-svg-QgKdPTPadKClhTro .node.clickable{cursor:pointer;}#mermaid-svg-QgKdPTPadKClhTro .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-QgKdPTPadKClhTro .arrowheadPath{fill:#333333;}#mermaid-svg-QgKdPTPadKClhTro .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-QgKdPTPadKClhTro .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-QgKdPTPadKClhTro .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-QgKdPTPadKClhTro .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-QgKdPTPadKClhTro .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-QgKdPTPadKClhTro .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-QgKdPTPadKClhTro .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-QgKdPTPadKClhTro .cluster text{fill:#333;}#mermaid-svg-QgKdPTPadKClhTro .cluster span{color:#333;}#mermaid-svg-QgKdPTPadKClhTro div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-QgKdPTPadKClhTro .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-QgKdPTPadKClhTro rect.text{fill:none;stroke-width:0;}#mermaid-svg-QgKdPTPadKClhTro .icon-shape,#mermaid-svg-QgKdPTPadKClhTro .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-QgKdPTPadKClhTro .icon-shape p,#mermaid-svg-QgKdPTPadKClhTro .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-QgKdPTPadKClhTro .icon-shape .label rect,#mermaid-svg-QgKdPTPadKClhTro .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-QgKdPTPadKClhTro .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-QgKdPTPadKClhTro .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-QgKdPTPadKClhTro :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"nodeLabel\"><\/p>\n<p>\u4e2d\u65ad\u6a21\u5f0f Interrupt<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u201c\u5f00\u59cb\u5e72\u6d3b&#xff0c;\u597d\u4e86\u53eb\u6211\u201d<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u7ee7\u7eed\u505a\u5176\u4ed6\u4e8b<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u201c\u53ee\u549a&#xff01;\u597d\u4e86&#xff01;\u201d<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u54cd\u5e94\u4e2d\u65ad<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CPU<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u786c\u4ef6<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5176\u4ed6\u4efb\u52a1<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>ISR\u5904\u7406<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CPU\u9ad8\u6548\u5229\u7528\u7b49\u5f85\u65f6\u95f4<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u8f6e\u8be2\u6a21\u5f0f Polling<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u201c\u5fd9\u5417&#xff1f;\u201d<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u201c\u5fd9\u201d<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u201c\u5fd9\u5417&#xff1f;\u201d<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u201c\u5fd9\u201d<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u201c\u5fd9\u5417&#xff1f;\u201d<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u201c\u597d\u4e86\u201d<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CPU<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u786c\u4ef6<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CPU\u4e00\u76f4\u5728\u95ee\u6d6a\u8d39\u5927\u91cf\u65f6\u95f4<\/p>\n<p><\/span><\/p>\n<p>\u8001\u5468\u6307\u7740\u5de6\u8fb9\u7684\u56fe&#xff1a;\u201c\u8f6e\u8be2\u6a21\u5f0f\u5c31\u50cf\u4f60\u6bcf\u96945\u5206\u949f\u53bb\u95ee\u5feb\u9012\u5458\u2018\u6211\u7684\u5feb\u9012\u5230\u4e86\u5417&#xff1f;\u2019\u2014\u2014\u5927\u90e8\u5206\u65f6\u5019\u7b54\u6848\u90fd\u662f\u2018\u6ca1\u5230\u2019&#xff0c;\u4f46\u4f60\u6d6a\u8d39\u4e86\u5927\u91cf\u65f6\u95f4\u5728\u2018\u95ee\u2019\u8fd9\u4e2a\u52a8\u4f5c\u4e0a\u3002\u201d<\/p>\n<p>\u4ed6\u53c8\u6307\u7740\u53f3\u8fb9\u7684\u56fe&#xff1a;\u201c\u4e2d\u65ad\u6a21\u5f0f\u5c31\u50cf\u4f60\u7ed9\u5feb\u9012\u5458\u7559\u4e86\u7535\u8bdd\u2014\u2014\u5feb\u9012\u5230\u4e86\u4ed6\u6253\u7ed9\u4f60\u3002\u4f60\u5728\u7b49\u5f85\u671f\u95f4\u53ef\u4ee5\u5b89\u5fc3\u505a\u5176\u4ed6\u4e8b&#xff0c;\u7535\u8bdd\u54cd\u4e86\u518d\u53bb\u5904\u7406\u3002\u8fd9\u5c31\u662f\u4e2d\u65ad\u7684\u6838\u5fc3\u4ef7\u503c&#xff1a;\u628aCPU\u4ece\u2018\u65e0\u610f\u4e49\u7684\u7b49\u5f85\u2019\u4e2d\u89e3\u653e\u51fa\u6765\u3002\u201d<\/p>\n<p>\u5c0f\u6797\u70b9\u5934&#xff1a;\u201c\u6240\u4ee5\u4e2d\u65ad\u5c31\u662f\u786c\u4ef6\u4e3b\u52a8\u901a\u77e5CPU\u2018\u6211\u597d\u4e86\u2019&#xff1f;\u201d<\/p>\n<p>\u201c\u5bf9\u3002\u201d\u8001\u5468\u8bf4&#xff0c;\u201c\u4e2d\u65ad\u662f\u786c\u4ef6\u5411CPU\u53d1\u51fa\u7684\u2018\u7d27\u6025\u901a\u77e5\u2019&#xff0c;\u544a\u8bc9CPU\u2018\u6709\u4e8b\u60c5\u9700\u8981\u4f60\u5904\u7406\u4e86\u2019\u3002 \u6bd4\u5982CAN\u63a7\u5236\u5668\u6536\u5230\u4e86\u4e00\u5e27\u62a5\u6587\u3001ADC\u5b8c\u6210\u4e86\u8f6c\u6362\u3001\u5b9a\u65f6\u5668\u6ea2\u51fa\u4e86\u2014\u2014\u8fd9\u4e9b\u90fd\u4f1a\u89e6\u53d1\u4e2d\u65ad\u3002\u201d<\/p>\n<h4>1.2 \u4e2d\u65ad\u7684\u5b8c\u6574\u6d41\u7a0b\u2014\u2014\u4ece\u786c\u4ef6\u4fe1\u53f7\u5230\u4efb\u52a1\u5524\u9192<\/h4>\n<p>\u8001\u5468\u5728\u767d\u677f\u4e0a\u753b\u4e86\u4e00\u4e2a\u66f4\u8be6\u7ec6\u7684\u65f6\u5e8f\u56fe&#xff1a;<\/p>\n<p>OS\u4efb\u52a1\u64cd\u4f5c\u7cfb\u7edfISR\u5904\u7406\u51fd\u6570CPU\u4e2d\u65ad\u63a7\u5236\u5668\u786c\u4ef6\u5916\u8bbeOS\u4efb\u52a1\u64cd\u4f5c\u7cfb\u7edfISR\u5904\u7406\u51fd\u6570CPU\u4e2d\u65ad\u63a7\u5236\u5668\u786c\u4ef6\u5916\u8bbe#mermaid-svg-Nx30TAkrgf1Kydaw{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-Nx30TAkrgf1Kydaw .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-Nx30TAkrgf1Kydaw .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-Nx30TAkrgf1Kydaw .error-icon{fill:#552222;}#mermaid-svg-Nx30TAkrgf1Kydaw .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Nx30TAkrgf1Kydaw .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-Nx30TAkrgf1Kydaw .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Nx30TAkrgf1Kydaw .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Nx30TAkrgf1Kydaw .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-Nx30TAkrgf1Kydaw .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Nx30TAkrgf1Kydaw .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Nx30TAkrgf1Kydaw .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Nx30TAkrgf1Kydaw .marker.cross{stroke:#333333;}#mermaid-svg-Nx30TAkrgf1Kydaw svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Nx30TAkrgf1Kydaw p{margin:0;}#mermaid-svg-Nx30TAkrgf1Kydaw .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Nx30TAkrgf1Kydaw text.actor&gt;tspan{fill:black;stroke:none;}#mermaid-svg-Nx30TAkrgf1Kydaw .actor-line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-Nx30TAkrgf1Kydaw .innerArc{stroke-width:1.5;stroke-dasharray:none;}#mermaid-svg-Nx30TAkrgf1Kydaw .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-Nx30TAkrgf1Kydaw .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-Nx30TAkrgf1Kydaw #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-Nx30TAkrgf1Kydaw .sequenceNumber{fill:white;}#mermaid-svg-Nx30TAkrgf1Kydaw #sequencenumber{fill:#333;}#mermaid-svg-Nx30TAkrgf1Kydaw #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-Nx30TAkrgf1Kydaw .messageText{fill:#333;stroke:none;}#mermaid-svg-Nx30TAkrgf1Kydaw .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Nx30TAkrgf1Kydaw .labelText,#mermaid-svg-Nx30TAkrgf1Kydaw .labelText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-Nx30TAkrgf1Kydaw .loopText,#mermaid-svg-Nx30TAkrgf1Kydaw .loopText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-Nx30TAkrgf1Kydaw .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-Nx30TAkrgf1Kydaw .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-Nx30TAkrgf1Kydaw .noteText,#mermaid-svg-Nx30TAkrgf1Kydaw .noteText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-Nx30TAkrgf1Kydaw .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Nx30TAkrgf1Kydaw .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Nx30TAkrgf1Kydaw .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Nx30TAkrgf1Kydaw .actorPopupMenu{position:absolute;}#mermaid-svg-Nx30TAkrgf1Kydaw .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 \/ 0.4));}#mermaid-svg-Nx30TAkrgf1Kydaw .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Nx30TAkrgf1Kydaw .actor-man circle,#mermaid-svg-Nx30TAkrgf1Kydaw line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-Nx30TAkrgf1Kydaw :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}1. \u4ea7\u751f\u4e2d\u65ad\u4fe1\u53f72. \u5411CPU\u53d1\u9001\u4e2d\u65ad\u8bf7\u6c423. \u4fdd\u5b58\u5f53\u524d\u4e0a\u4e0b\u6587&#xff08;\u5bc4\u5b58\u5668\u3001PC\u3001PSW&#xff09;4. \u8df3\u8f6c\u5230ISR\u5165\u53e35. \u6267\u884c\u4e2d\u65ad\u5904\u7406&#xff08;\u53ea\u505a\u4e09\u4ef6\u4e8b&#xff1a;\u77ed&#xff01;&#xff09;6. \u5524\u9192\u4efb\u52a1&#xff08;CAT2&#xff09;7. \u8c03\u5ea6\u5668\u6807\u8bb0\u4efb\u52a1\u5c31\u7eea8. \u4e2d\u65ad\u8fd4\u56de9. \u6062\u590d\u4e0a\u4e0b\u658710. \u8c03\u5ea6\u5668\u5207\u6362\u5230\u4efb\u52a111. \u6267\u884c\u91cd\u6d3b<\/p>\n<p>\u8001\u5468\u6307\u7740\u56fe&#xff1a;\u201c\u7b2c3\u6b65\u548c\u7b2c9\u6b65\u2014\u2014\u4fdd\u5b58\u548c\u6062\u590d\u4e0a\u4e0b\u6587\u2014\u2014\u5c31\u662f\u2018\u4e2d\u65ad\u5e27\u2019&#xff08;Interrupt Frame&#xff09;\u7684\u6838\u5fc3\u5de5\u4f5c\u3002\u201d<\/p>\n<p>\u5c0f\u6797&#xff1a;\u201c\u4e2d\u65ad\u5e27&#xff1f;\u5c31\u662f\u90a3\u4e2a_Irq.c\u6587\u4ef6&#xff1f;\u201d<\/p>\n<p>\u201c\u5bf9\u3002\u6211\u4eec\u8fd9\u5c31\u6765\u8bb2\u4e2d\u65ad\u5e27\u3002\u201d\u8001\u5468\u8bf4&#xff0c;\u201c\u4f46\u5728\u90a3\u4e4b\u524d&#xff0c;\u5148\u7406\u89e3\u4e00\u4e2a\u66f4\u57fa\u672c\u7684\u95ee\u9898\u2014\u2014\u4e3a\u4ec0\u4e48\u4e2d\u65ad\u4e0a\u4e0b\u6587\u548c\u4efb\u52a1\u4e0a\u4e0b\u6587\u6709\u672c\u8d28\u7684\u533a\u522b&#xff1f;\u201d<\/p>\n<h4>1.3 \u4e2d\u65ad\u4e0a\u4e0b\u6587 vs \u4efb\u52a1\u4e0a\u4e0b\u6587\u2014\u2014\u4e24\u4e2a\u201c\u5e73\u884c\u4e16\u754c\u201d<\/h4>\n<p>\u8001\u5468\u753b\u4e86\u4e00\u5f20\u5bf9\u6bd4\u8868&#xff1a;<\/p>\n<table>\n<tr>\u7ef4\u5ea6\u4e2d\u65ad\u4e0a\u4e0b\u6587\u4efb\u52a1\u4e0a\u4e0b\u6587<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">\u89e6\u53d1\u65b9\u5f0f<\/td>\n<td align=\"left\">\u786c\u4ef6\u4e8b\u4ef6\u89e6\u53d1&#xff08;\u4e0d\u53ef\u9884\u6d4b&#xff09;<\/td>\n<td align=\"left\">OS\u8c03\u5ea6\u5668\u8c03\u5ea6&#xff08;\u53ef\u9884\u6d4b&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u6267\u884c\u65f6\u673a<\/td>\n<td align=\"left\">\u7acb\u5373\u6267\u884c&#xff08;\u62a2\u5360\u5f53\u524d\u4efb\u52a1&#xff09;<\/td>\n<td align=\"left\">\u6309\u4f18\u5148\u7ea7\u987a\u5e8f\u6267\u884c<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u963b\u585e\u80fd\u529b<\/td>\n<td align=\"left\">\u4e0d\u80fd\u963b\u585e&#xff08;\u4e0d\u80fd\u7b49&#xff09;<\/td>\n<td align=\"left\">\u53ef\u4ee5\u963b\u585e&#xff08;\u53ef\u4ee5\u7b49&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u53ef\u8c03\u7528\u7684OS API<\/td>\n<td align=\"left\">\u6781\u6709\u9650&#xff08;\u53ea\u8f7b\u91cf\u7ea7API&#xff09;<\/td>\n<td align=\"left\">\u5b8c\u6574<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u65f6\u95f4\u9884\u7b97<\/td>\n<td align=\"left\">\u6781\u77ed&#xff08;\u5fae\u79d2\u7ea7&#xff09;<\/td>\n<td align=\"left\">\u53ef\u957f\u53ef\u77ed<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u5bf9\u7cfb\u7edf\u7684\u5f71\u54cd<\/td>\n<td align=\"left\">\u963b\u585e\u5176\u4ed6\u4e2d\u65ad<\/td>\n<td align=\"left\">\u53ea\u5f71\u54cd\u540c\u4f18\u5148\u7ea7\u4efb\u52a1<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u6808\u7a7a\u95f4<\/td>\n<td align=\"left\">\u901a\u5e38\u4f7f\u7528\u4e13\u7528\u4e2d\u65ad\u6808<\/td>\n<td align=\"left\">\u4f7f\u7528\u4efb\u52a1\u6808<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u53ef\u8c03\u8bd5\u6027<\/td>\n<td align=\"left\">\u6781\u5dee&#xff08;\u96be\u4ee5\u65ad\u70b9&#xff09;<\/td>\n<td align=\"left\">\u597d&#xff08;\u53ef\u4ee5\u5355\u6b65\u8ddf\u8e2a&#xff09;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u201c\u6700\u6838\u5fc3\u7684\u533a\u522b\u662f\u2018\u80fd\u4e0d\u80fd\u963b\u585e\u2019\u3002\u201d\u8001\u5468\u5f3a\u8c03&#xff0c;\u201c\u5728\u4e2d\u65ad\u4e0a\u4e0b\u6587\u4e2d&#xff0c;\u4f60\u7edd\u5bf9\u4e0d\u80fd\u7b49\u5f85\u4efb\u4f55\u4e1c\u897f\u2014\u2014\u4e0d\u80fd\u7b49\u4fe1\u53f7\u91cf\u3001\u4e0d\u80fd\u7b49\u4e92\u65a5\u9501\u3001\u4e0d\u80fd\u7b49\u5ef6\u65f6\u3002\u56e0\u4e3a\u4e2d\u65ad\u4e00\u65e6\u963b\u585e&#xff0c;\u6574\u4e2a\u7cfb\u7edf\u7684\u4e2d\u65ad\u54cd\u5e94\u5c31\u505c\u6ede\u4e86\u3002\u201d<\/p>\n<p>\u5c0f\u6797&#xff1a;\u201c\u90a3\u5982\u679c\u4e2d\u65ad\u5904\u7406\u8fc7\u7a0b\u4e2d\u9700\u8981\u8bbf\u95ee\u67d0\u4e2a\u5171\u4eab\u8d44\u6e90&#xff0c;\u800c\u8fd9\u4e2a\u8d44\u6e90\u6b63\u88ab\u4efb\u52a1\u5360\u7528&#xff0c;\u600e\u4e48\u529e&#xff1f;\u201d<\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u597d\u95ee\u9898&#xff01;\u8fd9\u5f15\u51fa\u4e86\u4e2d\u65ad\u4e0a\u4e0b\u6587\u4e2d\u7684\u8d44\u6e90\u8bbf\u95ee\u89c4\u5219\u2014\u2014\u6211\u4eec\u540e\u9762\u4f1a\u8be6\u7ec6\u8bb2\u3002\u5148\u8bb0\u4f4f&#xff1a;\u4e2d\u65ad\u4e0a\u4e0b\u6587\u4e2d\u4e0d\u80fd\u963b\u585e&#xff0c;\u8fd9\u662f\u6240\u6709\u89c4\u5219\u7684\u8d77\u70b9\u3002\u201d<\/p>\n<h3>\u7b2c\u4e8c\u7ae0&#xff1a;\u4e2d\u65ad\u5e27 vs ISR\u2014\u2014\u8c01\u662f\u8c01\u7684\u201c\u5916\u58f3\u201d&#xff1f;<\/h3>\n<h4>2.1 \u4e24\u4e2a\u6982\u5ff5&#xff0c;\u4e00\u4e2a\u5206\u5de5<\/h4>\n<p>\u8001\u5468\u5728\u767d\u677f\u4e0a\u5199\u4e0b\u4e24\u4e2a\u8bcd&#xff1a;<\/p>\n<p>\u201c\u4e2d\u65ad\u5e27&#xff08;Interrupt Frame&#xff09;\u201d vs. \u201c\u4e2d\u65ad\u670d\u52a1\u4f8b\u7a0b&#xff08;ISR&#xff09;\u201d<\/p>\n<p>\u201c\u8fd9\u4e24\u4e2a\u6982\u5ff5\u7ecf\u5e38\u88ab\u6df7\u7528&#xff0c;\u4f46\u5728AUTOSAR\u91cc&#xff0c;\u5b83\u4eec\u6709\u660e\u786e\u7684\u533a\u5206\u3002\u201d<\/p>\n<p>SWS_BSW_00016 \u548c SWS_BSW_00017 \u5bf9\u5b83\u4eec\u7684\u5b9a\u4e49&#xff1a;<\/p>\n<p>\u201cThe implementation of Interrupt frames, done within the Interrupt frame implementation source, is separated from the implementation of Interrupt service routines, which is done within the Implementation source.\u201d<\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u4e2d\u65ad\u5e27\u662f\u2018\u5916\u58f3\u2019\u2014\u2014\u5b83\u5904\u7406\u4e0eOS\u3001\u7f16\u8bd1\u5668\u3001\u786c\u4ef6\u76f8\u5173\u7684\u2018\u810f\u6d3b\u7d2f\u6d3b\u2019\u3002ISR\u662f\u2018\u5185\u6838\u2019\u2014\u2014\u5b83\u5904\u7406\u771f\u6b63\u7684\u4e1a\u52a1\u903b\u8f91\u3002\u201d<\/p>\n<p>\u4ed6\u753b\u4e86\u4e00\u5f20\u5bf9\u6bd4\u8868&#xff1a;<\/p>\n<table>\n<tr>\u7ef4\u5ea6\u4e2d\u65ad\u5e27&#xff08;Interrupt Frame&#xff09;ISR&#xff08;Interrupt Service Routine&#xff09;<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">\u6587\u4ef6\u4f4d\u7f6e<\/td>\n<td align=\"left\">&lt;Mip&gt;_Irq.c<\/td>\n<td align=\"left\">&lt;Mip&gt;.c<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u804c\u8d23<\/td>\n<td align=\"left\">\u4fdd\u5b58\/\u6062\u590d\u5bc4\u5b58\u5668\u3001\u8c03\u7528OS\u7684ISR\u6846\u67b6<\/td>\n<td align=\"left\">\u771f\u6b63\u7684\u4e1a\u52a1\u5904\u7406\u903b\u8f91<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u5e73\u53f0\u76f8\u5173\u6027<\/td>\n<td align=\"left\">\u5e73\u53f0\u4f9d\u8d56&#xff08;\u4e0d\u540cOS\/\u7f16\u8bd1\u5668\u4e0d\u540c&#xff09;<\/td>\n<td align=\"left\">\u5e73\u53f0\u72ec\u7acb&#xff08;\u4e0eOS\/\u7f16\u8bd1\u5668\u65e0\u5173&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u8c01\u5199<\/td>\n<td align=\"left\">\u901a\u5e38\u7531\u5de5\u5177\u6216OS\u5382\u5546\u751f\u6210<\/td>\n<td align=\"left\">\u6a21\u5757\u5f00\u53d1\u8005\u7f16\u5199<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u80fd\u4e0d\u80fd\u88ab\u76f4\u63a5\u8c03\u7528<\/td>\n<td align=\"left\">\u901a\u5e38\u4e0d\u80fd&#xff08;\u7531\u786c\u4ef6\u89e6\u53d1&#xff09;<\/td>\n<td align=\"left\">\u53ef\u4ee5&#xff08;\u5355\u5143\u6d4b\u8bd5\u65f6\u76f4\u63a5\u8c03\u7528&#xff09;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u5c0f\u6797&#xff1a;\u201c\u4e5f\u5c31\u662f\u8bf4&#xff0c;\u6211\u5199\u7684Eep_43_FSC_IsrCore()\u662fISR&#xff0c;\u800cEep_43_FSC_Irq.c\u91cc\u9762\u90a3\u4e2aISR(&#8230;)\u662f\u4e2d\u65ad\u5e27&#xff1f;\u201d<\/p>\n<p>\u201c\u5b8c\u5168\u6b63\u786e\u3002\u201d\u8001\u5468\u8d5e\u8bb8\u5730\u70b9\u5934&#xff0c;\u201c\u4f60\u7684\u7406\u89e3\u5df2\u7ecf\u5230\u4f4d\u4e86\u3002\u201d<\/p>\n<h4>2.2 \u4e3a\u4ec0\u4e48\u8981\u5206\u79bb&#xff1f;\u4e09\u4e2a\u538b\u5012\u6027\u7684\u7406\u7531<\/h4>\n<p>\u8001\u5468\u5728\u767d\u677f\u4e0a\u5199\u4e86\u4e09\u4e2a\u7406\u7531&#xff1a;<\/p>\n<p>\u7406\u7531\u4e00&#xff1a;\u6362OS\u4e0d\u6362\u4ee3\u7801<\/p>\n<p>#mermaid-svg-iXKX5rA8LLRv8UzD{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-iXKX5rA8LLRv8UzD .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-iXKX5rA8LLRv8UzD .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-iXKX5rA8LLRv8UzD .error-icon{fill:#552222;}#mermaid-svg-iXKX5rA8LLRv8UzD .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-iXKX5rA8LLRv8UzD .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-iXKX5rA8LLRv8UzD .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-iXKX5rA8LLRv8UzD .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-iXKX5rA8LLRv8UzD .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-iXKX5rA8LLRv8UzD .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-iXKX5rA8LLRv8UzD .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-iXKX5rA8LLRv8UzD .marker{fill:#333333;stroke:#333333;}#mermaid-svg-iXKX5rA8LLRv8UzD .marker.cross{stroke:#333333;}#mermaid-svg-iXKX5rA8LLRv8UzD svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-iXKX5rA8LLRv8UzD p{margin:0;}#mermaid-svg-iXKX5rA8LLRv8UzD .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-iXKX5rA8LLRv8UzD .cluster-label text{fill:#333;}#mermaid-svg-iXKX5rA8LLRv8UzD .cluster-label span{color:#333;}#mermaid-svg-iXKX5rA8LLRv8UzD .cluster-label span p{background-color:transparent;}#mermaid-svg-iXKX5rA8LLRv8UzD .label text,#mermaid-svg-iXKX5rA8LLRv8UzD span{fill:#333;color:#333;}#mermaid-svg-iXKX5rA8LLRv8UzD .node rect,#mermaid-svg-iXKX5rA8LLRv8UzD .node circle,#mermaid-svg-iXKX5rA8LLRv8UzD .node ellipse,#mermaid-svg-iXKX5rA8LLRv8UzD .node polygon,#mermaid-svg-iXKX5rA8LLRv8UzD .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-iXKX5rA8LLRv8UzD .rough-node .label text,#mermaid-svg-iXKX5rA8LLRv8UzD .node .label text,#mermaid-svg-iXKX5rA8LLRv8UzD .image-shape .label,#mermaid-svg-iXKX5rA8LLRv8UzD .icon-shape .label{text-anchor:middle;}#mermaid-svg-iXKX5rA8LLRv8UzD .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-iXKX5rA8LLRv8UzD .rough-node .label,#mermaid-svg-iXKX5rA8LLRv8UzD .node .label,#mermaid-svg-iXKX5rA8LLRv8UzD .image-shape .label,#mermaid-svg-iXKX5rA8LLRv8UzD .icon-shape .label{text-align:center;}#mermaid-svg-iXKX5rA8LLRv8UzD .node.clickable{cursor:pointer;}#mermaid-svg-iXKX5rA8LLRv8UzD .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-iXKX5rA8LLRv8UzD .arrowheadPath{fill:#333333;}#mermaid-svg-iXKX5rA8LLRv8UzD .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-iXKX5rA8LLRv8UzD .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-iXKX5rA8LLRv8UzD .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-iXKX5rA8LLRv8UzD .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-iXKX5rA8LLRv8UzD .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-iXKX5rA8LLRv8UzD .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-iXKX5rA8LLRv8UzD .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-iXKX5rA8LLRv8UzD .cluster text{fill:#333;}#mermaid-svg-iXKX5rA8LLRv8UzD .cluster span{color:#333;}#mermaid-svg-iXKX5rA8LLRv8UzD div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-iXKX5rA8LLRv8UzD .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-iXKX5rA8LLRv8UzD rect.text{fill:none;stroke-width:0;}#mermaid-svg-iXKX5rA8LLRv8UzD .icon-shape,#mermaid-svg-iXKX5rA8LLRv8UzD .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-iXKX5rA8LLRv8UzD .icon-shape p,#mermaid-svg-iXKX5rA8LLRv8UzD .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-iXKX5rA8LLRv8UzD .icon-shape .label rect,#mermaid-svg-iXKX5rA8LLRv8UzD .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-iXKX5rA8LLRv8UzD .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-iXKX5rA8LLRv8UzD .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-iXKX5rA8LLRv8UzD :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"nodeLabel\"><\/p>\n<p>\u66f4\u6362OS\u7684\u573a\u666f<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u9700\u8981\u4fee\u6539<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u4e0d\u9700\u8981\u4fee\u6539<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/span><span class=\"nodeLabel\"><\/p>\n<p>AUTOSAR OS&#043; IAR\u7f16\u8bd1\u5668<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>Eep_Irq.c&#xff08;\u4e2d\u65ad\u5e27&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>Eep.c&#xff08;\u4e1a\u52a1\u903b\u8f91&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>FreeRTOS&#043; GCC\u7f16\u8bd1\u5668<\/p>\n<p><\/span><\/p>\n<p>\u201c\u5047\u8bbe\u4f60\u4eceAUTOSAR OS\u6362\u5230FreeRTOS&#xff0c;\u6216\u8005\u4eceIAR\u7f16\u8bd1\u5668\u6362\u5230GCC\u7f16\u8bd1\u5668\u2014\u2014\u4e2d\u65ad\u7684\u2018\u5916\u58f3\u2019\u5199\u6cd5\u5b8c\u5168\u4e0d\u540c\u3002\u4f46\u5982\u679c\u4f60\u7684\u4e1a\u52a1\u903b\u8f91&#xff08;ISR&#xff09;\u5728Eep.c\u91cc&#xff0c;\u548c\u5916\u58f3&#xff08;Eep_Irq.c&#xff09;\u5206\u5f00\u4e86&#xff0c;\u4f60\u53ea\u9700\u8981\u91cd\u5199Eep_Irq.c&#xff0c;Eep.c\u5b8c\u5168\u4e0d\u7528\u52a8\u3002\u201d<\/p>\n<p>\u7406\u7531\u4e8c&#xff1a;\u5355\u5143\u6d4b\u8bd5\u66f4\u65b9\u4fbf<\/p>\n<p>\u201cThe service routine can be called directly during module test without the need of causing an interrupt.\u201d<\/p>\n<p>\u201c\u5982\u679c\u4f60\u7684ISR\u548c\u4e2d\u65ad\u5e27\u6df7\u5728\u4e00\u8d77&#xff0c;\u4f60\u8981\u6d4b\u8bd5ISR\u7684\u903b\u8f91&#xff0c;\u5c31\u5fc5\u987b\u89e6\u53d1\u4e00\u4e2a\u771f\u6b63\u7684\u786c\u4ef6\u4e2d\u65ad\u2014\u2014\u5728\u5f00\u53d1\u677f\u4e0a\u53ef\u4ee5&#xff0c;\u4f46\u5728\u5355\u5143\u6d4b\u8bd5\u73af\u5883&#xff08;PC\u4e0a&#xff09;\u51e0\u4e4e\u4e0d\u53ef\u80fd\u3002\u5206\u79bb\u4e4b\u540e&#xff0c;\u4f60\u53ef\u4ee5\u5728PC\u4e0a\u76f4\u63a5\u8c03\u7528Eep_IsrCore()\u51fd\u6570&#xff0c;\u4f20\u5165\u6d4b\u8bd5\u6570\u636e&#xff0c;\u9a8c\u8bc1\u903b\u8f91\u6b63\u786e\u6027\u3002\u201d<\/p>\n<p>\u7406\u7531\u4e09&#xff1a;\u7075\u6d3b\u6027<\/p>\n<p>\u201cthe interrupt could be realized as ISR frame of the operating system or implemented directly without changing the driver code.\u201d<\/p>\n<p>\u201c\u540c\u4e00\u4e2a\u9a71\u52a8&#xff0c;\u53ef\u4ee5\u914d\u7f6e\u6210\u2018OS\u7ba1\u7406\u7684\u4e2d\u65ad\u2019&#xff08;CAT2&#xff09;&#xff0c;\u4e5f\u53ef\u4ee5\u914d\u7f6e\u6210\u2018\u88f8\u673a\u4e2d\u65ad\u2019&#xff08;CAT1&#xff09;\u3002\u53ea\u9700\u8981\u6362_Irq.c&#xff0c;\u9a71\u52a8\u4ee3\u7801\u4e0d\u7528\u6539\u3002 \u8fd9\u79cd\u7075\u6d3b\u6027\u5728AUTOSAR\u591a\u5e73\u53f0\u9002\u914d\u4e2d\u975e\u5e38\u5173\u952e\u3002\u201d<\/p>\n<h4>2.3 \u6b63\u786e\u7684\u6587\u4ef6\u7ed3\u6784<\/h4>\n<p>\u8001\u5468\u753b\u51fa\u4e86\u6b63\u786e\u7684\u6587\u4ef6\u7ed3\u6784\u56fe&#xff1a;<\/p>\n<p>#mermaid-svg-lr46alHB67hLDZaI{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-lr46alHB67hLDZaI .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-lr46alHB67hLDZaI .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-lr46alHB67hLDZaI .error-icon{fill:#552222;}#mermaid-svg-lr46alHB67hLDZaI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-lr46alHB67hLDZaI .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-lr46alHB67hLDZaI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-lr46alHB67hLDZaI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-lr46alHB67hLDZaI .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-lr46alHB67hLDZaI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-lr46alHB67hLDZaI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-lr46alHB67hLDZaI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-lr46alHB67hLDZaI .marker.cross{stroke:#333333;}#mermaid-svg-lr46alHB67hLDZaI svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-lr46alHB67hLDZaI p{margin:0;}#mermaid-svg-lr46alHB67hLDZaI .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-lr46alHB67hLDZaI .cluster-label text{fill:#333;}#mermaid-svg-lr46alHB67hLDZaI .cluster-label span{color:#333;}#mermaid-svg-lr46alHB67hLDZaI .cluster-label span p{background-color:transparent;}#mermaid-svg-lr46alHB67hLDZaI .label text,#mermaid-svg-lr46alHB67hLDZaI span{fill:#333;color:#333;}#mermaid-svg-lr46alHB67hLDZaI .node rect,#mermaid-svg-lr46alHB67hLDZaI .node circle,#mermaid-svg-lr46alHB67hLDZaI .node ellipse,#mermaid-svg-lr46alHB67hLDZaI .node polygon,#mermaid-svg-lr46alHB67hLDZaI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-lr46alHB67hLDZaI .rough-node .label text,#mermaid-svg-lr46alHB67hLDZaI .node .label text,#mermaid-svg-lr46alHB67hLDZaI .image-shape .label,#mermaid-svg-lr46alHB67hLDZaI .icon-shape .label{text-anchor:middle;}#mermaid-svg-lr46alHB67hLDZaI .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-lr46alHB67hLDZaI .rough-node .label,#mermaid-svg-lr46alHB67hLDZaI .node .label,#mermaid-svg-lr46alHB67hLDZaI .image-shape .label,#mermaid-svg-lr46alHB67hLDZaI .icon-shape .label{text-align:center;}#mermaid-svg-lr46alHB67hLDZaI .node.clickable{cursor:pointer;}#mermaid-svg-lr46alHB67hLDZaI .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-lr46alHB67hLDZaI .arrowheadPath{fill:#333333;}#mermaid-svg-lr46alHB67hLDZaI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-lr46alHB67hLDZaI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-lr46alHB67hLDZaI .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-lr46alHB67hLDZaI .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-lr46alHB67hLDZaI .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-lr46alHB67hLDZaI .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-lr46alHB67hLDZaI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-lr46alHB67hLDZaI .cluster text{fill:#333;}#mermaid-svg-lr46alHB67hLDZaI .cluster span{color:#333;}#mermaid-svg-lr46alHB67hLDZaI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-lr46alHB67hLDZaI .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-lr46alHB67hLDZaI rect.text{fill:none;stroke-width:0;}#mermaid-svg-lr46alHB67hLDZaI .icon-shape,#mermaid-svg-lr46alHB67hLDZaI .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-lr46alHB67hLDZaI .icon-shape p,#mermaid-svg-lr46alHB67hLDZaI .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-lr46alHB67hLDZaI .icon-shape .label rect,#mermaid-svg-lr46alHB67hLDZaI .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-lr46alHB67hLDZaI .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-lr46alHB67hLDZaI .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-lr46alHB67hLDZaI :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"nodeLabel\"><\/p>\n<p>\u6587\u4ef6: Eep_43_FSC.c &#8211; \u5e73\u53f0\u72ec\u7acb<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u6587\u4ef6: Eep_43_FSC_Irq.c &#8211; \u5e73\u53f0\u4f9d\u8d56<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u786c\u4ef6\u5c42<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u53ef\u88ab\u5355\u5143\u6d4b\u8bd5\u76f4\u63a5\u8c03\u7528<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u786c\u4ef6\u4e2d\u65ad\u4fe1\u53f7<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>ISR Frame&#xff08;OS\/\u7f16\u8bd1\u5668\u76f8\u5173\u7684\u5916\u58f3&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>1. \u4fdd\u5b58\u4e0a\u4e0b\u6587&#xff08;\u5bc4\u5b58\u5668\/PC\/PSW&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>2. \u8c03\u7528Eep_43_FSC_IsrCore()<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>3. \u6062\u590d\u4e0a\u4e0b\u6587\u5e76\u4e2d\u65ad\u8fd4\u56de<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>Eep_43_FSC_IsrCore()&#xff08;\u7eaf\u4e1a\u52a1\u903b\u8f91&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5355\u5143\u6d4b\u8bd5<\/p>\n<p><\/span><\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u6ce8\u610f\u4f9d\u8d56\u65b9\u5411&#xff1a;Eep_43_FSC_Irq.c\u5305\u542bEep_43_FSC.h&#xff08;\u83b7\u53d6Eep_43_FSC_IsrCore()\u7684\u58f0\u660e&#xff09;\u3002Eep_43_FSC.c\u5305\u542bEep_43_FSC.h&#xff08;\u5b9e\u73b0\u81ea\u5df1\u7684\u51fd\u6570&#xff09;\u3002Eep_43_FSC.c\u4e0d\u4f9d\u8d56Eep_43_FSC_Irq.c\u2014\u2014\u4f9d\u8d56\u662f\u5355\u5411\u7684&#xff0c;\u6c38\u8fdc\u4e0d\u4f1a\u5faa\u73af\u3002\u201d<\/p>\n<h4>2.4 \u4ee3\u7801\u793a\u4f8b<\/h4>\n<p>\u8001\u5468\u5c55\u793a\u4e86\u4e09\u4efd\u5b8c\u6574\u7684\u4ee3\u7801&#xff1a;<\/p>\n<p>\u6587\u4ef6&#xff1a;Eep_43_FSC.h&#xff08;\u58f0\u660e\u2014\u2014\u5e73\u53f0\u72ec\u7acb&#xff09;<\/p>\n<p><span class=\"token comment\">\/**<br \/>\n * &#064;file    Eep_43_FSC.h<br \/>\n * &#064;brief   EEPROM\u9a71\u52a8 &#8211; \u516c\u5171\u5934\u6587\u4ef6<br \/>\n *<br \/>\n * &#064;note<br \/>\n * &#8211; \u672c\u6587\u4ef6\u662f\u5e73\u53f0\u72ec\u7acb\u7684<br \/>\n * &#8211; \u58f0\u660eISR\u6838\u5fc3\u5904\u7406\u51fd\u6570&#xff0c;\u4f9b\u4e2d\u65ad\u5e27\u8c03\u7528<br \/>\n *\/<\/span><\/p>\n<p><span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">ifndef<\/span> <span class=\"token expression\">EEP_43_FSC_H<\/span><\/span><br \/>\n<span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">define<\/span> <span class=\"token macro-name\">EEP_43_FSC_H<\/span><\/span><\/p>\n<p><span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">include<\/span> <span class=\"token string\">&#034;Platform_Types.h&#034;<\/span><\/span><br \/>\n<span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">include<\/span> <span class=\"token string\">&#034;Compiler.h&#034;<\/span><\/span><\/p>\n<p><span class=\"token comment\">\/**<br \/>\n * &#064;brief EEPROM\u6838\u5fc3ISR\u5904\u7406\u51fd\u6570<br \/>\n *<br \/>\n * &#064;return void<br \/>\n *<br \/>\n * &#064;note<br \/>\n * &#8211; \u7eaf\u4e1a\u52a1\u903b\u8f91&#xff0c;\u4e0d\u4f9d\u8d56OS\/\u7f16\u8bd1\u5668<br \/>\n * &#8211; \u7531\u4e2d\u65ad\u5e27&#xff08;Eep_43_FSC_Irq.c&#xff09;\u8c03\u7528<br \/>\n * &#8211; \u53ef\u5728\u5355\u5143\u6d4b\u8bd5\u4e2d\u76f4\u63a5\u8c03\u7528<br \/>\n * &#8211; \u53ea\u505a\u201c\u77ed\u5e73\u5feb\u201d\u7684\u5de5\u4f5c<br \/>\n *\/<\/span><br \/>\n<span class=\"token keyword\">void<\/span> <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">void<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">endif<\/span> <span class=\"token comment\">\/* EEP_43_FSC_H *\/<\/span><\/span><\/p>\n<p>\u6587\u4ef6&#xff1a;Eep_43_FSC.c&#xff08;ISR\u6838\u5fc3\u2014\u2014\u5e73\u53f0\u72ec\u7acb&#xff09;<\/p>\n<p><span class=\"token comment\">\/**<br \/>\n * &#064;file    Eep_43_FSC.c<br \/>\n * &#064;brief   EEPROM\u9a71\u52a8\u5b9e\u73b0 &#8211; \u5e73\u53f0\u72ec\u7acb\u90e8\u5206<br \/>\n *<br \/>\n * &#064;note<br \/>\n * &#8211; \u4e0d\u5305\u542b\u4efb\u4f55OS\/\u7f16\u8bd1\u5668\u76f8\u5173\u7684\u4ee3\u7801<br \/>\n * &#8211; \u5305\u542bISR\u6838\u5fc3\u5904\u7406\u903b\u8f91<br \/>\n *\/<\/span><\/p>\n<p><span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">include<\/span> <span class=\"token string\">&#034;Eep_43_FSC.h&#034;<\/span><\/span><\/p>\n<p><span class=\"token comment\">\/* \u5185\u90e8\u72b6\u6001\u6807\u5fd7 *\/<\/span><br \/>\n<span class=\"token keyword\">static<\/span> <span class=\"token keyword\">volatile<\/span> <span class=\"token class-name\">uint8_t<\/span> g_eep_op_complete <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token comment\">\/**<br \/>\n * &#064;brief EEPROM\u6838\u5fc3ISR\u5904\u7406\u51fd\u6570<br \/>\n *<br \/>\n * &#064;note<br \/>\n * &#8211; \u53ea\u505a\u4e09\u4ef6\u4e8b&#xff1a;\u642c\u6570\u636e\u3001\u8bbe\u6807\u5fd7\u3001&#xff08;\u5728\u4efb\u52a1\u4e2d\u505a\u91cd\u6d3b&#xff09;<br \/>\n * &#8211; \u6267\u884c\u65f6\u95f4 &lt; 5\u03bcs<br \/>\n *\/<\/span><br \/>\n<span class=\"token keyword\">void<\/span> <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">void<\/span><span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token class-name\">uint8_t<\/span> status<span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 1. \u8bfb\u53d6\u786c\u4ef6\u72b6\u6001&#xff08;\u901a\u8fc7\u6807\u51c6\u5316\u63a5\u53e3&#xff09; *\/<\/span><br \/>\n    status <span class=\"token operator\">&#061;<\/span> <span class=\"token function\">Eep_Hw_GetStatus<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 2. \u5224\u65ad\u64cd\u4f5c\u662f\u5426\u5b8c\u6210 *\/<\/span><br \/>\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>status <span class=\"token operator\">&amp;<\/span> EEP_OP_COMPLETE_BIT<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n        g_eep_op_complete <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">1<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 3. \u6e05\u9664\u4e2d\u65ad\u6807\u5fd7 *\/<\/span><br \/>\n    <span class=\"token function\">Eep_Hw_ClearInterruptFlag<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u6587\u4ef6&#xff1a;Eep_43_FSC_Irq.c&#xff08;\u4e2d\u65ad\u5e27\u2014\u2014\u5e73\u53f0\u4f9d\u8d56&#xff09;<\/p>\n<p><span class=\"token comment\">\/**<br \/>\n * &#064;file    Eep_43_FSC_Irq.c<br \/>\n * &#064;brief   EEPROM\u4e2d\u65ad\u5e27 &#8211; \u5e73\u53f0\u4f9d\u8d56\u90e8\u5206<br \/>\n *<br \/>\n * &#064;note<br \/>\n * &#8211; \u672c\u6587\u4ef6\u4f9d\u8d56\u5177\u4f53\u7684OS\u548c\u7f16\u8bd1\u5668<br \/>\n * &#8211; \u5728\u6362OS\/\u7f16\u8bd1\u5668\u65f6\u9700\u8981\u91cd\u65b0\u5b9e\u73b0<br \/>\n * &#8211; \u4f7f\u7528Compiler.h\u4e2d\u7684ISR\u5b8f<br \/>\n *\/<\/span><\/p>\n<p><span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">include<\/span> <span class=\"token string\">&#034;Eep_43_FSC.h&#034;<\/span><\/span><br \/>\n<span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">include<\/span> <span class=\"token string\">&#034;Compiler.h&#034;<\/span><\/span><\/p>\n<p><span class=\"token comment\">\/**<br \/>\n * &#064;brief EEPROM\u4e2d\u65ad\u5e27&#xff08;CAT2\u793a\u4f8b&#xff09;<br \/>\n *<br \/>\n * &#064;note<br \/>\n * &#8211; \u4f7f\u7528OS\u7684ISR\u5b8f\u5b9a\u4e49<br \/>\n * &#8211; \u53ea\u505a&#xff1a;\u8c03\u7528\u6838\u5fc3ISR&#xff0c;\u7136\u540e\u5524\u9192\u4efb\u52a1<br \/>\n *\/<\/span><br \/>\n<span class=\"token function\">ISR<\/span><span class=\"token punctuation\">(<\/span>Eep_43_FSC_IsrEntry<span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token comment\">\/* 1. OS\u5df2\u81ea\u52a8\u4fdd\u5b58\u4e0a\u4e0b\u6587 *\/<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 2. \u8c03\u7528\u6838\u5fc3\u4e1a\u52a1\u903b\u8f91 *\/<\/span><br \/>\n    <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 3. \u5524\u9192\u4efb\u52a1&#xff08;CAT2\u5141\u8bb8&#xff09; *\/<\/span><br \/>\n    <span class=\"token function\">Os_SetEvent<\/span><span class=\"token punctuation\">(<\/span>EepTaskId<span class=\"token punctuation\">,<\/span> EEP_DONE_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 4. OS\u81ea\u52a8\u6062\u590d\u4e0a\u4e0b\u6587\u5e76\u8fd4\u56de *\/<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u6ce8\u610f\u770b\u4f9d\u8d56\u94fe&#xff1a;Eep_43_FSC_Irq.c\u4f9d\u8d56Eep_43_FSC.h\u3002Eep_43_FSC.c\u4e5f\u4f9d\u8d56Eep_43_FSC.h\u3002\u4f46\u4e24\u8005\u4e4b\u95f4\u6ca1\u6709\u76f4\u63a5\u4f9d\u8d56\u2014\u2014\u5b83\u4eec\u901a\u8fc7Eep_43_FSC.h\u8fd9\u4e2a\u2018\u6865\u2019\u89e3\u8026\u4e86\u3002\u201d<\/p>\n<p>\u5c0f\u6797&#xff1a;\u201c\u6240\u4ee5\u6362OS\u7684\u65f6\u5019&#xff0c;\u53ea\u9700\u8981\u6539Eep_43_FSC_Irq.c&#xff0c;\u5176\u4ed6\u4e24\u4e2a\u6587\u4ef6\u90fd\u4e0d\u52a8&#xff1f;\u201d<\/p>\n<p>\u201c\u5b8c\u5168\u6b63\u786e\u3002\u201d\u8001\u5468\u8bf4&#xff0c;\u201c\u8fd9\u5c31\u662f\u2018\u4e2d\u65ad\u5e27\u4e0eISR\u5206\u79bb\u2019\u7684\u7ec8\u6781\u4ef7\u503c\u3002\u201d<\/p>\n<h3>\u7b2c\u4e09\u7ae0&#xff1a;ISR\u7684\u4e24\u7c7b\u201c\u8eab\u4efd\u8bc1\u201d\u2014\u2014CAT1 vs. CAT2<\/h3>\n<h4>3.1 \u4e3a\u4ec0\u4e48\u9700\u8981\u4e24\u7c7b\u4e2d\u65ad&#xff1f;<\/h4>\n<p>\u8001\u5468&#xff1a;\u201cAUTOSAR OS\u5b9a\u4e49\u4e86\u4e24\u79cd\u4e2d\u65ad\u7c7b\u522b\u2014\u2014CAT1&#xff08;Category 1&#xff09; \u548c CAT2&#xff08;Category 2&#xff09;\u3002\u201d<\/p>\n<p>\u5c0f\u6797&#xff1a;\u201c\u4e3a\u4ec0\u4e48\u8981\u6709\u4e24\u79cd&#xff1f;\u4e00\u79cd\u4e0d\u591f\u5417&#xff1f;\u201d<\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u56e0\u4e3a\u4e0d\u540c\u7684\u4e2d\u65ad\u5bf9\u2018\u5ef6\u8fdf\u2019\u548c\u2018\u529f\u80fd\u2019\u7684\u8981\u6c42\u4e0d\u540c\u3002 \u6709\u4e9b\u4e2d\u65ad\u5fc5\u987b\u6781\u5feb\u54cd\u5e94&#xff0c;\u4e0d\u80fd\u6709\u4efb\u4f55\u989d\u5916\u5f00\u9500&#xff1b;\u6709\u4e9b\u4e2d\u65ad\u53ef\u4ee5\u63a5\u53d7\u4e00\u70b9\u70b9\u5ef6\u8fdf&#xff0c;\u4f46\u9700\u8981\u8c03\u7528OS\u670d\u52a1&#xff08;\u6bd4\u5982\u5524\u9192\u4efb\u52a1&#xff09;\u3002\u201d<\/p>\n<p>\u4ed6\u753b\u4e86\u4e00\u4e2a\u76f4\u89c2\u7684\u5bf9\u6bd4\u56fe&#xff1a;<\/p>\n<p>#mermaid-svg-oqaqEJppsJn7zx4f{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-oqaqEJppsJn7zx4f .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-oqaqEJppsJn7zx4f .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-oqaqEJppsJn7zx4f .error-icon{fill:#552222;}#mermaid-svg-oqaqEJppsJn7zx4f .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-oqaqEJppsJn7zx4f .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-oqaqEJppsJn7zx4f .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-oqaqEJppsJn7zx4f .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-oqaqEJppsJn7zx4f .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-oqaqEJppsJn7zx4f .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-oqaqEJppsJn7zx4f .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-oqaqEJppsJn7zx4f .marker{fill:#333333;stroke:#333333;}#mermaid-svg-oqaqEJppsJn7zx4f .marker.cross{stroke:#333333;}#mermaid-svg-oqaqEJppsJn7zx4f svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-oqaqEJppsJn7zx4f p{margin:0;}#mermaid-svg-oqaqEJppsJn7zx4f .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-oqaqEJppsJn7zx4f .cluster-label text{fill:#333;}#mermaid-svg-oqaqEJppsJn7zx4f .cluster-label span{color:#333;}#mermaid-svg-oqaqEJppsJn7zx4f .cluster-label span p{background-color:transparent;}#mermaid-svg-oqaqEJppsJn7zx4f .label text,#mermaid-svg-oqaqEJppsJn7zx4f span{fill:#333;color:#333;}#mermaid-svg-oqaqEJppsJn7zx4f .node rect,#mermaid-svg-oqaqEJppsJn7zx4f .node circle,#mermaid-svg-oqaqEJppsJn7zx4f .node ellipse,#mermaid-svg-oqaqEJppsJn7zx4f .node polygon,#mermaid-svg-oqaqEJppsJn7zx4f .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-oqaqEJppsJn7zx4f .rough-node .label text,#mermaid-svg-oqaqEJppsJn7zx4f .node .label text,#mermaid-svg-oqaqEJppsJn7zx4f .image-shape .label,#mermaid-svg-oqaqEJppsJn7zx4f .icon-shape .label{text-anchor:middle;}#mermaid-svg-oqaqEJppsJn7zx4f .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-oqaqEJppsJn7zx4f .rough-node .label,#mermaid-svg-oqaqEJppsJn7zx4f .node .label,#mermaid-svg-oqaqEJppsJn7zx4f .image-shape .label,#mermaid-svg-oqaqEJppsJn7zx4f .icon-shape .label{text-align:center;}#mermaid-svg-oqaqEJppsJn7zx4f .node.clickable{cursor:pointer;}#mermaid-svg-oqaqEJppsJn7zx4f .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-oqaqEJppsJn7zx4f .arrowheadPath{fill:#333333;}#mermaid-svg-oqaqEJppsJn7zx4f .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-oqaqEJppsJn7zx4f .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-oqaqEJppsJn7zx4f .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-oqaqEJppsJn7zx4f .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-oqaqEJppsJn7zx4f .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-oqaqEJppsJn7zx4f .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-oqaqEJppsJn7zx4f .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-oqaqEJppsJn7zx4f .cluster text{fill:#333;}#mermaid-svg-oqaqEJppsJn7zx4f .cluster span{color:#333;}#mermaid-svg-oqaqEJppsJn7zx4f div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-oqaqEJppsJn7zx4f .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-oqaqEJppsJn7zx4f rect.text{fill:none;stroke-width:0;}#mermaid-svg-oqaqEJppsJn7zx4f .icon-shape,#mermaid-svg-oqaqEJppsJn7zx4f .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-oqaqEJppsJn7zx4f .icon-shape p,#mermaid-svg-oqaqEJppsJn7zx4f .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-oqaqEJppsJn7zx4f .icon-shape .label rect,#mermaid-svg-oqaqEJppsJn7zx4f .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-oqaqEJppsJn7zx4f .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-oqaqEJppsJn7zx4f .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-oqaqEJppsJn7zx4f :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"nodeLabel\"><\/p>\n<p>CAT2\u4e2d\u65ad\u2014\u2014\u529f\u80fd\u5b8c\u6574<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u786c\u4ef6\u89e6\u53d1<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>OS\u4ecb\u5165\u4fdd\u5b58\u4e0a\u4e0b\u6587<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>ISR\u5904\u7406\u53ef\u8c03OS API<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5524\u9192\u4efb\u52a1<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u8fd4\u56de<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5ef6\u8fdf&#xff1a;\u7565\u9ad8\u53ef\u8c03\u6709\u9650OS API<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CAT1\u4e2d\u65ad\u2014\u2014\u6781\u81f4\u6027\u80fd<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u786c\u4ef6\u89e6\u53d1<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u7eafC\u5904\u7406\u65e0OS\u4ecb\u5165<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u7acb\u5373\u8fd4\u56de<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5ef6\u8fdf&#xff1a;&lt;1\u03bcs\u4e0d\u80fd\u8c03OS\u4e0d\u80fd\u963b\u585e<\/p>\n<p><\/span><\/p>\n<h4>3.2 CAT1 vs. CAT2 \u7684\u8be6\u7ec6\u5bf9\u6bd4<\/h4>\n<p>\u8001\u5468\u753b\u4e86\u4e00\u5f20\u8be6\u7ec6\u7684\u5bf9\u6bd4\u8868&#xff1a;<\/p>\n<table>\n<tr>\u7ef4\u5ea6CAT1&#xff08;\u4e00\u7c7b\u4e2d\u65ad&#xff09;CAT2&#xff08;\u4e8c\u7c7b\u4e2d\u65ad&#xff09;<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">OS\u7ba1\u7406<\/td>\n<td align=\"left\">\u274c \u4e0d\u7531OS\u7ba1\u7406<\/td>\n<td align=\"left\">\u2705 \u7531OS\u7ba1\u7406<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u80fd\u8c03\u7528OS API\u5417&#xff1f;<\/td>\n<td align=\"left\">\u274c \u7edd\u5bf9\u4e0d\u80fd<\/td>\n<td align=\"left\">\u2705 \u53ef\u4ee5&#xff08;\u6709\u9650\u5236&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u4e2d\u65ad\u5ef6\u8fdf<\/td>\n<td align=\"left\">\u6781\u4f4e&#xff08;\u786c\u4ef6\u76f4\u63a5\u54cd\u5e94&#xff09;<\/td>\n<td align=\"left\">\u7565\u9ad8&#xff08;OS\u9700\u8981\u5904\u7406&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u5178\u578b\u7528\u9014<\/td>\n<td align=\"left\">\u6781\u4f4e\u5ef6\u8fdf\u3001\u65f6\u95f4\u5173\u952e\u7684\u4e2d\u65ad<\/td>\n<td align=\"left\">\u5927\u591a\u6570\u5916\u8bbe\u4e2d\u65ad<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u4e0a\u4e0b\u6587\u5207\u6362<\/td>\n<td align=\"left\">\u65e0<\/td>\n<td align=\"left\">OS\u53ef\u4ee5\u89e6\u53d1\u4efb\u52a1\u8c03\u5ea6<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u5b9e\u73b0\u590d\u6742\u5ea6<\/td>\n<td align=\"left\">\u4f4e&#xff08;\u7eaf\u786c\u4ef6&#xff09;<\/td>\n<td align=\"left\">\u4e2d&#xff08;\u9700\u8981OS\u652f\u6301&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u8c03\u8bd5\u96be\u5ea6<\/td>\n<td align=\"left\">\u9ad8<\/td>\n<td align=\"left\">\u4e2d<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>SWS_BSW_00065 \u89c4\u5b9a&#xff1a;<\/p>\n<p>\u201cIf the BSW Module implements Interrupt service routines (ISR), then the implementation shall at least support interrupt category CAT2.\u201d<\/p>\n<p>\u8001\u5468&#xff1a;\u201cMCAL\u9a71\u52a8\u81f3\u5c11\u8981\u652f\u6301CAT2&#xff0c;\u56e0\u4e3a\u9a71\u52a8\u7ecf\u5e38\u9700\u8981\u901a\u8fc7OS API\u6765\u5524\u9192\u4efb\u52a1\u3002\u4f46\u5982\u679c\u67d0\u4e2a\u4e2d\u65ad\u5bf9\u5ef6\u8fdf\u6781\u5176\u654f\u611f&#xff0c;\u4e5f\u53ef\u4ee5\u914d\u7f6e\u6210CAT1\u3002\u201d<\/p>\n<h4>3.3 CAT1\u4e2d\u65ad\u7684\u201c\u7981\u533a\u6e05\u5355\u201d<\/h4>\n<p>\u8001\u5468\u5f3a\u8c03&#xff1a;\u201cCAT1\u4e2d\u65ad\u91cc\u7edd\u5bf9\u4e0d\u80fd\u8c03\u7528\u4efb\u4f55OS API&#xff01;\u201d<\/p>\n<p>\u4ed6\u5217\u4e86\u4e00\u4e2a\u201cCAT1\u7981\u533a\u6e05\u5355\u201d&#xff1a;<\/p>\n<table>\n<tr>\u7981\u6b62\u7684\u64cd\u4f5c\u539f\u56e0<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">ActivateTask()<\/td>\n<td align=\"left\">\u4efb\u52a1\u7ba1\u7406\u9700\u8981OS\u4ecb\u5165<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">SetEvent()<\/td>\n<td align=\"left\">\u4e8b\u4ef6\u673a\u5236\u4f9d\u8d56OS\u8c03\u5ea6<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">GetResource()<\/td>\n<td align=\"left\">\u8d44\u6e90\u7ba1\u7406\u9700\u8981OS\u534f\u8c03<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">Schedule()<\/td>\n<td align=\"left\">\u8c03\u5ea6\u5668\u5728CAT1\u4e2d\u4e0d\u53ef\u7528<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">GetTaskID()<\/td>\n<td align=\"left\">\u4efb\u52a1ID\u67e5\u8be2\u9700\u8981OS\u4e0a\u4e0b\u6587<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">WaitEvent()<\/td>\n<td align=\"left\">\u5728\u4e2d\u65ad\u4e2d\u7b49\u5f85\u4e8b\u4ef6\u662f\u707e\u96be\u6027\u7684<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">GetAlarm()<\/td>\n<td align=\"left\">\u5b9a\u65f6\u5668\u7ba1\u7406\u9700\u8981OS<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u8001\u5468&#xff1a;\u201cCAT1\u4e2d\u65ad\u662f\u2018\u88f8\u5954\u2019\u7684\u2014\u2014\u5b83\u4e0d\u548cOS\u6709\u4efb\u4f55\u4ea4\u4e92\u3002 \u5b83\u53ea\u505a\u6700\u7eaf\u7cb9\u7684\u5de5\u4f5c&#xff1a;\u8bfb\u786c\u4ef6\u5bc4\u5b58\u5668\u3001\u5199\u786c\u4ef6\u5bc4\u5b58\u5668\u3001\u8bbe\u7f6e\u4e00\u4e2a\u5168\u5c40\u6807\u5fd7\u4f4d\u3002\u7136\u540e\u7acb\u5373\u8fd4\u56de\u3002\u201d<\/p>\n<h4>3.4 CAT2\u4e2d\u65ad\u7684\u201c\u7279\u6743\u6e05\u5355\u201d<\/h4>\n<p>\u8001\u5468&#xff1a;\u201cCAT2\u4e2d\u65ad\u53ef\u4ee5\u8c03\u7528\u6709\u9650\u7684OS API\u3002\u201d<\/p>\n<table>\n<tr>\u5141\u8bb8\u7684\u64cd\u4f5c\u8bf4\u660e<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">ActivateTask()<\/td>\n<td align=\"left\">\u6fc0\u6d3b\u4e00\u4e2a\u4efb\u52a1<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">SetEvent()<\/td>\n<td align=\"left\">\u8bbe\u7f6e\u4e00\u4e2a\u4e8b\u4ef6<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">Schedule()<\/td>\n<td align=\"left\">\u8bf7\u6c42\u8c03\u5ea6<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">GetResource() \/ ReleaseResource()<\/td>\n<td align=\"left\">\u83b7\u53d6\/\u91ca\u653e\u8d44\u6e90<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">GetTaskID()<\/td>\n<td align=\"left\">\u83b7\u53d6\u5f53\u524d\u4efb\u52a1ID<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u201c\u4f46\u8981\u6ce8\u610f\u2014\u2014\u201d\u8001\u5468\u8865\u5145&#xff0c;\u201c\u5373\u4f7fCAT2\u53ef\u4ee5\u8c03\u7528OS API&#xff0c;\u4e5f\u8981\u6781\u5176\u514b\u5236\u3002 \u5728\u4e2d\u65ad\u91cc\u8c03\u7528ActivateTask()\u662fOK\u7684&#xff0c;\u4f46\u5982\u679c\u8c03\u7528WaitEvent()\u2014\u2014\u90a3\u5c31\u5b8c\u4e86&#xff0c;\u4e2d\u65ad\u4f1a\u963b\u585e&#xff0c;\u7cfb\u7edf\u76f4\u63a5\u5d29\u6e83\u3002\u201d<\/p>\n<h4>3.5 \u914d\u7f6e\u65f6\u5982\u4f55\u9009\u62e9&#xff1f;<\/h4>\n<p>\u8001\u5468\u753b\u4e86\u4e00\u4e2a\u51b3\u7b56\u6811&#xff1a;<\/p>\n<p>#mermaid-svg-42h9LefzRzGBgeKx{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-42h9LefzRzGBgeKx .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-42h9LefzRzGBgeKx .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-42h9LefzRzGBgeKx .error-icon{fill:#552222;}#mermaid-svg-42h9LefzRzGBgeKx .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-42h9LefzRzGBgeKx .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-42h9LefzRzGBgeKx .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-42h9LefzRzGBgeKx .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-42h9LefzRzGBgeKx .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-42h9LefzRzGBgeKx .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-42h9LefzRzGBgeKx .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-42h9LefzRzGBgeKx .marker{fill:#333333;stroke:#333333;}#mermaid-svg-42h9LefzRzGBgeKx .marker.cross{stroke:#333333;}#mermaid-svg-42h9LefzRzGBgeKx svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-42h9LefzRzGBgeKx p{margin:0;}#mermaid-svg-42h9LefzRzGBgeKx .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-42h9LefzRzGBgeKx .cluster-label text{fill:#333;}#mermaid-svg-42h9LefzRzGBgeKx .cluster-label span{color:#333;}#mermaid-svg-42h9LefzRzGBgeKx .cluster-label span p{background-color:transparent;}#mermaid-svg-42h9LefzRzGBgeKx .label text,#mermaid-svg-42h9LefzRzGBgeKx span{fill:#333;color:#333;}#mermaid-svg-42h9LefzRzGBgeKx .node rect,#mermaid-svg-42h9LefzRzGBgeKx .node circle,#mermaid-svg-42h9LefzRzGBgeKx .node ellipse,#mermaid-svg-42h9LefzRzGBgeKx .node polygon,#mermaid-svg-42h9LefzRzGBgeKx .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-42h9LefzRzGBgeKx .rough-node .label text,#mermaid-svg-42h9LefzRzGBgeKx .node .label text,#mermaid-svg-42h9LefzRzGBgeKx .image-shape .label,#mermaid-svg-42h9LefzRzGBgeKx .icon-shape .label{text-anchor:middle;}#mermaid-svg-42h9LefzRzGBgeKx .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-42h9LefzRzGBgeKx .rough-node .label,#mermaid-svg-42h9LefzRzGBgeKx .node .label,#mermaid-svg-42h9LefzRzGBgeKx .image-shape .label,#mermaid-svg-42h9LefzRzGBgeKx .icon-shape .label{text-align:center;}#mermaid-svg-42h9LefzRzGBgeKx .node.clickable{cursor:pointer;}#mermaid-svg-42h9LefzRzGBgeKx .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-42h9LefzRzGBgeKx .arrowheadPath{fill:#333333;}#mermaid-svg-42h9LefzRzGBgeKx .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-42h9LefzRzGBgeKx .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-42h9LefzRzGBgeKx .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-42h9LefzRzGBgeKx .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-42h9LefzRzGBgeKx .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-42h9LefzRzGBgeKx .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-42h9LefzRzGBgeKx .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-42h9LefzRzGBgeKx .cluster text{fill:#333;}#mermaid-svg-42h9LefzRzGBgeKx .cluster span{color:#333;}#mermaid-svg-42h9LefzRzGBgeKx div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-42h9LefzRzGBgeKx .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-42h9LefzRzGBgeKx rect.text{fill:none;stroke-width:0;}#mermaid-svg-42h9LefzRzGBgeKx .icon-shape,#mermaid-svg-42h9LefzRzGBgeKx .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-42h9LefzRzGBgeKx .icon-shape p,#mermaid-svg-42h9LefzRzGBgeKx .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-42h9LefzRzGBgeKx .icon-shape .label rect,#mermaid-svg-42h9LefzRzGBgeKx .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-42h9LefzRzGBgeKx .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-42h9LefzRzGBgeKx .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-42h9LefzRzGBgeKx :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u4e0d\u9700\u8981<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u9700\u8981<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u662f<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u5426<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u4e2d\u65ad\u9700\u8981\u5206\u7c7b<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u9700\u8981\u5728\u4e2d\u65ad\u4e2d\u5524\u9192\u4efb\u52a1\u5417&#xff1f;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CAT1\u6781\u4f4e\u5ef6\u8fdf<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5bf9\u5ef6\u8fdf\u6781\u5ea6\u654f\u611f\u5417&#xff1f;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CAT1 &#043; \u5168\u5c40\u6807\u5fd7&#xff08;\u4efb\u52a1\u8f6e\u8be2\u6807\u5fd7&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CAT2OS\u7ba1\u7406<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5178\u578b&#xff1a;\u7d27\u6025\u5239\u8f66\u4fe1\u53f7\u770b\u95e8\u72d7\u590d\u4f4d\u9ad8\u901fADC\u91c7\u6837<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5178\u578b&#xff1a;CAN\u63a5\u6536EEPROM\u5b8c\u6210\u5b9a\u65f6\u5668\u4e2d\u65ad<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5178\u578b&#xff1a;\u8d85\u7ea7\u654f\u611f\u7684\u63a7\u5236\u56de\u8def&#043;\u540e\u53f0\u72b6\u6001\u5904\u7406<\/p>\n<p><\/span><\/p>\n<p>SWS_BSW_00068 \u89c4\u5b9a&#xff1a;<\/p>\n<p>\u201cIf the BSW Module implements Interrupt Service Routines (ISR) and provides declarations for both interrupt categories CAT1 and CAT2, then the interrupt category shall be selectable via configuration.\u201d<\/p>\n<p>\u201c\u540c\u4e00\u4e2a\u9a71\u52a8\u53ef\u4ee5\u540c\u65f6\u652f\u6301CAT1\u548cCAT2&#xff0c;\u901a\u8fc7\u914d\u7f6e\u5f00\u5173\u6765\u9009\u62e9\u3002 \u6bd4\u5982\u5728\u5f00\u53d1\u9636\u6bb5\u7528CAT2\u65b9\u4fbf\u8c03\u8bd5&#xff0c;\u91cf\u4ea7\u9636\u6bb5\u4e3a\u4e86\u6781\u81f4\u6027\u80fd\u5207\u5230CAT1\u3002\u201d<\/p>\n<h3>\u7b2c\u56db\u7ae0&#xff1a;ISR\u5fc5\u987b\u201c\u77ed\u5e73\u5feb\u201d\u2014\u2014\u201c\u6025\u8bca\u5ba4\u201d\u7684\u89c4\u77e9<\/h3>\n<h4>4.1 \u6025\u8bca\u5ba4\u7684\u6bd4\u55bb<\/h4>\n<p>\u8001\u5468\u56de\u5230\u767d\u677f\u524d&#xff1a;\u201c\u8fd8\u8bb0\u5f97\u6211\u4e00\u5f00\u59cb\u8bf4\u7684\u2018\u6025\u8bca\u5ba4\u2019\u6bd4\u55bb\u5417&#xff1f;ISR\u5c31\u662f\u6025\u8bca\u5ba4&#xff0c;\u4efb\u52a1\u5c31\u662f\u666e\u901a\u95e8\u8bca\u3002\u201d<\/p>\n<p>#mermaid-svg-6GAQ3YHEdBR91NWI{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-6GAQ3YHEdBR91NWI .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-6GAQ3YHEdBR91NWI .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-6GAQ3YHEdBR91NWI .error-icon{fill:#552222;}#mermaid-svg-6GAQ3YHEdBR91NWI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-6GAQ3YHEdBR91NWI .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-6GAQ3YHEdBR91NWI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-6GAQ3YHEdBR91NWI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-6GAQ3YHEdBR91NWI .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-6GAQ3YHEdBR91NWI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-6GAQ3YHEdBR91NWI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-6GAQ3YHEdBR91NWI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-6GAQ3YHEdBR91NWI .marker.cross{stroke:#333333;}#mermaid-svg-6GAQ3YHEdBR91NWI svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-6GAQ3YHEdBR91NWI p{margin:0;}#mermaid-svg-6GAQ3YHEdBR91NWI .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-6GAQ3YHEdBR91NWI .cluster-label text{fill:#333;}#mermaid-svg-6GAQ3YHEdBR91NWI .cluster-label span{color:#333;}#mermaid-svg-6GAQ3YHEdBR91NWI .cluster-label span p{background-color:transparent;}#mermaid-svg-6GAQ3YHEdBR91NWI .label text,#mermaid-svg-6GAQ3YHEdBR91NWI span{fill:#333;color:#333;}#mermaid-svg-6GAQ3YHEdBR91NWI .node rect,#mermaid-svg-6GAQ3YHEdBR91NWI .node circle,#mermaid-svg-6GAQ3YHEdBR91NWI .node ellipse,#mermaid-svg-6GAQ3YHEdBR91NWI .node polygon,#mermaid-svg-6GAQ3YHEdBR91NWI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-6GAQ3YHEdBR91NWI .rough-node .label text,#mermaid-svg-6GAQ3YHEdBR91NWI .node .label text,#mermaid-svg-6GAQ3YHEdBR91NWI .image-shape .label,#mermaid-svg-6GAQ3YHEdBR91NWI .icon-shape .label{text-anchor:middle;}#mermaid-svg-6GAQ3YHEdBR91NWI .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-6GAQ3YHEdBR91NWI .rough-node .label,#mermaid-svg-6GAQ3YHEdBR91NWI .node .label,#mermaid-svg-6GAQ3YHEdBR91NWI .image-shape .label,#mermaid-svg-6GAQ3YHEdBR91NWI .icon-shape .label{text-align:center;}#mermaid-svg-6GAQ3YHEdBR91NWI .node.clickable{cursor:pointer;}#mermaid-svg-6GAQ3YHEdBR91NWI .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-6GAQ3YHEdBR91NWI .arrowheadPath{fill:#333333;}#mermaid-svg-6GAQ3YHEdBR91NWI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-6GAQ3YHEdBR91NWI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-6GAQ3YHEdBR91NWI .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-6GAQ3YHEdBR91NWI .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-6GAQ3YHEdBR91NWI .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-6GAQ3YHEdBR91NWI .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-6GAQ3YHEdBR91NWI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-6GAQ3YHEdBR91NWI .cluster text{fill:#333;}#mermaid-svg-6GAQ3YHEdBR91NWI .cluster span{color:#333;}#mermaid-svg-6GAQ3YHEdBR91NWI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-6GAQ3YHEdBR91NWI .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-6GAQ3YHEdBR91NWI rect.text{fill:none;stroke-width:0;}#mermaid-svg-6GAQ3YHEdBR91NWI .icon-shape,#mermaid-svg-6GAQ3YHEdBR91NWI .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-6GAQ3YHEdBR91NWI .icon-shape p,#mermaid-svg-6GAQ3YHEdBR91NWI .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-6GAQ3YHEdBR91NWI .icon-shape .label rect,#mermaid-svg-6GAQ3YHEdBR91NWI .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-6GAQ3YHEdBR91NWI .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-6GAQ3YHEdBR91NWI .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-6GAQ3YHEdBR91NWI :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"nodeLabel\"><\/p>\n<p>\u666e\u901a\u95e8\u8bca&#xff08;\u4efb\u52a1\u4e0a\u4e0b\u6587&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u6025\u8bca\u5ba4&#xff08;ISR\u4e0a\u4e0b\u6587&#xff09;<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/p>\n<p>\u7a33\u5b9a\u540e\u8f6c\u8bca<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u53ea\u80fd\u505a&#xff1a;\u6b62\u8840\u3001\u5305\u624e\u3001\u7a33\u5b9a\u751f\u547d\u4f53\u5f81<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u4e0d\u80fd\u505a&#xff1a;\u590d\u6742\u624b\u672f\u3001\u957f\u671f\u89c2\u5bdf\u3001\u5b89\u6392\u4f4f\u9662<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u65f6\u95f4&#xff1a;\u5fc5\u987b\u6781\u77ed&#xff01;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u53ef\u4ee5\u505a&#xff1a;\u590d\u6742\u8bca\u65ad\u3001\u957f\u671f\u6cbb\u7597\u3001\u624b\u672f<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u65f6\u95f4&#xff1a;\u53ef\u4ee5\u957f<\/p>\n<p><\/span><\/p>\n<p>\u8001\u5468&#xff1a;\u201cISR\u91cc\u4e0d\u80fd\u505a\u8017\u65f6\u64cd\u4f5c&#xff0c;\u5426\u5219\u4f1a\u963b\u585e\u5176\u4ed6\u4e2d\u65ad&#xff0c;\u5bfc\u81f4\u7cfb\u7edf\u54cd\u5e94\u53d8\u6162\u751a\u81f3\u5d29\u6e83\u3002 \u8fd9\u4e2a\u89c4\u5219\u7684\u4e25\u683c\u7a0b\u5ea6&#xff0c;\u5728\u6c7d\u8f66\u5b89\u5168\u5173\u952e\u7cfb\u7edf\u4e2d\u751a\u81f3\u88ab\u5199\u5165\u529f\u80fd\u5b89\u5168\u8981\u6c42&#xff08;ISO 26262&#xff09;\u3002\u201d<\/p>\n<h4>4.2 \u89c4\u8303\u600e\u4e48\u8bf4&#xff1f;<\/h4>\n<p>SWS_BSW_00167 \u89c4\u5b9a&#xff1a;<\/p>\n<p>\u201cThe runtime of Interrupt Service Routines (ISR) and functions that are running in interrupt context should be kept short.\u201d<\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u2018should be kept short\u2019\u2014\u2014\u8fd9\u4e0d\u662f\u5efa\u8bae&#xff0c;\u8fd9\u662f\u5f3a\u5236\u8981\u6c42\u3002 \u5982\u679c\u4e00\u4e2aISR\u53ef\u80fd\u8017\u65f6\u8f83\u957f&#xff0c;\u89c4\u8303\u660e\u786e\u5efa\u8bae\u7528OS\u4efb\u52a1\u4ee3\u66ff&#xff1a;\u201d<\/p>\n<p>\u201cWhere an ISR is likely to take a long time, an Operating System task should be used instead.\u201d<\/p>\n<h4>4.3 \u5728ISR\u91cc\u505a\u8017\u65f6\u64cd\u4f5c\u7684\u201c\u6050\u6016\u540e\u679c\u201d<\/h4>\n<p>\u8001\u5468\u753b\u4e86\u4e00\u5f20\u201c\u6050\u6016\u540e\u679c\u94fe\u201d&#xff1a;<\/p>\n<p>#mermaid-svg-C8CCtYzM1sL6yGvy{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-C8CCtYzM1sL6yGvy .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-C8CCtYzM1sL6yGvy .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-C8CCtYzM1sL6yGvy .error-icon{fill:#552222;}#mermaid-svg-C8CCtYzM1sL6yGvy .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-C8CCtYzM1sL6yGvy .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-C8CCtYzM1sL6yGvy .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-C8CCtYzM1sL6yGvy .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-C8CCtYzM1sL6yGvy .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-C8CCtYzM1sL6yGvy .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-C8CCtYzM1sL6yGvy .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-C8CCtYzM1sL6yGvy .marker{fill:#333333;stroke:#333333;}#mermaid-svg-C8CCtYzM1sL6yGvy .marker.cross{stroke:#333333;}#mermaid-svg-C8CCtYzM1sL6yGvy svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-C8CCtYzM1sL6yGvy p{margin:0;}#mermaid-svg-C8CCtYzM1sL6yGvy .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-C8CCtYzM1sL6yGvy .cluster-label text{fill:#333;}#mermaid-svg-C8CCtYzM1sL6yGvy .cluster-label span{color:#333;}#mermaid-svg-C8CCtYzM1sL6yGvy .cluster-label span p{background-color:transparent;}#mermaid-svg-C8CCtYzM1sL6yGvy .label text,#mermaid-svg-C8CCtYzM1sL6yGvy span{fill:#333;color:#333;}#mermaid-svg-C8CCtYzM1sL6yGvy .node rect,#mermaid-svg-C8CCtYzM1sL6yGvy .node circle,#mermaid-svg-C8CCtYzM1sL6yGvy .node ellipse,#mermaid-svg-C8CCtYzM1sL6yGvy .node polygon,#mermaid-svg-C8CCtYzM1sL6yGvy .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-C8CCtYzM1sL6yGvy .rough-node .label text,#mermaid-svg-C8CCtYzM1sL6yGvy .node .label text,#mermaid-svg-C8CCtYzM1sL6yGvy .image-shape .label,#mermaid-svg-C8CCtYzM1sL6yGvy .icon-shape .label{text-anchor:middle;}#mermaid-svg-C8CCtYzM1sL6yGvy .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-C8CCtYzM1sL6yGvy .rough-node .label,#mermaid-svg-C8CCtYzM1sL6yGvy .node .label,#mermaid-svg-C8CCtYzM1sL6yGvy .image-shape .label,#mermaid-svg-C8CCtYzM1sL6yGvy .icon-shape .label{text-align:center;}#mermaid-svg-C8CCtYzM1sL6yGvy .node.clickable{cursor:pointer;}#mermaid-svg-C8CCtYzM1sL6yGvy .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-C8CCtYzM1sL6yGvy .arrowheadPath{fill:#333333;}#mermaid-svg-C8CCtYzM1sL6yGvy .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-C8CCtYzM1sL6yGvy .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-C8CCtYzM1sL6yGvy .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-C8CCtYzM1sL6yGvy .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-C8CCtYzM1sL6yGvy .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-C8CCtYzM1sL6yGvy .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-C8CCtYzM1sL6yGvy .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-C8CCtYzM1sL6yGvy .cluster text{fill:#333;}#mermaid-svg-C8CCtYzM1sL6yGvy .cluster span{color:#333;}#mermaid-svg-C8CCtYzM1sL6yGvy div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-C8CCtYzM1sL6yGvy .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-C8CCtYzM1sL6yGvy rect.text{fill:none;stroke-width:0;}#mermaid-svg-C8CCtYzM1sL6yGvy .icon-shape,#mermaid-svg-C8CCtYzM1sL6yGvy .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-C8CCtYzM1sL6yGvy .icon-shape p,#mermaid-svg-C8CCtYzM1sL6yGvy .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-C8CCtYzM1sL6yGvy .icon-shape .label rect,#mermaid-svg-C8CCtYzM1sL6yGvy .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-C8CCtYzM1sL6yGvy .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-C8CCtYzM1sL6yGvy .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-C8CCtYzM1sL6yGvy :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"nodeLabel\"><\/p>\n<p>\u5728ISR\u91cc\u505a\u8017\u65f6\u64cd\u4f5c\u7684\u540e\u679c\u94fe<\/p>\n<p><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"nodeLabel\"><\/p>\n<p>ISR\u5f00\u59cb\u6267\u884c<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u6267\u884c\u8017\u65f6\u64cd\u4f5c&#xff08;\u590d\u6742\u7b97\u6cd5\/\u6162\u901fI\/O\/printf&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u5176\u4ed6\u4e2d\u65ad\u88ab\u963b\u585e&#xff08;\u540c\u7ea7\u6216\u4f4e\u4f18\u5148\u7ea7&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>CAN\u62a5\u6587\u4e22\u5931<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>PWM\u4fe1\u53f7\u5931\u771f<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u770b\u95e8\u72d7\u8d85\u65f6<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u8f66\u8f86\u901a\u4fe1\u6545\u969c<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u4e25\u91cd\u5b89\u5168\u98ce\u9669&#xff01;<\/p>\n<p><\/span><\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u4e00\u4e2a10ms\u7684ISR&#xff0c;\u5c31\u53ef\u80fd\u8ba9\u6574\u8f66\u7684CAN\u901a\u4fe1\u762b\u75ea\u3002 \u56e0\u4e3aCAN\u63a5\u6536\u4e2d\u65ad\u4e5f\u662f\u4e2d\u65ad&#xff0c;\u5982\u679c\u88ab\u963b\u585e\u4e86&#xff0c;\u62a5\u6587\u5c31\u4e22\u5931\u4e86\u3002\u201d<\/p>\n<h4>4.4 ISR\u7684\u201c\u4e09\u4ef6\u4e8b\u201d\u539f\u5219<\/h4>\n<p>\u8001\u5468\u5728\u767d\u677f\u4e0a\u5199\u4e0b&#xff1a;<\/p>\n<p>#mermaid-svg-mOC3rij3GdoGngvP{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-mOC3rij3GdoGngvP .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-mOC3rij3GdoGngvP .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-mOC3rij3GdoGngvP .error-icon{fill:#552222;}#mermaid-svg-mOC3rij3GdoGngvP .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-mOC3rij3GdoGngvP .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-mOC3rij3GdoGngvP .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-mOC3rij3GdoGngvP .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-mOC3rij3GdoGngvP .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-mOC3rij3GdoGngvP .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-mOC3rij3GdoGngvP .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-mOC3rij3GdoGngvP .marker{fill:#333333;stroke:#333333;}#mermaid-svg-mOC3rij3GdoGngvP .marker.cross{stroke:#333333;}#mermaid-svg-mOC3rij3GdoGngvP svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-mOC3rij3GdoGngvP p{margin:0;}#mermaid-svg-mOC3rij3GdoGngvP .label{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;color:#333;}#mermaid-svg-mOC3rij3GdoGngvP .cluster-label text{fill:#333;}#mermaid-svg-mOC3rij3GdoGngvP .cluster-label span{color:#333;}#mermaid-svg-mOC3rij3GdoGngvP .cluster-label span p{background-color:transparent;}#mermaid-svg-mOC3rij3GdoGngvP .label text,#mermaid-svg-mOC3rij3GdoGngvP span{fill:#333;color:#333;}#mermaid-svg-mOC3rij3GdoGngvP .node rect,#mermaid-svg-mOC3rij3GdoGngvP .node circle,#mermaid-svg-mOC3rij3GdoGngvP .node ellipse,#mermaid-svg-mOC3rij3GdoGngvP .node polygon,#mermaid-svg-mOC3rij3GdoGngvP .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-mOC3rij3GdoGngvP .rough-node .label text,#mermaid-svg-mOC3rij3GdoGngvP .node .label text,#mermaid-svg-mOC3rij3GdoGngvP .image-shape .label,#mermaid-svg-mOC3rij3GdoGngvP .icon-shape .label{text-anchor:middle;}#mermaid-svg-mOC3rij3GdoGngvP .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-mOC3rij3GdoGngvP .rough-node .label,#mermaid-svg-mOC3rij3GdoGngvP .node .label,#mermaid-svg-mOC3rij3GdoGngvP .image-shape .label,#mermaid-svg-mOC3rij3GdoGngvP .icon-shape .label{text-align:center;}#mermaid-svg-mOC3rij3GdoGngvP .node.clickable{cursor:pointer;}#mermaid-svg-mOC3rij3GdoGngvP .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-mOC3rij3GdoGngvP .arrowheadPath{fill:#333333;}#mermaid-svg-mOC3rij3GdoGngvP .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-mOC3rij3GdoGngvP .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-mOC3rij3GdoGngvP .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-mOC3rij3GdoGngvP .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-mOC3rij3GdoGngvP .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-mOC3rij3GdoGngvP .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-mOC3rij3GdoGngvP .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-mOC3rij3GdoGngvP .cluster text{fill:#333;}#mermaid-svg-mOC3rij3GdoGngvP .cluster span{color:#333;}#mermaid-svg-mOC3rij3GdoGngvP div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-mOC3rij3GdoGngvP .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-mOC3rij3GdoGngvP rect.text{fill:none;stroke-width:0;}#mermaid-svg-mOC3rij3GdoGngvP .icon-shape,#mermaid-svg-mOC3rij3GdoGngvP .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-mOC3rij3GdoGngvP .icon-shape p,#mermaid-svg-mOC3rij3GdoGngvP .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-mOC3rij3GdoGngvP .icon-shape .label rect,#mermaid-svg-mOC3rij3GdoGngvP .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-mOC3rij3GdoGngvP .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-mOC3rij3GdoGngvP .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-mOC3rij3GdoGngvP :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}<span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"edgeLabel\"><\/span><span class=\"nodeLabel\"><\/p>\n<p>ISR\u53ea\u505a\u4e09\u4ef6\u4e8b<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>1. \u642c\u6570\u636e&#xff08;\u5bc4\u5b58\u5668\u2192\u5185\u5b58&#xff0c;&lt;1\u03bcs&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>2. \u8bbe\u6807\u5fd7&#xff08;\u539f\u5b50\u64cd\u4f5c&#xff0c;&lt;0.1\u03bcs&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>3. \u5524\u4efb\u52a1&#xff08;CAT2&#xff0c;&lt;1\u03bcs&#xff09;<\/p>\n<p><\/span><span class=\"nodeLabel\"><\/p>\n<p>\u603b\u8017\u65f6&#xff1a;&lt;5\u03bcs<\/p>\n<p><\/span><\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u642c\u6570\u636e\u3001\u8bbe\u6807\u5fd7\u3001\u5524\u4efb\u52a1\u2014\u2014\u8fd9\u4e09\u4ef6\u4e8b\u52a0\u8d77\u6765&#xff0c;\u5e94\u8be5\u5728\u5fae\u79d2\u7ea7\u522b\u5b8c\u6210\u3002 \u6240\u6709\u2018\u91cd\u6d3b\u2019\u2014\u2014\u4fe1\u53f7\u5904\u7406\u3001\u8def\u7531\u3001\u5b58\u50a8\u2014\u2014\u90fd\u4ea4\u7ed9\u4efb\u52a1\u53bb\u505a\u3002\u201d<\/p>\n<h4>4.5 \u6b63\u786e vs. \u9519\u8bef\u7684ISR\u5199\u6cd5<\/h4>\n<p>\u8001\u5468\u628a\u4e24\u79cd\u5199\u6cd5\u5e76\u6392\u653e\u5728\u767d\u677f\u4e0a&#xff1a;<\/p>\n<p>\u274c \u9519\u8bef\u5199\u6cd5&#xff08;\u5728ISR\u91cc\u505a\u91cd\u6d3b&#xff09;&#xff1a;<\/p>\n<p><span class=\"token keyword\">void<\/span> <span class=\"token function\">Can_IsrHandler<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">void<\/span><span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token comment\">\/* \u8017\u65f61&#xff1a;\u590d\u6742\u4fe1\u53f7\u5904\u7406&#xff08;\u53ef\u80fd\u51e0ms&#xff09; *\/<\/span><br \/>\n    <span class=\"token class-name\">uint32_t<\/span> processed <span class=\"token operator\">&#061;<\/span> <span class=\"token function\">ComplexAlgorithm<\/span><span class=\"token punctuation\">(<\/span>rx_data<span class=\"token punctuation\">,<\/span> <span class=\"token number\">8<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* \u8017\u65f62&#xff1a;\u6162\u901fSPI EEPROM\u8bbf\u95ee&#xff08;\u53ef\u80fd\u51e0\u767e\u03bcs&#xff09; *\/<\/span><br \/>\n    <span class=\"token function\">Eep_Write<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">0x1000<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token operator\">&amp;<\/span>processed<span class=\"token punctuation\">,<\/span> <span class=\"token number\">4<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* \u8017\u65f63&#xff1a;printf\u8c03\u8bd5\u8f93\u51fa&#xff08;\u53ef\u80fd\u51e0ms&#xff09; *\/<\/span><br \/>\n    <span class=\"token function\">printf<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">&#034;CAN received: %d\\\\n&#034;<\/span><span class=\"token punctuation\">,<\/span> rx_id<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* \u8017\u65f64&#xff1a;NvM\u5199\u5165&#xff08;\u53ef\u80fd\u51e0\u767e\u03bcs&#xff09; *\/<\/span><br \/>\n    <span class=\"token function\">NvM_WriteBlock<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">0x01<\/span><span class=\"token punctuation\">,<\/span> rx_data<span class=\"token punctuation\">,<\/span> <span class=\"token number\">8<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u540e\u679c&#xff1a;\u6574\u4e2aISR\u8017\u65f6&gt;5ms\u3002CAN\u63a5\u6536\u4e2d\u65ad\u5468\u671f\u901a\u5e38\u4e3a100\u03bcs~1ms\u3002\u4e0b\u4e00\u6b21\u4e2d\u65ad\u5230\u6765\u65f6&#xff0c;\u4e0a\u4e00\u6b21\u7684ISR\u8fd8\u6ca1\u6267\u884c\u5b8c \u2192 \u4e2d\u65ad\u91cd\u53e0 \u2192 CAN\u62a5\u6587\u4e22\u5931\u3002<\/p>\n<p>\u2705 \u6b63\u786e\u5199\u6cd5&#xff08;ISR\u53ea\u505a\u4e09\u4ef6\u4e8b&#xff09;&#xff1a;<\/p>\n<p><span class=\"token comment\">\/* \u73af\u5f62\u7f13\u51b2\u533a&#xff08;\u9700\u8981\u539f\u5b50\u64cd\u4f5c\u4fdd\u62a4&#xff09; *\/<\/span><br \/>\n<span class=\"token keyword\">static<\/span> <span class=\"token class-name\">uint8_t<\/span> g_rx_buffer<span class=\"token punctuation\">[<\/span><span class=\"token number\">8<\/span><span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">[<\/span><span class=\"token number\">8<\/span><span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token keyword\">static<\/span> <span class=\"token keyword\">volatile<\/span> <span class=\"token class-name\">uint8_t<\/span> g_rx_idx <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token keyword\">static<\/span> <span class=\"token keyword\">volatile<\/span> <span class=\"token class-name\">uint8_t<\/span> g_rx_flag <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p><span class=\"token keyword\">void<\/span> <span class=\"token function\">Can_IsrHandler<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">void<\/span><span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token class-name\">uint8_t<\/span> idx<span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 1. \u642c\u6570\u636e&#xff08;&lt;1\u03bcs&#xff09; *\/<\/span><br \/>\n    idx <span class=\"token operator\">&#061;<\/span> g_rx_idx<span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token function\">memcpy<\/span><span class=\"token punctuation\">(<\/span>g_rx_buffer<span class=\"token punctuation\">[<\/span>idx<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">,<\/span> rx_data<span class=\"token punctuation\">,<\/span> <span class=\"token number\">8<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    g_rx_idx <span class=\"token operator\">&#061;<\/span> <span class=\"token punctuation\">(<\/span>idx <span class=\"token operator\">&#043;<\/span> <span class=\"token number\">1<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">&amp;<\/span> <span class=\"token number\">0x07<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 2. \u8bbe\u6807\u5fd7&#xff08;\u539f\u5b50\u64cd\u4f5c&#xff0c;&lt;0.1\u03bcs&#xff09; *\/<\/span><br \/>\n    <span class=\"token function\">__atomic_store_n<\/span><span class=\"token punctuation\">(<\/span><span class=\"token operator\">&amp;<\/span>g_rx_flag<span class=\"token punctuation\">,<\/span> <span class=\"token number\">1<\/span><span class=\"token punctuation\">,<\/span> __ATOMIC_RELEASE<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 3. \u5524\u4efb\u52a1&#xff08;CAT2\u5141\u8bb8&#xff0c;&lt;1\u03bcs&#xff09; *\/<\/span><br \/>\n    <span class=\"token function\">Os_SetEvent<\/span><span class=\"token punctuation\">(<\/span>RxTaskId<span class=\"token punctuation\">,<\/span> RX_DATA_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u6548\u679c&#xff1a;ISR\u8017\u65f6&lt;3\u03bcs&#xff0c;\u4e0d\u5f71\u54cd\u5176\u4ed6\u4e2d\u65ad\u3002<\/p>\n<p>\u91cd\u6d3b\u4ea4\u7ed9\u4efb\u52a1\u5904\u7406&#xff1a;<\/p>\n<p><span class=\"token function\">TASK<\/span><span class=\"token punctuation\">(<\/span>RxProcessingTask<span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token keyword\">while<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token number\">1<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n        <span class=\"token comment\">\/* \u7b49\u5f85ISR\u5524\u9192 *\/<\/span><br \/>\n        <span class=\"token function\">Os_WaitEvent<\/span><span class=\"token punctuation\">(<\/span>RX_DATA_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n        <span class=\"token function\">Os_ClearEvent<\/span><span class=\"token punctuation\">(<\/span>RX_DATA_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>        <span class=\"token comment\">\/* \u5728\u8fd9\u91cc\u505a\u91cd\u6d3b&#xff01; *\/<\/span><br \/>\n        <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token function\">__atomic_load_n<\/span><span class=\"token punctuation\">(<\/span><span class=\"token operator\">&amp;<\/span>g_rx_flag<span class=\"token punctuation\">,<\/span> __ATOMIC_ACQUIRE<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n            <span class=\"token keyword\">for<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token class-name\">uint8_t<\/span> i <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span> i <span class=\"token operator\">&lt;<\/span> g_rx_idx<span class=\"token punctuation\">;<\/span> i<span class=\"token operator\">&#043;&#043;<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n                <span class=\"token function\">ProcessComplexSignal<\/span><span class=\"token punctuation\">(<\/span>g_rx_buffer<span class=\"token punctuation\">[<\/span>i<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n                <span class=\"token function\">NvM_WriteBlock<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">0x01<\/span><span class=\"token punctuation\">,<\/span> g_rx_buffer<span class=\"token punctuation\">[<\/span>i<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">8<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n            <span class=\"token punctuation\">}<\/span><br \/>\n            g_rx_idx <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span><br \/>\n            <span class=\"token function\">__atomic_store_n<\/span><span class=\"token punctuation\">(<\/span><span class=\"token operator\">&amp;<\/span>g_rx_flag<span class=\"token punctuation\">,<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span> __ATOMIC_RELEASE<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n        <span class=\"token punctuation\">}<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u5c0f\u6797\u770b\u7740\u6b63\u786e\u7684\u4ee3\u7801&#xff0c;\u4f3c\u4e4e\u660e\u767d\u4e86\u4ec0\u4e48&#xff1a;\u201c\u6240\u4ee5\u2026\u2026ISR\u53ea\u662f\u2018\u5feb\u9012\u5458\u7684\u95e8\u94c3\u2019&#xff0c;\u771f\u6b63\u7684\u2018\u6536\u5feb\u9012\u3001\u62c6\u5305\u88f9\u3001\u9a8c\u8d27\u2019\u8fd9\u4e9b\u4e8b\u5e94\u8be5\u7531\u2018\u6536\u4ef6\u4eba\u2019&#xff08;\u4efb\u52a1&#xff09;\u6765\u505a\u3002\u201d<\/p>\n<p>\u8001\u5468\u7b11\u4e86&#xff1a;\u201c\u8fd9\u4e2a\u6bd4\u55bb\u975e\u5e38\u7cbe\u51c6\u3002ISR\u5c31\u662f\u95e8\u94c3&#xff0c;\u4efb\u52a1\u624d\u662f\u90a3\u4e2a\u5f00\u95e8\u6536\u5feb\u9012\u7684\u4eba\u3002\u201d<\/p>\n<h3>\u7b2c\u4e94\u7ae0&#xff1a;\u4ece\u4e2d\u65ad\u5230\u4efb\u52a1\u7684\u201c\u4f18\u96c5\u5207\u6362\u201d\u2014\u2014CAT1\u548cCAT2\u5404\u81ea\u7684\u8def\u5f84<\/h3>\n<h4>5.1 \u4e3a\u4ec0\u4e48\u9700\u8981\u5207\u6362&#xff1f;<\/h4>\n<p>\u8001\u5468&#xff1a;\u201cISR\u53ea\u505a\u2018\u4e09\u4ef6\u4e8b\u2019&#xff0c;\u90a3\u5269\u4e0b\u7684\u2018\u91cd\u6d3b\u2019\u8c01\u6765\u505a&#xff1f;\u4efb\u52a1&#xff08;Task&#xff09;\u6765\u505a\u3002 \u6240\u4ee5\u6211\u4eec\u9700\u8981\u4e00\u79cd\u673a\u5236&#xff0c;\u8ba9ISR\u80fd\u591f\u2018\u544a\u8bc9\u2019\u4efb\u52a1&#xff1a;\u2018\u6709\u6d3b\u5e72\u4e86&#xff0c;\u5feb\u6765&#xff01;\u2019\u201d<\/p>\n<h4>5.2 \u89c4\u8303\u600e\u4e48\u8bf4&#xff1f;<\/h4>\n<p>SWS_BSW_00182 \u89c4\u5b9a&#xff1a;<\/p>\n<p>&#034;If the BSW Module has implementation of Interrupt Service Routines (ISR) and a transition from an ISR to an OS task is needed, then this transition shall take place at the lowest level possible of the Basic Software:<\/p>\n<ul>\n<li>In the case of CAT2 ISR this shall be at the latest in the RTE.<\/li>\n<li>In the case of CAT1 ISR this shall be at the latest in the MCAL layer.&#034;<\/li>\n<\/ul>\n<p>\u8001\u5468&#xff1a;\u201c\u7ffb\u8bd1&#xff1a;\u4eceISR\u5230\u4efb\u52a1\u7684\u5207\u6362&#xff0c;\u8981\u5728\u2018\u6700\u5e95\u5c42\u2019\u5b8c\u6210\u3002 CAT2 ISR\u7684\u5207\u6362\u6700\u665a\u5728RTE\u5c42\u5b8c\u6210&#xff0c;CAT1 ISR\u7684\u5207\u6362\u6700\u665a\u5728MCAL\u5c42\u5b8c\u6210\u3002\u201d<\/p>\n<h4>5.3 CAT2\u7684\u5207\u6362\u65b9\u5f0f\u2014\u2014\u201cOS\u8c03\u5ea6&#xff0c;\u4e00\u952e\u5524\u9192\u201d<\/h4>\n<p>\u8001\u5468\u753b\u4e86CAT2\u7684\u5207\u6362\u6d41\u7a0b&#xff1a;<\/p>\n<p>\u4efb\u52a1\u64cd\u4f5c\u7cfb\u7edfCAT2 ISR\u786c\u4ef6\u4efb\u52a1\u64cd\u4f5c\u7cfb\u7edfCAT2 ISR\u786c\u4ef6#mermaid-svg-MAFjzi3e7c68FVQG{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-MAFjzi3e7c68FVQG .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-MAFjzi3e7c68FVQG .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-MAFjzi3e7c68FVQG .error-icon{fill:#552222;}#mermaid-svg-MAFjzi3e7c68FVQG .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-MAFjzi3e7c68FVQG .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-MAFjzi3e7c68FVQG .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-MAFjzi3e7c68FVQG .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-MAFjzi3e7c68FVQG .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-MAFjzi3e7c68FVQG .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-MAFjzi3e7c68FVQG .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-MAFjzi3e7c68FVQG .marker{fill:#333333;stroke:#333333;}#mermaid-svg-MAFjzi3e7c68FVQG .marker.cross{stroke:#333333;}#mermaid-svg-MAFjzi3e7c68FVQG svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-MAFjzi3e7c68FVQG p{margin:0;}#mermaid-svg-MAFjzi3e7c68FVQG .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-MAFjzi3e7c68FVQG text.actor&gt;tspan{fill:black;stroke:none;}#mermaid-svg-MAFjzi3e7c68FVQG .actor-line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-MAFjzi3e7c68FVQG .innerArc{stroke-width:1.5;stroke-dasharray:none;}#mermaid-svg-MAFjzi3e7c68FVQG .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-MAFjzi3e7c68FVQG .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-MAFjzi3e7c68FVQG #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-MAFjzi3e7c68FVQG .sequenceNumber{fill:white;}#mermaid-svg-MAFjzi3e7c68FVQG #sequencenumber{fill:#333;}#mermaid-svg-MAFjzi3e7c68FVQG #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-MAFjzi3e7c68FVQG .messageText{fill:#333;stroke:none;}#mermaid-svg-MAFjzi3e7c68FVQG .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-MAFjzi3e7c68FVQG .labelText,#mermaid-svg-MAFjzi3e7c68FVQG .labelText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-MAFjzi3e7c68FVQG .loopText,#mermaid-svg-MAFjzi3e7c68FVQG .loopText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-MAFjzi3e7c68FVQG .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-MAFjzi3e7c68FVQG .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-MAFjzi3e7c68FVQG .noteText,#mermaid-svg-MAFjzi3e7c68FVQG .noteText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-MAFjzi3e7c68FVQG .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-MAFjzi3e7c68FVQG .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-MAFjzi3e7c68FVQG .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-MAFjzi3e7c68FVQG .actorPopupMenu{position:absolute;}#mermaid-svg-MAFjzi3e7c68FVQG .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 \/ 0.4));}#mermaid-svg-MAFjzi3e7c68FVQG .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-MAFjzi3e7c68FVQG .actor-man circle,#mermaid-svg-MAFjzi3e7c68FVQG line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-MAFjzi3e7c68FVQG :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}1. \u89e6\u53d1\u4e2d\u65ad2. \u642c\u6570\u636e\u3001\u8bbe\u6807\u5fd73. ActivateTask() \/ SetEvent()4. \u6807\u8bb0\u4efb\u52a1\u5c31\u7eea5. \u4e2d\u65ad\u8fd4\u56de6. \u8c03\u5ea6\u5668\u5207\u6362\u5230\u4efb\u52a17. \u5904\u7406\u91cd\u6d3b<\/p>\n<p>\u8001\u5468&#xff1a;\u201cCAT2 ISR\u53ef\u4ee5\u8c03\u7528OS API&#xff08;\u5982ActivateTask\u3001SetEvent&#xff09;\u6765\u5524\u9192\u4efb\u52a1\u3002 \u8fd9\u662f\u6700\u6807\u51c6\u7684\u505a\u6cd5\u3002OS\u8c03\u5ea6\u5668\u4f1a\u6839\u636e\u4efb\u52a1\u4f18\u5148\u7ea7\u81ea\u52a8\u5b89\u6392\u6267\u884c\u65f6\u673a\u3002\u201d<\/p>\n<h4>5.4 CAT1\u7684\u5207\u6362\u65b9\u5f0f\u2014\u2014\u201c\u8bbe\u4e2a\u6807\u5fd7&#xff0c;\u4efb\u52a1\u81ea\u5df1\u770b\u201d<\/h4>\n<p>\u8001\u5468&#xff1a;\u201cCAT1 ISR\u4e0d\u80fd\u8c03\u7528OS API&#xff0c;\u90a3\u600e\u4e48\u529e&#xff1f; \u53ea\u80fd\u8bbe\u4e00\u4e2a\u5168\u5c40\u6807\u5fd7&#xff0c;\u8ba9\u4efb\u52a1\u8f6e\u8be2\u8fd9\u4e2a\u6807\u5fd7\u3002\u201d<\/p>\n<p>\u4ed6\u753b\u4e86CAT1\u7684\u5207\u6362\u6d41\u7a0b&#xff1a;<\/p>\n<p>\u4efb\u52a1&#xff08;\u8f6e\u8be2&#xff09;\u5168\u5c40\u6807\u5fd7CAT1 ISR\u786c\u4ef6\u4efb\u52a1&#xff08;\u8f6e\u8be2&#xff09;\u5168\u5c40\u6807\u5fd7CAT1 ISR\u786c\u4ef6#mermaid-svg-1ITZai3CjTWilzIc{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-1ITZai3CjTWilzIc .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-1ITZai3CjTWilzIc .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-1ITZai3CjTWilzIc .error-icon{fill:#552222;}#mermaid-svg-1ITZai3CjTWilzIc .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-1ITZai3CjTWilzIc .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-1ITZai3CjTWilzIc .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-1ITZai3CjTWilzIc .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-1ITZai3CjTWilzIc .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-1ITZai3CjTWilzIc .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-1ITZai3CjTWilzIc .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-1ITZai3CjTWilzIc .marker{fill:#333333;stroke:#333333;}#mermaid-svg-1ITZai3CjTWilzIc .marker.cross{stroke:#333333;}#mermaid-svg-1ITZai3CjTWilzIc svg{font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-1ITZai3CjTWilzIc p{margin:0;}#mermaid-svg-1ITZai3CjTWilzIc .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-1ITZai3CjTWilzIc text.actor&gt;tspan{fill:black;stroke:none;}#mermaid-svg-1ITZai3CjTWilzIc .actor-line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-1ITZai3CjTWilzIc .innerArc{stroke-width:1.5;stroke-dasharray:none;}#mermaid-svg-1ITZai3CjTWilzIc .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-1ITZai3CjTWilzIc .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-1ITZai3CjTWilzIc #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-1ITZai3CjTWilzIc .sequenceNumber{fill:white;}#mermaid-svg-1ITZai3CjTWilzIc #sequencenumber{fill:#333;}#mermaid-svg-1ITZai3CjTWilzIc #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-1ITZai3CjTWilzIc .messageText{fill:#333;stroke:none;}#mermaid-svg-1ITZai3CjTWilzIc .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-1ITZai3CjTWilzIc .labelText,#mermaid-svg-1ITZai3CjTWilzIc .labelText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-1ITZai3CjTWilzIc .loopText,#mermaid-svg-1ITZai3CjTWilzIc .loopText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-1ITZai3CjTWilzIc .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-1ITZai3CjTWilzIc .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-1ITZai3CjTWilzIc .noteText,#mermaid-svg-1ITZai3CjTWilzIc .noteText&gt;tspan{fill:black;stroke:none;}#mermaid-svg-1ITZai3CjTWilzIc .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-1ITZai3CjTWilzIc .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-1ITZai3CjTWilzIc .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-1ITZai3CjTWilzIc .actorPopupMenu{position:absolute;}#mermaid-svg-1ITZai3CjTWilzIc .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 \/ 0.4));}#mermaid-svg-1ITZai3CjTWilzIc .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-1ITZai3CjTWilzIc .actor-man circle,#mermaid-svg-1ITZai3CjTWilzIc line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-1ITZai3CjTWilzIc :root{&#8211;mermaid-font-family:\\&#8221;trebuchet ms\\&#8221;,verdana,arial,sans-serif;}loop[\u4efb\u52a1\u8f6e\u8be2]1. \u89e6\u53d1\u4e2d\u65ad2. \u642c\u6570\u636e\u3001\u8bbe\u6807\u5fd7&#xff08;\u7eafC\u64cd\u4f5c&#xff09;3. \u4e2d\u65ad\u8fd4\u56de4. \u68c0\u67e5\u6807\u5fd75. \u6807\u5fd7&#061;16. \u5904\u7406\u91cd\u6d3b7. \u6e05\u9664\u6807\u5fd7<\/p>\n<p>\u8001\u5468&#xff1a;\u201cCAT1 ISR\u53ea\u8bbe\u7f6e\u4e00\u4e2a\u5168\u5c40\u6807\u5fd7\u4f4d\u3002\u4efb\u52a1\u901a\u8fc7\u8f6e\u8be2\u8fd9\u4e2a\u6807\u5fd7\u6765\u77e5\u9053\u2018\u6709\u6d3b\u5e72\u4e86\u2019\u3002 \u8fd9\u79cd\u65b9\u5f0f\u867d\u7136\u4e0d\u5982CAT2\u2018\u4f18\u96c5\u2019&#xff0c;\u4f46\u5ef6\u8fdf\u66f4\u4f4e&#xff08;\u6ca1\u6709OS\u4ecb\u5165\u7684\u5f00\u9500&#xff09;\u3002\u201d<\/p>\n<h4>5.5 \u4e24\u79cd\u65b9\u5f0f\u7684\u5bf9\u6bd4<\/h4>\n<p>\u8001\u5468\u753b\u4e86\u4e00\u5f20\u5bf9\u6bd4\u8868&#xff1a;<\/p>\n<table>\n<tr>\u7ef4\u5ea6CAT2 &#043; OS APICAT1 &#043; \u6807\u5fd7\u8f6e\u8be2<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">ISR\u590d\u6742\u5ea6<\/td>\n<td align=\"left\">\u4e2d\u7b49&#xff08;\u53ef\u8c03\u7528OS API&#xff09;<\/td>\n<td align=\"left\">\u4f4e&#xff08;\u53ea\u8bbe\u6807\u5fd7&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u4efb\u52a1\u54cd\u5e94\u5ef6\u8fdf<\/td>\n<td align=\"left\">\u7531OS\u8c03\u5ea6\u5668\u51b3\u5b9a&#xff08;\u901a\u5e38&lt;10\u03bcs&#xff09;<\/td>\n<td align=\"left\">\u7531\u8f6e\u8be2\u5468\u671f\u51b3\u5b9a&#xff08;\u53ef\u80fd\u6570ms&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">CPU\u5f00\u9500<\/td>\n<td align=\"left\">OS\u8c03\u5ea6\u6709\u5f00\u9500&#xff08;\u4fdd\u5b58\/\u6062\u590d\u4efb\u52a1\u4e0a\u4e0b\u6587&#xff09;<\/td>\n<td align=\"left\">\u8f6e\u8be2\u6709\u5f00\u9500&#xff08;\u4f46\u53ef\u4ee5\u63a7\u5236\u9891\u7387&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u9002\u7528\u573a\u666f<\/td>\n<td align=\"left\">\u5927\u591a\u6570\u5916\u8bbe\u4e2d\u65ad<\/td>\n<td align=\"left\">\u6781\u4f4e\u5ef6\u8fdf\u8981\u6c42\u7684\u4e2d\u65ad<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u5b9e\u73b0\u96be\u5ea6<\/td>\n<td align=\"left\">\u9700\u8981OS\u914d\u7f6e<\/td>\n<td align=\"left\">\u7b80\u5355<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u5b9e\u65f6\u6027\u4fdd\u8bc1<\/td>\n<td align=\"left\">\u597d<\/td>\n<td align=\"left\">\u53d6\u51b3\u4e8e\u8f6e\u8be2\u5468\u671f<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u6570\u636e\u4e00\u81f4\u6027<\/td>\n<td align=\"left\">\u901a\u8fc7OS\u540c\u6b65\u673a\u5236\u4fdd\u8bc1<\/td>\n<td align=\"left\">\u901a\u8fc7\u539f\u5b50\u6807\u5fd7\u4fdd\u8bc1<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u5c0f\u6797\u601d\u8003\u4e86\u4e00\u4f1a\u513f&#xff1a;\u201c\u90a3CAT1 &#043; \u6807\u5fd7\u8f6e\u8be2\u662f\u4e0d\u662f\u5c31\u56de\u5230\u4e86\u2018\u8f6e\u8be2\u6a21\u5f0f\u2019&#xff1f;\u4e0d\u662f\u767d\u8d39\u4e86\u4e2d\u65ad\u7684\u597d\u5904\u5417&#xff1f;\u201d<\/p>\n<p>\u8001\u5468&#xff1a;\u201c\u597d\u95ee\u9898&#xff0c;\u4f46\u4e0d\u662f\u3002\u201d\u4ed6\u89e3\u91ca\u9053&#xff0c;\u201c\u533a\u522b\u5728\u4e8e&#xff1a;\u8f6e\u8be2\u6a21\u5f0f\u4e0b&#xff0c;CPU\u4e00\u76f4\u5728\u95ee\u786c\u4ef6\u2018\u597d\u4e86\u5417&#xff1f;\u2019&#xff1b;\u800cCAT1&#043;\u6807\u5fd7\u8f6e\u8be2\u6a21\u5f0f\u4e0b&#xff0c;CPU\u5728\u68c0\u67e5\u7684\u662f\u5185\u5b58\u4e2d\u7684\u4e00\u4e2a\u6807\u5fd7\u4f4d&#xff0c;\u4e0d\u662f\u786c\u4ef6\u5bc4\u5b58\u5668\u3002\u68c0\u67e5\u5185\u5b58\u6807\u5fd7\u901a\u5e38\u53ea\u9700\u8981\u51e0\u4e2a\u65f6\u949f\u5468\u671f&#xff0c;\u800c\u67e5\u8be2\u786c\u4ef6\u5bc4\u5b58\u5668\u53ef\u80fd\u9700\u8981\u51e0\u5341\u4e2a\u65f6\u949f\u5468\u671f\u751a\u81f3\u66f4\u6162\u3002\u201d<\/p>\n<p>\u4ed6\u5217\u4e86\u4e00\u4e2a\u5bf9\u6bd4&#xff1a;<\/p>\n<table>\n<tr>\u673a\u5236CPU\u5728\u95ee\u8c01&#xff1f;\u6bcf\u6b21\u8be2\u95ee\u7684\u4ee3\u4ef7<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">\u7eaf\u8f6e\u8be2\u6a21\u5f0f<\/td>\n<td align=\"left\">\u786c\u4ef6\u5bc4\u5b58\u5668<\/td>\n<td align=\"left\">\u9ad8&#xff08;\u8bbf\u95ee\u603b\u7ebf\/\u5916\u8bbe&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">CAT1&#043;\u6807\u5fd7\u8f6e\u8be2<\/td>\n<td align=\"left\">\u5185\u5b58\u6807\u5fd7\u4f4d<\/td>\n<td align=\"left\">\u6781\u4f4e&#xff08;L1\u7f13\u5b58\u8bfb\u53d6&#xff09;<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">CAT2&#043;OS\u8c03\u5ea6<\/td>\n<td align=\"left\">\u4e0d\u4e3b\u52a8\u95ee&#xff0c;\u88ab\u52a8\u901a\u77e5<\/td>\n<td align=\"left\">\u96f6&#xff08;\u4f46OS\u8c03\u5ea6\u6709\u5f00\u9500&#xff09;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u201c\u6240\u4ee5CAT1&#043;\u6807\u5fd7\u8f6e\u8be2\u662f\u2018\u4e2d\u65ad\u7684\u6548\u7387\u2019&#043;\u2018\u4efb\u52a1\u7684\u7075\u6d3b\u2019\u4e4b\u95f4\u7684\u4e00\u79cd\u6298\u4e2d\u3002 \u5b83\u4fdd\u7559\u4e86\u4e2d\u65ad\u7684\u2018\u96f6\u5ef6\u8fdf\u54cd\u5e94\u2019&#xff0c;\u53c8\u907f\u514d\u4e86\u5728ISR\u4e2d\u505a\u91cd\u6d3b\u7684\u5371\u9669\u3002\u201d<\/p>\n<h3>\u7b2c\u516d\u7ae0&#xff1a;\u5b9e\u6218\u6848\u4f8b\u2014\u2014\u5c0f\u6797\u81ea\u5df1\u7684\u201c\u7ffb\u8f66\u73b0\u573a\u201d<\/h3>\n<p>\u4ee5\u4e0b\u6848\u4f8b\u4e3a\u5b8c\u5168\u865a\u6784&#xff0c;\u6240\u6709\u65f6\u95f4\u3001\u5730\u70b9\u3001\u4eba\u7269\u3001\u54c1\u724c\u5747\u4e3a\u675c\u64b0&#xff0c;\u4ec5\u7528\u4e8e\u8bf4\u660e\u6280\u672f\u539f\u7406\u3002\u5982\u6709\u96f7\u540c&#xff0c;\u7eaf\u5c5e\u5de7\u5408\u3002<\/p>\n<h4>6.1 \u80cc\u666f\u2014\u2014\u56de\u5230\u5c0f\u6797\u7684EEPROM\u9a71\u52a8<\/h4>\n<p>\u5728\u7b2c\u4e8c\u7ae0&#xff0c;\u8001\u5468\u5e2e\u5c0f\u6797\u201c\u8bca\u65ad\u201d\u4e86\u4ed6\u7684EEPROM\u9a71\u52a8\u95ee\u9898\u3002\u73b0\u5728&#xff0c;\u8ba9\u6211\u4eec\u770b\u770b\u5c0f\u6797\u6309\u7167\u8001\u5468\u7684\u5efa\u8bae\u4fee\u6539\u540e&#xff0c;\u95ee\u9898\u662f\u5426\u89e3\u51b3\u4e86\u3002<\/p>\n<p>\u95ee\u9898\u56de\u987e&#xff1a;\u5c0f\u6797\u5728EEPROM\u9a71\u52a8\u7684ISR\u4e2d\u505a\u4e86\u592a\u591a\u4e8b\u2014\u2014\u8bfb\u53d6\u6570\u636e\u3001\u590d\u6742\u7b97\u6cd5\u3001NvM\u5199\u5165\u3001printf\u8c03\u8bd5\u8f93\u51fa\u3002\u5bfc\u81f4\u7cfb\u7edf\u5361\u987f\u3001\u6570\u636e\u4e22\u5931\u3001\u770b\u95e8\u72d7\u590d\u4f4d\u3002<\/p>\n<h4>6.2 \u5c0f\u6797\u7684\u7b2c\u4e00\u6b21\u4fee\u6539\u2014\u2014\u53ea\u642c\u6570\u636e&#043;\u8bbe\u6807\u5fd7<\/h4>\n<p>\u5c0f\u6797\u6309\u7167\u201cISR\u4e09\u4ef6\u4e8b\u201d\u539f\u5219\u91cd\u5199\u4e86\u4ee3\u7801&#xff1a;<\/p>\n<p>\u6587\u4ef6&#xff1a;Eep_43_FSC.c&#xff08;ISR\u6838\u5fc3\u2014\u2014\u5e73\u53f0\u72ec\u7acb&#xff09;<\/p>\n<p><span class=\"token comment\">\/**<br \/>\n * &#064;brief EEPROM\u6838\u5fc3ISR\u5904\u7406\u51fd\u6570<br \/>\n *<br \/>\n * &#064;note<br \/>\n * &#8211; \u53ea\u505a&#xff1a;\u642c\u6570\u636e &#043; \u8bbe\u6807\u5fd7<br \/>\n * &#8211; \u4e0d\u8c03\u7528OS API<br \/>\n * &#8211; \u6267\u884c\u65f6\u95f4 &lt; 3\u03bcs<br \/>\n *\/<\/span><br \/>\n<span class=\"token keyword\">void<\/span> <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">void<\/span><span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token class-name\">uint8_t<\/span> status<span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 1. \u8bfb\u53d6\u786c\u4ef6\u72b6\u6001 *\/<\/span><br \/>\n    status <span class=\"token operator\">&#061;<\/span> <span class=\"token function\">Eep_Hw_GetStatus<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 2. \u5982\u679c\u64cd\u4f5c\u5b8c\u6210&#xff0c;\u8bbe\u7f6e\u6807\u5fd7 *\/<\/span><br \/>\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>status <span class=\"token operator\">&amp;<\/span> EEP_OP_COMPLETE_BIT<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n        g_eep_op_complete <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">1<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 3. \u6e05\u9664\u4e2d\u65ad\u6807\u5fd7 *\/<\/span><br \/>\n    <span class=\"token function\">Eep_Hw_ClearInterruptFlag<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u6587\u4ef6&#xff1a;Eep_43_FSC_Irq.c&#xff08;\u4e2d\u65ad\u5e27\u2014\u2014\u5e73\u53f0\u4f9d\u8d56&#xff09;<\/p>\n<p><span class=\"token function\">ISR<\/span><span class=\"token punctuation\">(<\/span>Eep_43_FSC_IsrEntry<span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token comment\">\/* 1. \u8c03\u7528\u6838\u5fc3ISR *\/<\/span><br \/>\n    <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 2. \u5524\u9192\u4efb\u52a1&#xff08;CAT2&#xff09; *\/<\/span><br \/>\n    <span class=\"token function\">Os_SetEvent<\/span><span class=\"token punctuation\">(<\/span>EepTaskId<span class=\"token punctuation\">,<\/span> EEP_DONE_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u6587\u4ef6&#xff1a;Eep_MainFunction.c&#xff08;\u4efb\u52a1\u5904\u7406\u2014\u2014\u91cd\u6d3b\u5728\u8fd9\u91cc&#xff09;<\/p>\n<p><span class=\"token function\">TASK<\/span><span class=\"token punctuation\">(<\/span>EepProcessingTask<span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token keyword\">while<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token number\">1<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n        <span class=\"token function\">Os_WaitEvent<\/span><span class=\"token punctuation\">(<\/span>EEP_DONE_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n        <span class=\"token function\">Os_ClearEvent<\/span><span class=\"token punctuation\">(<\/span>EEP_DONE_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>        <span class=\"token comment\">\/* \u5728\u8fd9\u91cc\u505a\u91cd\u6d3b&#xff01; *\/<\/span><br \/>\n        <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>g_eep_op_complete<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n            <span class=\"token class-name\">uint8_t<\/span> data <span class=\"token operator\">&#061;<\/span> g_eep_buffer<span class=\"token punctuation\">[<\/span><span class=\"token number\">0<\/span><span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>            <span class=\"token comment\">\/* \u590d\u6742\u7b97\u6cd5 *\/<\/span><br \/>\n            <span class=\"token function\">ProcessComplexData<\/span><span class=\"token punctuation\">(<\/span>data<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>            <span class=\"token comment\">\/* NvM\u5199\u5165 *\/<\/span><br \/>\n            <span class=\"token function\">NvM_WriteBlock<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">0x01<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token operator\">&amp;<\/span>data<span class=\"token punctuation\">,<\/span> <span class=\"token number\">1<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>            <span class=\"token comment\">\/* \u8c03\u8bd5\u8f93\u51fa *\/<\/span><br \/>\n            <span class=\"token function\">printf<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">&#034;EEPROM operation complete\\\\n&#034;<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>            g_eep_op_complete <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span><br \/>\n        <span class=\"token punctuation\">}<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<h4>6.3 \u5c0f\u6797\u7684\u7b2c\u4e8c\u6b21\u95ee\u9898\u2014\u2014CAT1\u914d\u7f6e\u4e0b\u7684\u5d29\u6e83<\/h4>\n<p>\u4fee\u6539\u540e&#xff0c;\u7cfb\u7edf\u5728CAT2\u6a21\u5f0f\u4e0b\u6b63\u5e38\u8fd0\u884c\u3002\u4f46\u8001\u5468\u5efa\u8bae\u5c0f\u6797\u6d4b\u8bd5\u4e00\u4e0bCAT1\u6a21\u5f0f\u3002<\/p>\n<p>\u201c\u628a\u4e2d\u65ad\u914d\u7f6e\u6539\u6210CAT1\u8bd5\u8bd5\u3002\u201d\u8001\u5468\u8bf4\u3002<\/p>\n<p>\u5c0f\u6797\u6539\u4e86\u914d\u7f6e&#xff0c;\u91cd\u65b0\u7f16\u8bd1\u3002\u7ed3\u679c\u2014\u2014\u7cfb\u7edf\u76f4\u63a5\u5d29\u6e83\u4e86&#xff01;<\/p>\n<p>\u5c0f\u6797&#xff1a;\u201c\u600e\u4e48CAT2\u597d\u597d\u7684&#xff0c;CAT1\u5c31\u5d29\u4e86&#xff1f;\u201d<\/p>\n<p>\u8001\u5468\u6253\u5f00Eep_43_FSC_Irq.c&#xff0c;\u6307\u51fa\u95ee\u9898&#xff1a;<\/p>\n<p><span class=\"token comment\">\/* CAT1\u6a21\u5f0f\u4e0b\u7684\u4e2d\u65ad\u5e27\u2014\u2014\u8fd9\u4e2a\u4ee3\u7801\u6709\u95ee\u9898&#xff01; *\/<\/span><br \/>\n<span class=\"token function\">ISR<\/span><span class=\"token punctuation\">(<\/span>Eep_43_FSC_IsrEntry<span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* \u274c CAT1\u4e2d\u7edd\u5bf9\u4e0d\u80fd\u8c03\u7528OS API&#xff01; *\/<\/span><br \/>\n    <span class=\"token function\">Os_SetEvent<\/span><span class=\"token punctuation\">(<\/span>EepTaskId<span class=\"token punctuation\">,<\/span> EEP_DONE_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u8001\u5468&#xff1a;\u201cCAT1\u4e2d\u65ad\u91cc\u4e0d\u80fd\u8c03\u7528Os_SetEvent&#xff01; \u8fd9\u662fOS API&#xff0c;\u5728CAT1\u4e2d\u662f\u975e\u6cd5\u7684\u3002\u201d<\/p>\n<h4>6.4 \u5c0f\u6797\u7684\u6b63\u786eCAT1\u5b9e\u73b0<\/h4>\n<p>\u8001\u5468\u5e2e\u5c0f\u6797\u6539\u4e86CAT1\u7684\u4e2d\u65ad\u5e27&#xff1a;<\/p>\n<p>\u6587\u4ef6&#xff1a;Eep_43_FSC_Irq.c&#xff08;CAT1\u7248\u672c&#xff09;<\/p>\n<p><span class=\"token comment\">\/**<br \/>\n * &#064;brief CAT1\u4e2d\u65ad\u5e27\u2014\u2014\u4e0d\u8c03\u7528\u4efb\u4f55OS API<br \/>\n *\/<\/span><br \/>\n<span class=\"token function\">INTERRUPT<\/span><span class=\"token punctuation\">(<\/span>Eep_43_FSC_IsrEntry<span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token comment\">\/* 1. \u8c03\u7528\u6838\u5fc3ISR&#xff08;\u7eaf\u4e1a\u52a1\u903b\u8f91&#xff09; *\/<\/span><br \/>\n    <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 2. CAT1\u4e0d\u80fd\u8c03\u7528OS API&#xff01;<br \/>\n     *    \u53ea\u8bbe\u7f6e\u4e00\u4e2a\u5168\u5c40\u6807\u5fd7&#xff0c;\u8ba9\u4efb\u52a1\u8f6e\u8be2 *\/<\/span><br \/>\n    g_eep_irq_flag <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">1<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>    <span class=\"token comment\">\/* 3. \u8fd4\u56de *\/<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u4efb\u52a1\u4fa7\u6539\u4e3a\u8f6e\u8be2\u6a21\u5f0f&#xff1a;<\/p>\n<p><span class=\"token function\">TASK<\/span><span class=\"token punctuation\">(<\/span>EepPollingTask<span class=\"token punctuation\">)<\/span><br \/>\n<span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token keyword\">while<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token number\">1<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n        <span class=\"token comment\">\/* \u8f6e\u8be2\u68c0\u67e5\u6807\u5fd7 *\/<\/span><br \/>\n        <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>g_eep_irq_flag<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n            g_eep_irq_flag <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span><\/p>\n<p>            <span class=\"token comment\">\/* \u5904\u7406\u91cd\u6d3b *\/<\/span><br \/>\n            <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>g_eep_op_complete<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n                <span class=\"token function\">ProcessData<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n                g_eep_op_complete <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span><br \/>\n            <span class=\"token punctuation\">}<\/span><br \/>\n        <span class=\"token punctuation\">}<\/span><\/p>\n<p>        <span class=\"token comment\">\/* \u964d\u9891\u8f6e\u8be2&#xff1a;\u6bcf10ms\u68c0\u67e5\u4e00\u6b21 *\/<\/span><br \/>\n        <span class=\"token function\">Os_Delay<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">10<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<h4>6.5 \u5c0f\u6797\u7684\u6700\u7ec8\u9886\u609f<\/h4>\n<p>\u5c0f\u6797\u603b\u7ed3\u9053&#xff1a;\u201cCAT1\u548cCAT2\u7684\u4e2d\u65ad\u5e27\u5199\u6cd5\u4e0d\u540c&#xff0c;\u4f46\u6838\u5fc3ISR\u5b8c\u5168\u4e00\u6837\u3002 \u8fd9\u5c31\u662f\u2018\u4e2d\u65ad\u5e27\u4e0eISR\u5206\u79bb\u2019\u7684\u4ef7\u503c\u2014\u2014\u6362\u4e2d\u65ad\u7c7b\u522b\u53ea\u6539_Irq.c&#xff0c;\u4e1a\u52a1\u903b\u8f91Eep.c\u4e00\u884c\u4e0d\u6539\u3002\u201d<\/p>\n<p>\u8001\u5468\u70b9\u5934&#xff1a;\u201c\u800c\u4e14\u901a\u8fc7\u914d\u7f6e\u5f00\u5173&#xff0c;\u4f60\u53ef\u4ee5\u5728\u7f16\u8bd1\u65f6\u9009\u62e9CAT1\u8fd8\u662fCAT2&#xff0c;\u8fdb\u4e00\u6b65\u4f18\u5316\u2014\u2014\u201d<\/p>\n<p><span class=\"token comment\">\/* \u914d\u7f6e&#xff1a;\u9009\u62e9\u4e2d\u65ad\u7c7b\u522b *\/<\/span><br \/>\n<span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">define<\/span> <span class=\"token macro-name\">EEP_IRQ_CATEGORY<\/span>    <span class=\"token expression\">EEP_IRQ_CAT2   <\/span><span class=\"token comment\">\/* \u6216 EEP_IRQ_CAT1 *\/<\/span><\/span><\/p>\n<p><span class=\"token comment\">\/* &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n * Eep_43_FSC_Irq.c \u4f7f\u7528\u6761\u4ef6\u7f16\u8bd1<br \/>\n * &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; *\/<\/span><br \/>\n<span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">if<\/span> <span class=\"token expression\"><span class=\"token punctuation\">(<\/span>EEP_IRQ_CATEGORY <span class=\"token operator\">&#061;&#061;<\/span> EEP_IRQ_CAT2<span class=\"token punctuation\">)<\/span><\/span><\/span><br \/>\n    <span class=\"token function\">ISR<\/span><span class=\"token punctuation\">(<\/span>Eep_43_FSC_IsrEntry<span class=\"token punctuation\">)<\/span><br \/>\n    <span class=\"token punctuation\">{<\/span><br \/>\n        <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n        <span class=\"token function\">Os_SetEvent<\/span><span class=\"token punctuation\">(<\/span>EepTaskId<span class=\"token punctuation\">,<\/span> EEP_DONE_EVENT<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>   <span class=\"token comment\">\/* CAT2&#xff1a;\u53ef\u8c03OS API *\/<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><br \/>\n<span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">else<\/span><\/span><br \/>\n    <span class=\"token function\">INTERRUPT<\/span><span class=\"token punctuation\">(<\/span>Eep_43_FSC_IsrEntry<span class=\"token punctuation\">)<\/span><br \/>\n    <span class=\"token punctuation\">{<\/span><br \/>\n        <span class=\"token function\">Eep_43_FSC_IsrCore<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><br \/>\n        g_eep_irq_flag <span class=\"token operator\">&#061;<\/span> <span class=\"token number\">1<\/span><span class=\"token punctuation\">;<\/span>                       <span class=\"token comment\">\/* CAT1&#xff1a;\u53ea\u8bbe\u6807\u5fd7 *\/<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><br \/>\n<span class=\"token macro property\"><span class=\"token directive-hash\">#<\/span><span class=\"token directive keyword\">endif<\/span><\/span><\/p>\n<p>\u201cSWS_BSW_00068 \u6b63\u662f\u8fd9\u6837\u8981\u6c42\u7684\u2014\u2014\u540c\u4e00\u4e2a\u9a71\u52a8\u540c\u65f6\u652f\u6301CAT1\u548cCAT2&#xff0c;\u901a\u8fc7\u914d\u7f6e\u9009\u62e9\u3002\u201d<\/p>\n<h3>\u7b2c\u4e03\u7ae0&#xff1a;\u6280\u672f\u4e8b\u5b9e\u4e0e\u865a\u6784\u60c5\u8282\u7684\u62c6\u89e3\u8bf4\u660e<\/h3>\n<table>\n<tr>\u5185\u5bb9\u7c7b\u578b\u8bf4\u660e<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">\u201c\u8001\u5468\u201d\u548c\u201c\u5c0f\u6797\u201d\u7684\u5bf9\u8bdd<\/td>\n<td align=\"left\">\u865a\u6784<\/td>\n<td align=\"left\">\u4ec5\u7528\u4e8e\u53d9\u4e8b\u5bfc\u5165&#xff0c;\u4e0d\u6307\u5411\u4efb\u4f55\u771f\u5b9e\u4e2a\u4f53<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u5feb\u9012\u5458\/\u95e8\u94c3\u6bd4\u55bb<\/td>\n<td align=\"left\">\u53d9\u4e8b\u5de5\u5177<\/td>\n<td align=\"left\">\u7528\u4e8e\u89e3\u91ca\u4e2d\u65ad\u7684\u6982\u5ff5<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u6025\u8bca\u5ba4\/\u95e8\u8bca\u6bd4\u55bb<\/td>\n<td align=\"left\">\u53d9\u4e8b\u5de5\u5177<\/td>\n<td align=\"left\">\u7528\u4e8e\u89e3\u91caISR\u4e0eTask\u7684\u804c\u8d23\u5206\u5de5<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u201c\u5c0f\u6797EEPROM\u9a71\u52a8\u201d\u6848\u4f8b<\/td>\n<td align=\"left\">\u865a\u6784<\/td>\n<td align=\"left\">\u7528\u4e8e\u8bf4\u660e\u201cISR\u5fc5\u987b\u77ed\u201d\u7684\u539f\u5219\u548cCAT1\/CAT2\u5dee\u5f02<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">SWS_BSW_00016\u3001SWS_BSW_00017<\/td>\n<td align=\"left\">\u6280\u672f\u4e8b\u5b9e<\/td>\n<td align=\"left\">\u57fa\u4e8eAUTOSAR BSW General\u89c4\u8303\u7684\u51c6\u786e\u5f15\u7528<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">SWS_BSW_00065\u3001SWS_BSW_00068<\/td>\n<td align=\"left\">\u6280\u672f\u4e8b\u5b9e<\/td>\n<td align=\"left\">\u57fa\u4e8eAUTOSAR BSW General\u89c4\u8303\u7684\u51c6\u786e\u5f15\u7528<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">SWS_BSW_00167<\/td>\n<td align=\"left\">\u6280\u672f\u4e8b\u5b9e<\/td>\n<td align=\"left\">\u57fa\u4e8eAUTOSAR BSW General\u89c4\u8303\u7684\u51c6\u786e\u5f15\u7528<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">SWS_BSW_00182<\/td>\n<td align=\"left\">\u6280\u672f\u4e8b\u5b9e<\/td>\n<td align=\"left\">\u57fa\u4e8eAUTOSAR BSW General\u89c4\u8303\u7684\u51c6\u786e\u5f15\u7528<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">CAT1\/CAT2\u4e2d\u65ad\u5206\u7c7b<\/td>\n<td align=\"left\">\u6280\u672f\u4e8b\u5b9e<\/td>\n<td align=\"left\">\u57fa\u4e8eAUTOSAR OS\u89c4\u8303<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">_Irq.c\u4e0e.c\u7684\u6587\u4ef6\u5206\u79bb<\/td>\n<td align=\"left\">\u6280\u672f\u4e8b\u5b9e<\/td>\n<td align=\"left\">\u57fa\u4e8eAUTOSAR\u6587\u4ef6\u7ed3\u6784\u89c4\u8303<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">ISR\u7684\u201c\u4e09\u4ef6\u4e8b\u201d\u539f\u5219<\/td>\n<td align=\"left\">\u6280\u672f\u6f14\u7ece<\/td>\n<td align=\"left\">\u57fa\u4e8eSWS_BSW_00167\u7684\u5408\u7406\u63a8\u6f14<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\u7b2c\u516b\u7ae0&#xff1a;\u603b\u7ed3\u2014\u2014\u4e2d\u65ad\u5904\u7406\u7684\u201c\u5fc3\u6cd5\u53e3\u8bc0\u201d<\/h3>\n<table>\n<tr>\u6982\u5ff5\u53e3\u8bc0\u6838\u5fc3\u8981\u70b9<\/tr>\n<tbody>\n<tr>\n<td align=\"left\">\u4e2d\u65ad\u7684\u672c\u8d28<\/td>\n<td align=\"left\">\u201c\u95e8\u94c3\u54cd\u4e86&#xff0c;\u4e0d\u7b49\u5feb\u9012&#xff0c;\u5148\u7b7e\u6536\u201d<\/td>\n<td align=\"left\">\u4e2d\u65ad\u662f\u786c\u4ef6\u4e3b\u52a8\u901a\u77e5CPU&#xff0c;CPU\u88ab\u52a8\u54cd\u5e94<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u4e2d\u65ad\u5e27 vs. ISR<\/td>\n<td align=\"left\">\u201c\u5916\u58f3\u505a\u810f\u6d3b&#xff0c;\u5185\u6838\u505a\u4e1a\u52a1\u201d<\/td>\n<td align=\"left\">_Irq.c\u5904\u7406OS\/\u7f16\u8bd1\u5668\u76f8\u5173&#xff0c;.c\u5904\u7406\u4e1a\u52a1\u903b\u8f91<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">CAT1\u4e2d\u65ad<\/td>\n<td align=\"left\">\u201c\u88f8\u5954\u5feb\u54cd\u5e94&#xff0c;\u4e0d\u80fd\u8c03OS\u201d<\/td>\n<td align=\"left\">\u6781\u4f4e\u5ef6\u8fdf&#xff0c;\u4e0d\u80fd\u8c03\u7528\u4efb\u4f55OS API<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">CAT2\u4e2d\u65ad<\/td>\n<td align=\"left\">\u201cOS\u6765\u7ba1\u7406&#xff0c;\u53ef\u5524\u4efb\u52a1\u201d<\/td>\n<td align=\"left\">\u53ef\u8c03\u7528\u6709\u9650OS API&#xff0c;\u5ef6\u8fdf\u7565\u9ad8<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">ISR\u7684\u201c\u4e09\u4ef6\u4e8b\u201d<\/td>\n<td align=\"left\">\u201c\u642c\u6570\u636e\u3001\u8bbe\u6807\u5fd7\u3001\u5524\u4efb\u52a1\u201d<\/td>\n<td align=\"left\">ISR\u53ea\u505a\u8fd9\u4e09\u4ef6&#xff0c;\u603b\u8017\u65f6&lt;5\u03bcs<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u91cd\u6d3b\u4ea4\u7ed9\u4efb\u52a1<\/td>\n<td align=\"left\">\u201c\u6025\u8bca\u5ba4\u6b62\u8840&#xff0c;\u95e8\u8bca\u5ba4\u624b\u672f\u201d<\/td>\n<td align=\"left\">\u590d\u6742\u5904\u7406\u5728\u4efb\u52a1\u4e0a\u4e0b\u6587\u4e2d\u5b8c\u6210<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">CAT1\u5207\u6362<\/td>\n<td align=\"left\">\u201c\u8bbe\u4e2a\u6807\u5fd7&#xff0c;\u4efb\u52a1\u81ea\u5df1\u770b\u201d<\/td>\n<td align=\"left\">CAT1\u901a\u8fc7\u5168\u5c40\u6807\u5fd7\u901a\u77e5\u4efb\u52a1<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">CAT2\u5207\u6362<\/td>\n<td align=\"left\">\u201c\u8c03\u4e2aAPI&#xff0c;OS\u6765\u8c03\u5ea6\u201d<\/td>\n<td align=\"left\">CAT2\u901a\u8fc7OS API\u6fc0\u6d3b\u4efb\u52a1<\/td>\n<\/tr>\n<tr>\n<td align=\"left\">\u6761\u4ef6\u7f16\u8bd1\u9009\u62e9<\/td>\n<td align=\"left\">\u201c\u4e00\u4e2a\u9a71\u52a8&#xff0c;\u4e24\u79cd\u914d\u7f6e\u201d<\/td>\n<td align=\"left\">\u901a\u8fc7#if\u5728CAT1\/CAT2\u95f4\u5207\u6362<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>\u6700\u540e\u4e00\u53e5\u8bdd<\/h4>\n<p>\u4e2d\u65ad\u5904\u7406\u662f\u5d4c\u5165\u5f0f\u5b9e\u65f6\u7cfb\u7edf\u7684\u201c\u5fc3\u810f\u624b\u672f\u201d\u2014\u2014\u505a\u5bf9\u4e86&#xff0c;\u7cfb\u7edf\u9ad8\u6548\u8fd0\u884c&#xff1b;\u505a\u9519\u4e86&#xff0c;\u7cfb\u7edf\u5d29\u6e83\u3001\u6570\u636e\u4e22\u5931\u3001\u5b89\u5168\u98ce\u9669\u3002 AUTOSAR\u901a\u8fc7\u201c\u4e2d\u65ad\u5e27\u4e0eISR\u5206\u79bb\u201d\u3001\u201cCAT1\/CAT2\u5206\u7c7b\u201d\u3001\u201cISR\u77ed\u5e73\u5feb\u201d\u8fd9\u4e09\u677f\u65a7&#xff0c;\u628a\u4e2d\u65ad\u5904\u7406\u4ece\u201c\u6df7\u4e71\u7684\u5e95\u5c42\u6c47\u7f16\u201d\u53d8\u6210\u4e86\u201c\u6e05\u6670\u7684\u5206\u5c42\u8bbe\u8ba1\u201d\u3002<\/p>\n<p>\u4e00\u4e2a\u6210\u719f\u7684AUTOSAR\u5de5\u7a0b\u5e08&#xff0c;\u5199ISR\u65f6\u8111\u5b50\u91cc\u59cb\u7ec8\u6709\u4e00\u6839\u5f26\u2014\u2014\u2018\u8fd9\u6bb5\u4ee3\u7801\u5728\u6025\u8bca\u5ba4\u91cc\u80fd\u8dd1\u5417&#xff1f;\u2019\u5982\u679c\u7b54\u6848\u662f\u5426\u5b9a\u7684&#xff0c;\u5c31\u628a\u5b83\u79fb\u5230\u4efb\u52a1\u91cc\u53bb\u3002<\/p>\n<p>\u5c0f\u6797\u5408\u4e0a\u7b14\u8bb0\u672c&#xff0c;\u611f\u6168\u9053&#xff1a;\u201c\u8001\u5468&#xff0c;\u4eca\u5929\u6211\u624d\u771f\u6b63\u7406\u89e3\u90a3\u53e5\u8bdd\u2014\u2014\u2018\u4e2d\u65ad\u662f\u7cfb\u7edf\u7684\u95e8\u94c3&#xff0c;\u4e0d\u662f\u7cfb\u7edf\u7684\u53a8\u623f\u3002\u2019 \u95e8\u94c3\u54cd\u4e86&#xff0c;\u4f60\u53ea\u9700\u8981\u8d70\u8fc7\u53bb\u5f00\u95e8&#xff1b;\u81f3\u4e8e\u505a\u996d&#xff0c;\u90a3\u662f\u53a8\u623f\u7684\u4e8b&#xff0c;\u4e0d\u662f\u95e8\u94c3\u7684\u4e8b\u3002\u201d<\/p>\n<p>\u8001\u5468\u7b11\u4e86&#xff1a;\u201c\u8fd9\u4e2a\u6bd4\u55bb\u6bd4\u6211\u7684\u6025\u8bca\u5ba4\u8fd8\u597d\u3002\u8bb0\u4f4f\u5b83&#xff0c;\u4f60\u4f1a\u5c11\u5199\u5f88\u591aBug\u3002\u201d<\/p>\n<h3>\u53c2\u8003\u6587\u732e<\/h3>\n<li>AUTOSAR, SWS_BSWGeneral &#8211; General Specification of Basic Software Modules, Version 4.3.1, 2020.<\/li>\n<li>AUTOSAR, SWS_Os &#8211; Specification of Operating System, Version 4.3.1, 2020.<\/li>\n<li>AUTOSAR, SWS_Eep &#8211; Specification of EEPROM Driver, Version 4.3.1, 2020.<\/li>\n<li>AUTOSAR, SWS_CanIf &#8211; Specification of CAN Interface, Version 4.3.1, 2020.<\/li>\n<li>AUTOSAR, SWS_NvM &#8211; Specification of NVRAM Manager, Version 4.3.1, 2020.<\/li>\n<li>MISRA Consortium, MISRA C:2012 Guidelines for the Use of the C Language in Critical Systems, 2012.<\/li>\n<li>ISO, ISO 26262: Road vehicles \u2014 Functional safety, 2018.<\/li>\n","protected":false},"excerpt":{"rendered":"<p>\u514d\u8d23\u58f0\u660e<br \/>\n\u672c\u6587\u5185\u5bb9\u4ec5\u9650\u5b66\u4e60\u4f7f\u7528\u3002\u6587\u4e2d\u6d89\u53ca\u7684 AUTOSAR \u89c4\u8303\u6761\u6b3e\u5f15\u7528\u3001\u4ee3\u7801\u793a\u4f8b\u3001\u914d\u7f6e\u903b\u8f91\u5747\u57fa\u4e8e AUTOSAR Classic Platform R4.x \u516c\u5f00\u6807\u51c6\u6587\u6863\u53ca\u884c\u4e1a\u901a\u7528\u5b9e\u8df5\u3002\u6587\u4e2d\u6240\u6709\u6848\u4f8b\u3001\u6545\u4e8b\u3001\u5bf9\u8bdd\u573a\u666f\u3001\u4eba\u7269\u53ca\u4f01\u4e1a\u540d\u79f0\u5747\u4e3a\u5b8c\u5168\u865a\u6784&#xff0c;\u4ec5\u7528\u4e8e\u901a\u8fc7\u5177\u4f53\u751f\u52a8\u7684\u573a\u666f\u5e2e\u52a9\u8bfb\u8005\u7406\u89e3\u62bd\u8c61\u6280\u672f\u89c4\u8303\u3002\u82e5\u5c06\u6587\u4e2d\u5185\u5bb9\u5e94\u7528\u4e8e\u5b9e\u9645\u9879\u76ee&#xff0c;\u8bf7\u52a1\u5fc5\u4ee5 AUTOSAR \u5b98\u65b9\u53d1\u5e03\u7684\u6700\u65b0\u89c4\u8303\u4e3a\u51c6&#xff0c;\u5e76\u7ed3\u5408\u5177\u4f53\u5de5\u5177\u94fe\u548c\u82af\u7247\u5e73\u53f0\u8fdb\u884c\u9a8c\u8bc1\u3002\u56e0\u4f7f\u7528\u4e0d\u5f53\u9020\u6210\u7684\u4efb\u4f55\u635f\u5931&amp;#<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[11166,11443],"topic":[],"class_list":["post-100044","post","type-post","status-publish","format-standard","hentry","category-server","tag-autosar-cp","tag-bsw"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.wsisp.com\/helps\/100044.html\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"og:description\" content=\"\u514d\u8d23\u58f0\u660e \u672c\u6587\u5185\u5bb9\u4ec5\u9650\u5b66\u4e60\u4f7f\u7528\u3002\u6587\u4e2d\u6d89\u53ca\u7684 AUTOSAR \u89c4\u8303\u6761\u6b3e\u5f15\u7528\u3001\u4ee3\u7801\u793a\u4f8b\u3001\u914d\u7f6e\u903b\u8f91\u5747\u57fa\u4e8e AUTOSAR Classic Platform R4.x \u516c\u5f00\u6807\u51c6\u6587\u6863\u53ca\u884c\u4e1a\u901a\u7528\u5b9e\u8df5\u3002\u6587\u4e2d\u6240\u6709\u6848\u4f8b\u3001\u6545\u4e8b\u3001\u5bf9\u8bdd\u573a\u666f\u3001\u4eba\u7269\u53ca\u4f01\u4e1a\u540d\u79f0\u5747\u4e3a\u5b8c\u5168\u865a\u6784&#xff0c;\u4ec5\u7528\u4e8e\u901a\u8fc7\u5177\u4f53\u751f\u52a8\u7684\u573a\u666f\u5e2e\u52a9\u8bfb\u8005\u7406\u89e3\u62bd\u8c61\u6280\u672f\u89c4\u8303\u3002\u82e5\u5c06\u6587\u4e2d\u5185\u5bb9\u5e94\u7528\u4e8e\u5b9e\u9645\u9879\u76ee&#xff0c;\u8bf7\u52a1\u5fc5\u4ee5 AUTOSAR \u5b98\u65b9\u53d1\u5e03\u7684\u6700\u65b0\u89c4\u8303\u4e3a\u51c6&#xff0c;\u5e76\u7ed3\u5408\u5177\u4f53\u5de5\u5177\u94fe\u548c\u82af\u7247\u5e73\u53f0\u8fdb\u884c\u9a8c\u8bc1\u3002\u56e0\u4f7f\u7528\u4e0d\u5f53\u9020\u6210\u7684\u4efb\u4f55\u635f\u5931&amp;#\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.wsisp.com\/helps\/100044.html\" \/>\n<meta property=\"og:site_name\" content=\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-03T10:56:52+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"36 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/100044.html\",\"url\":\"https:\/\/www.wsisp.com\/helps\/100044.html\",\"name\":\"BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"isPartOf\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\"},\"datePublished\":\"2026-09-03T10:56:52+00:00\",\"dateModified\":\"2026-09-03T10:56:52+00:00\",\"author\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/100044.html#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.wsisp.com\/helps\/100044.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/100044.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.wsisp.com\/helps\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\",\"url\":\"https:\/\/www.wsisp.com\/helps\/\",\"name\":\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"description\":\"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"contentUrl\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"caption\":\"admin\"},\"sameAs\":[\"http:\/\/wp.wsisp.com\"],\"url\":\"https:\/\/www.wsisp.com\/helps\/author\/admin\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.wsisp.com\/helps\/100044.html","og_locale":"zh_CN","og_type":"article","og_title":"BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","og_description":"\u514d\u8d23\u58f0\u660e \u672c\u6587\u5185\u5bb9\u4ec5\u9650\u5b66\u4e60\u4f7f\u7528\u3002\u6587\u4e2d\u6d89\u53ca\u7684 AUTOSAR \u89c4\u8303\u6761\u6b3e\u5f15\u7528\u3001\u4ee3\u7801\u793a\u4f8b\u3001\u914d\u7f6e\u903b\u8f91\u5747\u57fa\u4e8e AUTOSAR Classic Platform R4.x \u516c\u5f00\u6807\u51c6\u6587\u6863\u53ca\u884c\u4e1a\u901a\u7528\u5b9e\u8df5\u3002\u6587\u4e2d\u6240\u6709\u6848\u4f8b\u3001\u6545\u4e8b\u3001\u5bf9\u8bdd\u573a\u666f\u3001\u4eba\u7269\u53ca\u4f01\u4e1a\u540d\u79f0\u5747\u4e3a\u5b8c\u5168\u865a\u6784&#xff0c;\u4ec5\u7528\u4e8e\u901a\u8fc7\u5177\u4f53\u751f\u52a8\u7684\u573a\u666f\u5e2e\u52a9\u8bfb\u8005\u7406\u89e3\u62bd\u8c61\u6280\u672f\u89c4\u8303\u3002\u82e5\u5c06\u6587\u4e2d\u5185\u5bb9\u5e94\u7528\u4e8e\u5b9e\u9645\u9879\u76ee&#xff0c;\u8bf7\u52a1\u5fc5\u4ee5 AUTOSAR \u5b98\u65b9\u53d1\u5e03\u7684\u6700\u65b0\u89c4\u8303\u4e3a\u51c6&#xff0c;\u5e76\u7ed3\u5408\u5177\u4f53\u5de5\u5177\u94fe\u548c\u82af\u7247\u5e73\u53f0\u8fdb\u884c\u9a8c\u8bc1\u3002\u56e0\u4f7f\u7528\u4e0d\u5f53\u9020\u6210\u7684\u4efb\u4f55\u635f\u5931&amp;#","og_url":"https:\/\/www.wsisp.com\/helps\/100044.html","og_site_name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","article_published_time":"2026-09-03T10:56:52+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"admin","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"36 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.wsisp.com\/helps\/100044.html","url":"https:\/\/www.wsisp.com\/helps\/100044.html","name":"BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","isPartOf":{"@id":"https:\/\/www.wsisp.com\/helps\/#website"},"datePublished":"2026-09-03T10:56:52+00:00","dateModified":"2026-09-03T10:56:52+00:00","author":{"@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41"},"breadcrumb":{"@id":"https:\/\/www.wsisp.com\/helps\/100044.html#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.wsisp.com\/helps\/100044.html"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.wsisp.com\/helps\/100044.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.wsisp.com\/helps"},{"@type":"ListItem","position":2,"name":"BSWGeneral-\u7279\u522b\u7bc7\u00b7\u9646\uff1a\u4e2d\u65ad\u5904\u7406\u7684\u827a\u672f\u2014\u2014\u4ece\u201c\u786c\u6838\u5e95\u5c42\u201d\u5230\u201c\u4f18\u96c5\u5206\u5c42\u201d"}]},{"@type":"WebSite","@id":"https:\/\/www.wsisp.com\/helps\/#website","url":"https:\/\/www.wsisp.com\/helps\/","name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","description":"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41","name":"admin","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/","url":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","contentUrl":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","caption":"admin"},"sameAs":["http:\/\/wp.wsisp.com"],"url":"https:\/\/www.wsisp.com\/helps\/author\/admin"}]}},"_links":{"self":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/100044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/comments?post=100044"}],"version-history":[{"count":0,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/100044\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/media?parent=100044"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/categories?post=100044"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/tags?post=100044"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/topic?post=100044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}